在哪里插入新的多边形点?

Where To Insert New Polygon Points?

我在 GMap.NET 项目中使用多边形。创建多边形很容易,但我不知道在哪里插入一组新点(用于拖动和重塑多边形的标记)。

新标记必须位于用户单击鼠标的两个其他现有标记之间。

请问如何找到点击位置之间的两个标记?

[编辑] 要求的代码:

private void gMapControl1OnPolygonClick(GMapPolygon item, MouseEventArgs e)
{
    if (item is GMapPolygon && e.Button == System.Windows.Forms.MouseButtons.Right)
    {
        GMapPolygon gpl = item as GMapPolygon;

        Bitmap bmp = Resources.ResourceManager.GetObject("gold_tristar", Resources.Culture) as Bitmap;

        PointLatLng T = gMapControl1.FromLocalToLatLng(e.X, e.Y);
        polyOverlay1.Markers.Add(new MyMarkerGoogle(new PointLatLng(T.Lat, T.Lng), bmp));
        polyOverlay1.Markers[polyOverlay1.Markers.Count - 1].Tag = polyOverlay1.Markers.Count - 1;

        gpl.Points.Add(T);

        gMapControl1.UpdatePolygonLocalPosition(polygon);
    }
}

完成本教程 - GMAP.NET TUTORIAL – MAPS, MARKERS AND POLYGONS 将非常有益。它解释了如何在窗体上放置地图控件、如何对其进行初始化以显示所需的坐标、如何向其添加标记以及如何添加多边形。

您还可以找到有关如何在 Add a polygon 中实现多边形的可编辑 属性 和设置可拖动 属性 的更多信息和更多示例代码。