public void OnMapReady (GoogleMap googleMap) { map = googleMap; var circleOptions = new CircleOptions (); circleOptions.InvokeCenter (new LatLng (circle.Position.Latitude, circle.Position.Longitude)); circleOptions.InvokeRadius (circle.Radius); circleOptions.InvokeFillColor (0X66FF0000); circleOptions.InvokeStrokeColor (0X66FF0000); circleOptions.InvokeStrokeWidth (0); map.AddCircle (circleOptions); }
public void OnMapReady(GoogleMap googleMap) { map = googleMap; if (circle == null) { circle = new CustomCircle { Position = new Position {Longitude = 37.79752, Latitude = -122.40183 }, Radius = 3000D }; } var circleOptions = new CircleOptions(); circleOptions.InvokeCenter(new LatLng(circle.Position.Latitude, circle.Position.Longitude)); circleOptions.InvokeRadius(circle.Radius); circleOptions.InvokeFillColor(0X66B0171F); circleOptions.InvokeStrokeColor(0X66FF0000); circleOptions.InvokeStrokeWidth(0); map.AddCircle(circleOptions); }
/// <summary> /// Adds a circle to the map /// </summary> /// <param name="circle">The circle to add</param> private void AddCircle(TKCircle circle) { circle.PropertyChanged += CirclePropertyChanged; var circleOptions = new CircleOptions(); circleOptions.InvokeRadius(circle.Radius); circleOptions.InvokeCenter(circle.Center.ToLatLng()); if (circle.Color != Color.Default) { circleOptions.InvokeFillColor(circle.Color.ToAndroid().ToArgb()); } if (circle.StrokeColor != Color.Default) { circleOptions.InvokeStrokeColor(circle.StrokeColor.ToAndroid().ToArgb()); } circleOptions.InvokeStrokeWidth(circle.StrokeWidth); this._circles.Add(circle, this._googleMap.AddCircle(circleOptions)); }
protected override void OnCreate (Bundle bundle) { base.OnCreate (bundle); // Set our view from the "main" layout resource SetContentView (Resource.Layout.Main); Inicializa_MapFragment (); //Definimos las ciudades en las cuales pondremos nuestros marcadores en el mapa MisCiudades.Add ( new Ciudad_Marca ("MÉXICO D.F.","En su forma abreviada México, D. F., es la capital y sede de los poderes federales de los Estados Unidos Mexicanos.",new LatLng (19.430334, -99.13599),"p1")); MisCiudades.Add ( new Ciudad_Marca ("LEÓN","Es una ciudad mexicana localizada en el Estado de Guanajuato,México, en la región del Bajío.",new LatLng ( 21.12806,-101.689163),"p2")); MisCiudades.Add ( new Ciudad_Marca ("LAGOS DE MORENO"," Es un municipio y la ciudad más grande y poblada de la Región denominada Los Altos de Jalisco, ubicados en el estado mexicano de Jalisco.",new LatLng ( 21.36453,-101.939076),"p3")); MisCiudades.Add ( new Ciudad_Marca ("GUADALAJARA","es una ciudad mexicana, capital del estado de Jalisco, así como principal localidad del área urbana denominada Zona Metropolitana de Guadalajara.",new LatLng ( 20.663626,-103.343754),"p4")); CargamosMarcadores (); Button btnLinea = FindViewById<Button> (Resource.Id.btnLinea); Button btnCirculo = FindViewById<Button> (Resource.Id.btnCirculo); Button btnPoligono = FindViewById<Button> (Resource.Id.btnPoligono); txtPosicion=(TextView) FindViewById (Resource.Id.txtPosicion); btnLinea.Click += delegate { PolylineOptions rectOptions = new PolylineOptions(); if (mMap != null) { foreach (Ciudad_Marca ciudad in MisCiudades) { rectOptions.Add (ciudad.Ubicacion ); } rectOptions.InvokeColor(Color.Red.ToArgb()); rectOptions.InvokeWidth(25); rectOptions.Geodesic(true) ; mMap.AddPolyline(rectOptions); } }; btnCirculo.Click += delegate { if (mMap != null) { foreach (Ciudad_Marca ciudad in MisCiudades) { CircleOptions circleOptions = new CircleOptions(); circleOptions.InvokeCenter(ciudad.Ubicacion); circleOptions.InvokeRadius(10000); circleOptions.InvokeStrokeWidth(10); circleOptions.InvokeStrokeColor(Color.Blue.ToArgb() ); Color micolorfill=Color.FromArgb(150,149,153,225); circleOptions.InvokeFillColor(micolorfill.ToArgb() ); mMap.AddCircle(circleOptions); } } }; btnPoligono.Click += delegate { if (mMap != null) { PolygonOptions Poligono = new PolygonOptions (); foreach (Ciudad_Marca ciudad in MisCiudades) { Poligono.Add (ciudad.Ubicacion); } Poligono.InvokeStrokeWidth(10); Poligono.InvokeStrokeColor(Color.Green.ToArgb ()); Color micolorfill=Color.FromArgb(150,0,255,51); Poligono.InvokeFillColor(micolorfill.ToArgb() ); mMap.AddPolygon (Poligono); } }; }
// TODO: Step 4c - handle info popup tap private void HandleInfoWindowClick(object sender, GoogleMap.InfoWindowClickEventArgs e) { // Draw a circle on the map var circleOptions = new CircleOptions(); circleOptions.InvokeCenter(Location_NewYork); circleOptions.InvokeRadius(100000.0); circleOptions.InvokeFillColor(Android.Graphics.Color.Argb(150, 59, 153, 212)); circleOptions.InvokeStrokeColor(Android.Graphics.Color.Rgb(159, 153, 212)); circleOptions.InvokeStrokeWidth(2); _map.AddCircle(circleOptions); // Draw a polygon (Wyoming) on the map var polygonOptions = new PolygonOptions(); polygonOptions.Add(new LatLng[] { new LatLng(45.00, -111.00), new LatLng(45, -104), new LatLng(41, -104), new LatLng(41, -111) }); polygonOptions.InvokeFillColor(Android.Graphics.Color.Argb(150, 21, 48,78)); polygonOptions.InvokeStrokeColor(Android.Graphics.Color.Rgb(21, 48, 78)); polygonOptions.InvokeStrokeWidth(2); _map.AddPolygon(polygonOptions); }
void AddCircles(IList circles) { var map = NativeMap; if (map == null) return; if (_circles == null) _circles = new List<ACircle>(); _circles.AddRange(circles.Cast<Circle>().Select(circle => { var opts = new CircleOptions(); opts.InvokeCenter(new LatLng(circle.Center.Latitude, circle.Center.Longitude)); opts.InvokeRadius(circle.Radius.Meters); opts.InvokeStrokeWidth(circle.StrokeWidth * _scaledDensity); // TODO: convert from px to pt. Is this collect? (looks like same iOS Maps) opts.InvokeStrokeColor(circle.StrokeColor.ToAndroid()); opts.InvokeFillColor(circle.FillColor.ToAndroid()); //opts.Clickable(circle.IsClickable); var nativeCircle = map.AddCircle(opts); // associate pin with marker for later lookup in event handlers circle.Id = nativeCircle; return nativeCircle; })); }