0

当我手动将函数返回的值与GEView.getViewportGlobeBounds屏幕上的实际视图进行比较时,我发现差异很小(但对我当前的需求很重要)。

实际上,在大多数情况下,从函数返回的值不在视图中。

为什么会这样?有没有办法获得更准确的值?

编辑(代码):

function getExtentNorth() {
  document.getElementById("ExtentNorth").value=ge.getView().getViewportGlobeBounds().getNorth ();
}
4

1 回答 1

0

这是预期的行为,如果您阅读GEView.getViewportGlobeBounds的文档,您会看到它......

返回一个完全包含当前可见的地球区域的边界框。如果有必要包含所有可见的内容,则返回的框将大于严格可见的框。

(我的重点)

投影到屏幕的方式意味着边界框几乎总是包含比当前可见区域更多的内容,因为每个边界都包含每个方向上最远的可见点。

因此,当您从“接近”和“直下”以外的任何地方观察地球时,这正是您应该期待的结果。

这个原则在这个例子中得到了很好的说明。

于 2013-01-09T00:19:00.023 回答