将一个坐标点增加到当前跟踪图层正在画的图形中?

0 投票
当前mapcontrol的Action为CreatePolygon,TrackMode为TrackMode.Track,并且用户已经点击了第一个节点,正在画第二个节点的时候,如何将已知的一个点point1作为该多边形的第二个点?代码怎么写?
5月 17, 2017 分类:  289次浏览 | 用户: amdiqqq (3 分)

1个回答

0 投票
GeoRegion georegion = mapcontrol.Map.TrackingLayer.Get(0) as GeoRegion;
Point2Ds pts = georegion[0];
pts.Add(point_new);

GeoRegion georegion_new = new GeoRegion(pts);
mapcontrol.Map.TrackingLayer.Clear();
mapcontrol.Map.TrackingLayer.Add(georegion_new, "track");

新将跟踪图层中已经有的获取出来,点追加进去,重新构建对象添加到跟踪层
5月 17, 2017 用户: 程逸诗 名扬四海 (1,242 分)
这个是已经画完图形,跟踪图层中已经存在一个要素,然后在要素中添加一个节点。我这个问题是当前正在画图形,跟踪图层中还没有完整的要素,也就是说 mapcontrol.Map.TrackingLayer.Get(0) as GeoRegion  这一句会报错,提示索引越界。
那就使用mapcontrol的tracking事件,通过e.geometry来获取对象。
...