首页 / 浏览问题 / 组件GIS / 问题详情
iobject中将缓存放入工作空间后的定位问题
6EXP 2026年07月30日

在使用iobject java时我需要将缓存数据放入新建的工作空间中,我使用的场景定位方法是ensureVisible,但是有时候他的定位效果(保存的工作空间在桌面端打开后点击场景后定位的效果)和idesktopX桌面单独双击场景图层的定位效果不同,请帮忙查找一下原因

这是我的代码

scene.setWorkspace(workspace);
String sceneName = workspace.getScenes().get(0);
scene.open(sceneName);
Layer3Ds layer3Ds = scene.getLayers();
Rectangle2D maxbounds = null;
if (layer3Ds.getCount() == 1) {
    scene.ensureVisible(layer3Ds.get(0));
} else {
    for (int i = 0; i < layer3Ds.getCount(); i++) {
        Layer3D layer3D = layer3Ds.get(i);
        Rectangle2D rectangle2D = layer3D.getBounds();
        if (maxbounds == null) {
            maxbounds = rectangle2D;
        }
        maxbounds.union(rectangle2D);
    }
    if (maxbounds != null) {
        scene.ensureVisible(maxbounds, 1);
    }
}
workspace.getScenes().setSceneXML(sceneName, scene.toXML());//修改场景名为sceneName的场景内容
workspace.save();

登录 或者 注册 后回答这个问题。

...