public override void Select(ITrackerFeature trackerFeature, bool select) { if (trackerFeature.Selected != select) { trackerFeature.Selected = select; if (null != VectorStyle) { if (select) { trackerFeature.Bitmap = TrackerSymbolHelper.GenerateComposite(new Pen(Color.Blue), new SolidBrush(Color.DarkBlue), VectorStyle.Symbol.Width, VectorStyle.Symbol.Height, 6, 6); } else { trackerFeature.Bitmap = TrackerSymbolHelper.GenerateComposite(new Pen(Color.Lime), new SolidBrush(Color.Green), VectorStyle.Symbol.Width, VectorStyle.Symbol.Height, 6, 6); } } } }
public MeasureTool(MapControl mapControl) : base(mapControl) { pointGometries = new Collection <IGeometry>(); pointLayer = new VectorLayer(); pointLayer.Name = "measure"; pointLayer.DataSource = new DataTableFeatureProvider(pointGometries); pointLayer.Style.Symbol = TrackerSymbolHelper.GenerateSimple(Pens.DarkMagenta, Brushes.Indigo, 6, 6); pointLayer.Enabled = false; pointLayer.ShowInLegend = false; }
public MeasureTool() { geometries = new List <IGeometry>(); pointGeometries = geometries.OfType <GeoPoint>(); pointLayer = new VectorLayer(); pointLayer.Name = "measure"; pointLayer.DataSource = new DataTableFeatureProvider(geometries); pointLayer.Style.Symbol = TrackerSymbolHelper.GenerateSimple(Pens.DarkMagenta, Brushes.Indigo, 6, 6); pointLayer.Visible = false; pointLayer.ShowInLegend = false; }
protected override void CreateTrackers() { IPoint point = GeometryFactory.CreatePoint((ICoordinate)SourceFeature.Geometry.Coordinates[0].Clone()); trackers.Add(new TrackerFeature(this, point, 0, /*SelectedImageTracker*/ (VectorStyle != null) ? TrackerSymbolHelper.GenerateComposite(new Pen(Color.Blue), new SolidBrush(Color.DarkBlue), VectorStyle.Symbol.Width, VectorStyle.Symbol.Height, 6, 6) : null)); trackers[0].Selected = true; }
protected override void CreateTrackers() { if (trackerSmallStart == null) { trackerSmallStart = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Blue), new SolidBrush(Color.DarkBlue), 6, 6); trackerSmallEnd = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Tomato), new SolidBrush(Color.Maroon), 6, 6); //NS, 2013-10-11, Warna track symbol dari Green ke Red trackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Red), new SolidBrush(Color.OrangeRed), 6, 6);//TrackerSymbolHelper.GenerateSimple(new Pen(Color.Green), new SolidBrush(Color.Lime), 6, 6); selectedTrackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.DarkMagenta), new SolidBrush(Color.Magenta), 6, 6); } trackers.Clear(); // optimization: SourceFeature.Geometry.Coordinates is an expensive operation if (SourceFeature.Geometry == null) { return; } ICoordinate[] coordinates = SourceFeature.Geometry.Coordinates; //NS, 2014-05-06 //Untuk point akhir dari polygon tidak dibuatkan tracker int coordCount = 0; if (SourceFeature.Geometry.GeometryType == "Polygon") { coordCount = coordinates.Length - 1; } else { coordCount = coordinates.Length; } //for (int i = 0; i < coordinates.Length; i++) for (int i = 0; i < coordCount; i++) { ICoordinate coordinate = coordinates[i]; IPoint selectPoint = GeometryFactory.CreatePoint(coordinate.X, coordinate.Y); if (0 == i) { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmallStart)); } else if ((coordinates.Length - 1) == i) { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmallEnd)); } else { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmall)); } } AllTracker = new TrackerFeature(this, null, -1, null); }
public SnapTool() { activeTracker = TrackerSymbolHelper.GenerateSimple(new Pen(Color.DarkGreen), new SolidBrush(Color.Orange), 8, 8); Failed = true; snapLayer.Name = "snapping"; var provider = new DataTableFeatureProvider(geometries); snapLayer.DataSource = provider; snapLayer.Style.Line = new Pen(Color.DarkViolet, 2); snapLayer.Style.Fill = new SolidBrush(Color.FromArgb(127, Color.DarkSlateBlue)); snapLayer.Style.Symbol = activeTracker; provider.Attributes.Columns.Add("id", typeof(string)); var iTheme = new Rendering.Thematics.CustomTheme(GetTrackerStyle); snapLayer.Theme = iTheme; }
protected override void CreateTrackers() { if (SourceFeature == null || SourceFeature.Geometry == null) { return; } if (trackerSmallStart == null) { trackerSmallStart = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Blue), new SolidBrush(Color.DarkBlue), 6, 6); trackerSmallEnd = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Tomato), new SolidBrush(Color.Maroon), 6, 6); trackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Green), new SolidBrush(Color.Lime), 6, 6); selectedTrackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.DarkMagenta), new SolidBrush(Color.Magenta), 6, 6); } Trackers.Clear(); Trackers.AddRange(CreateTrackersForGeometry(SourceFeature.Geometry)); AllTracker = new TrackerFeature(this, null, -1, null); }
protected override void CreateTrackers() { if (trackerSmallStart == null) { trackerSmallStart = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Blue), new SolidBrush(Color.DarkBlue), 6, 6); trackerSmallEnd = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Tomato), new SolidBrush(Color.Maroon), 6, 6); trackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.Green), new SolidBrush(Color.Lime), 6, 6); selectedTrackerSmall = TrackerSymbolHelper.GenerateSimple(new Pen(Color.DarkMagenta), new SolidBrush(Color.Magenta), 6, 6); } trackers.Clear(); // optimization: SourceFeature.Geometry.Coordinates is an expensive operation if (SourceFeature.Geometry == null) { return; } ICoordinate[] coordinates = SourceFeature.Geometry.Coordinates; for (int i = 0; i < coordinates.Length; i++) { ICoordinate coordinate = coordinates[i]; IPoint selectPoint = GeometryFactory.CreatePoint(coordinate.X, coordinate.Y); if (0 == i) { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmallStart)); } else if ((coordinates.Length - 1) == i) { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmallEnd)); } else { trackers.Add(new TrackerFeature(this, selectPoint, i, trackerSmall)); } } AllTracker = new TrackerFeature(this, null, -1, null); }