private void CreateCircle(double value) { fence = new Xamarin.Forms.GoogleMaps.Circle(); fence.StrokeWidth = 2f; fence.StrokeColor = Color.Green; fence.FillColor = Color.Transparent; fence.Center = new Position(App.Position.Latitude, App.Position.Longitude); fence.Radius = Distance.FromKilometers(value); fence.ZIndex = 1; map.Circles.Add(fence); }
private void Current_PositionChanged(object sender, Plugin.Geolocator.Abstractions.PositionEventArgs e) { fence = new Xamarin.Forms.GoogleMaps.Circle(); fence.StrokeWidth = 2f; fence.StrokeColor = Color.Green; fence.FillColor = Color.Transparent; fence.Center = new Xamarin.Forms.GoogleMaps.Position(e.Position.Latitude, e.Position.Longitude); fence.Radius = Distance.FromKilometers(SliderValue); fence.ZIndex = 1; map.Circles.Add(fence); map.MoveToRegion(MapSpan.FromCenterAndRadius(new Xamarin.Forms.GoogleMaps.Position(e.Position.Latitude, e.Position.Longitude), Distance.FromMiles(5))); map.Pins.Clear(); map.Pins.Add(new Pin { Rotation = 33.3f, Address = "", Tag = "id_location", Label = "Im here", Position = new Xamarin.Forms.GoogleMaps.Position(App.Position.Latitude, App.Position.Longitude) }); }
public ShapesPage() { InitializeComponent(); Polyline polyline = null; Polygon polygon = null; Circle circle = null; // Polyline buttonAddPolyline.Clicked += (sender, e) => { polyline = new Polyline(); polyline.Positions.Add(new Position(40.77d, -73.93d)); polyline.Positions.Add(new Position(40.81d, -73.91d)); polyline.Positions.Add(new Position(40.83d, -73.87d)); polyline.IsClickable = true; polyline.StrokeColor = Color.Blue; polyline.StrokeWidth = 5f; polyline.Tag = "POLYLINE"; // Can set any object polyline.Clicked += Polyline_Clicked; map.Polylines.Add(polyline); ((Button)sender).IsEnabled = false; buttonRemovePolyline.IsEnabled = true; }; buttonRemovePolyline.Clicked += (sender, e) => { map.Polylines.Remove(polyline); polyline.Clicked -= Polyline_Clicked; polyline = null; ((Button)sender).IsEnabled = false; buttonAddPolyline.IsEnabled = true; }; buttonRemovePolyline.IsEnabled = false; // Polygon buttonAddPolygon.Clicked += (sender, e) => { polygon = new Polygon(); polygon.Positions.Add(new Position(40.85d, -73.96d)); polygon.Positions.Add(new Position(40.87d, -74.00d)); polygon.Positions.Add(new Position(40.78d, -74.06d)); polygon.Positions.Add(new Position(40.77d, -74.02d)); polygon.IsClickable = true; polygon.StrokeColor = Color.Green; polygon.StrokeWidth = 3f; polygon.FillColor = Color.FromRgba(255, 0, 0, 64); polygon.Tag = "POLYGON"; // Can set any object polygon.Clicked += Polygon_Clicked;; map.Polygons.Add(polygon); ((Button)sender).IsEnabled = false; buttonRemovePolygon.IsEnabled = true; }; buttonRemovePolygon.Clicked += (sender, e) => { map.Polygons.Remove(polygon); polygon.Clicked -= Polygon_Clicked; polygon = null; ((Button)sender).IsEnabled = false; buttonAddPolygon.IsEnabled = true; }; buttonRemovePolygon.IsEnabled = false; // Circle buttonAddCircle.Clicked += (sender, e) => { circle = new Circle(); circle.Center = new Position(40.72d, -73.89d); circle.Radius = Distance.FromMeters(3000f); circle.StrokeColor = Color.Purple; circle.StrokeWidth = 6f; circle.FillColor = Color.FromRgba(0, 0, 255, 32); circle.Tag = "CIRCLE"; // Can set any object map.Circles.Add(circle); ((Button)sender).IsEnabled = false; buttonRemoveCircle.IsEnabled = true; }; buttonRemoveCircle.Clicked += (sender, e) => { map.Circles.Remove(circle); circle = null; ((Button)sender).IsEnabled = false; buttonAddCircle.IsEnabled = true; }; buttonRemoveCircle.IsEnabled = false; }