private void btnTestGraphicsLayer_Click(object sender, EventArgs e) { Marker marker = new Marker("1", new SuperMap.Connector.Utility.Point2D(80, 30), MarkerType.Arrow, null); GraphicsLayer layer = new GraphicsLayer("2", "高亮"); layer.Markers.Add(marker); this.mapControl1.GraphicsLayers.Add(layer); }
private void dataGridView1_RowHeaderMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { if (_graphicsLayer == null) return; _graphicsLayer.Markers.Clear(); _graphicsLayer.Polygons.Clear(); _graphicsLayer.Lines.Clear(); Geometry geometry = this.dataGridView1.Rows[e.RowIndex].Tag as Geometry; if (geometry != null) { switch (geometry.Type) { case GeometryType.POINT: Marker marker = new Marker(e.RowIndex.ToString(), new Point2D(geometry.Points[0].X, geometry.Points[0].Y), MarkerType.Red_Dot, null); _graphicsLayer.Markers.Add(marker); break; case GeometryType.LINE: Line line = new Line(e.RowIndex.ToString(), new List<Point2D>(geometry.Points), 4.5, System.Drawing.Color.FromArgb(125, 0, 0, 255)); _graphicsLayer.Lines.Add(line); break; case GeometryType.REGION: Polygon polygon = new Polygon(e.RowIndex.ToString(), new List<Point2D>(geometry.Points), System.Drawing.Color.FromArgb(125, 0, 255, 0), System.Drawing.Color.FromArgb(50, 0, 0, 255), 4.5); _graphicsLayer.Polygons.Add(polygon); break; default: break; } } }
public MarkerMapGMapMaker(Marker marker, GMapMarker gMapMarker) { this._marker = marker; this._gMapMarker = gMapMarker; }
protected override void MouseClick(MouseEventArgs e) { base.MouseClick(e); if (QuerySetting.LayerNames.Count != 1) { MessageBox.Show("图层只能有一个"); return; } UGCLayer layer = QuerySetting.Layers.First(c => c.Name == QuerySetting.LayerNames[0]) as UGCLayer; if (layer.DatasetInfo.Type != DatasetType.CAD && layer.DatasetInfo.Type != DatasetType.POINT) { MessageBox.Show("图层数据集必须为复合类型或者点类型"); return; } if (_layer.Markers.Count > 0) { _layer.Markers.Clear(); } Point2D point = Map.ScreenToMap(e.Location); Marker marker = new Marker("aaa", point, MarkerType.Red_Pushpin, null); _layer.Markers.Add(marker); }
public static Marker CreateMarker(GraphicsLayer graLayer, Feature feature, UGCLayer layer, Recordset recordset, MarkerType type) { Marker marker = new Marker( feature.Id.ToString() + "@" + layer.DatasetInfo.Name + "@" + layer.DatasetInfo.DataSourceName + "@" + "0", feature.Geometry.Points[0], type, new SuperMap.Connector.Control.Forms.ToolTip(feature.Id.ToString(), new Draw.Font(Draw.FontFamily.Families.First(c => c.Name == "微软雅黑"), 12), Draw.StringFormat.GenericDefault, Draw.Color.White, Draw.Color.Black, Draw.Color.Black, 1)); Dictionary<string, string> property = new Dictionary<string, string>(); property[PropertyName.LayerName] = recordset.DatasetName; property[PropertyName.GraphicsLayerID] = graLayer.ID; property[PropertyName.SMID] = feature.Id.ToString(); marker.Tag = property; graLayer.Markers.Add(marker); return marker; }
private void DrawText(string text, System.Drawing.Point point) { //Map.Refresh(); //Graphics g=Map.CreateGraphics(); //g.DrawString(text, new Draw.Font(Draw.FontFamily.Families.First(c => c.Name == "微软雅黑"), 20), new SolidBrush(System.Drawing.Color.Black), // new PointF(point.X+10,point.Y)); //g.Dispose(); if (_marker != null && _layer.Markers.Contains(_marker)) { _layer.Markers.Remove(_marker); } Bitmap image = new Bitmap(150, 20); Graphics g = Graphics.FromImage(image); g.FillRectangle(new SolidBrush(Draw.Color.White), 0, 0, 148, 18); g.DrawRectangle(new Pen(new SolidBrush(Draw.Color.Black), 1), 0, 0, 148, 18); g.DrawString(text, new Draw.Font(Draw.FontFamily.Families.First(c => c.Name == "宋体"), 9), new SolidBrush(System.Drawing.Color.Black), new PointF(1, 1)); _marker = new Marker("1", Map.ScreenToMap(new Draw.Point(point.X + 80, point.Y + 10)), image, null); _layer.Markers.Add(_marker); }