/// <summary> /// 地图鼠标双击事件 /// </summary> private void picBoxMap_DoubleClick(object sender, EventArgs e) { switch (operationType) { case MapOperation.CreateFeatures: //创建要素 if (myMap.Layers[EditingIndex].DataType == MySpaceDataType.MyPolyLine) //编辑的是线图层 { if (trackingPoints.Count >= 2) { MyMultiPolyline newPolyline = new MyMultiPolyline(wgsPoints); myMap.AddFeature(newPolyline, EditingIndex); } } else if (myMap.Layers[EditingIndex].DataType == MySpaceDataType.MyPolygon) //编辑的是面图层 { if (trackingPoints.Count >= 3) { MyMultiPolygon newPolygon = new MyMultiPolygon(wgsPoints); myMap.AddFeature(newPolygon, EditingIndex); } } UpdateMapImg(); trackingPoints.Clear(); wgsPoints.Clear(); break; } }
private void ReadPolygonShp(BinaryReader br) { int id = 0; polygons = new List <MyMultiPolygon>(); while (byteCount < fileLength) { MyMultiPolygon temp = new MyMultiPolygon(br, id); byteCount += temp.ByteCount; polygons.Add(temp); id++; } }