全部,
我正在使用 ArcGIS 组件来显示地图。我想让给定的位置显示在我的浏览器页面的中心。我有左侧/顶部导航栏,其余空间由 ArcGIS 地图组件占用。
谁可以帮我这个事
TIA
全部,
我正在使用 ArcGIS 组件来显示地图。我想让给定的位置显示在我的浏览器页面的中心。我有左侧/顶部导航栏,其余空间由 ArcGIS 地图组件占用。
谁可以帮我这个事
TIA
假设您已将地图命名为“地图”:
map.extent = map.extent.centerAt(new MapPoint(myX, myY));
请注意,centerAt() 不会更改地图范围,它会创建一个新范围,您可以将地图的范围设置为该范围。
编辑:
这更复杂,但它会找到您为您传递的控件的真正中心:
public function centerAtXY(relativeTo:DisplayObject, x:Number, y:Number):void
{
//Get the center of the displayobject's position on the map
var offsetPoint:MapPoint = map.toMapFromStage(relativeTo.width /2, relativeTo.height /2);
//Find the distance between the map's center and the display's center in map units
var offsetX:Number = map.extent.center.x - offsetPoint.x;
var offsetY:Number = map.extent.center.y - offsetPoint.y;
//Recenter the map so x,y is at the center of the displayobject
var centerPoint:MapPoint = new MapPoint(x + offsetX, y + offsetY);
map.extent = map.extent.centerAt(centerPoint);
}