
主要的坐标系有2种:
WKID=102100
WKID=4326
而且对于点来说,一个Geometry对象其WIDth和Height是0,这点需要特别注意。
//坐标点聚焦 ESRI.ArcGIS.ClIEnt.Projection.WebMercator mercator = new ESRI.ArcGIS.ClIEnt.Projection.WebMercator(); ESRI.ArcGIS.ClIEnt.Geometry.Envelope selectedFeatureExtent = mercator.ToGeographic(graphic.Geometry).Extent; //最后一个点的位置 double expandPercentage = 30; double wIDthExpand = (selectedFeatureExtent.WIDth + 5) * (expandPercentage / 100); double heightExpand = (selectedFeatureExtent.Height + 5) * (expandPercentage / 100); ESRI.ArcGIS.ClIEnt.Geometry.Envelope displayExtent = new ESRI.ArcGIS.ClIEnt.Geometry.Envelope( selectedFeatureExtent.XMin - (wIDthExpand / 2),selectedFeatureExtent.YMin - (heightExpand / 2),selectedFeatureExtent.XMax + (wIDthExpand / 2),selectedFeatureExtent.YMax + (heightExpand / 2)); myMap.ZoomTo(displayExtent);
double wIDthExpand = (selectedFeatureExtent.WIDth + 5) * (expandPercentage / 100);
注意这里,给每个WIDth加上5,这样就可以实现了。
设置坐标系的方法:
ESRI.ArcGIS.ClIEnt.Geometry.Envelope initialExtent = new ESRI.ArcGIS.ClIEnt.Geometry.Envelope( _mercator.FromGeographic( new ESRI.ArcGIS.ClIEnt.Geometry.MapPoint(-122.4545596,37.783443296)) as MapPoint,_mercator.FromGeographic( new ESRI.ArcGIS.ClIEnt.Geometry.MapPoint(-122.4449924,37.786447331)) as MapPoint); initialExtent.SpatialReference = new SpatialReference(102100); //WKID=4326 MyMap.Extent = initialExtent;总结
以上是内存溢出为你收集整理的ArcGIS API for Silverlight 查找点聚焦的一个注意点全部内容,希望文章能够帮你解决ArcGIS API for Silverlight 查找点聚焦的一个注意点所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)