示例#1
0
        public void Setup(IMapControl mapControl)
        {
            mapControl.Map = OsmSample.CreateMap();

            ((MapView)mapControl).UseDoubleTap  = true;
            ((MapView)mapControl).UniqueCallout = true;

            var sw = new Stopwatch();

            sw.Start();

            // Add 1000 pins
            var list = new System.Collections.Generic.List <Pin>();

            for (var i = 0; i < 1000; i++)
            {
                list.Add(CreatePin(i));
            }

            var timePart1 = sw.Elapsed;

            ((ObservableRangeCollection <Pin>)((MapView)mapControl).Pins).AddRange(list);

            var timePart2 = sw.Elapsed;

            sw.Stop();
        }
示例#2
0
        public void Setup(IMapControl mapControl)
        {
            var mapView = mapControl as MapView;

            mapControl.Map    = OsmSample.CreateMap();
            mapView.Navigator = new AnimatedNavigator(mapView.Map, (IViewport)mapView.Viewport);
        }
示例#3
0
        // ************************************ start click events ******************************************

        private void OsmClick(object sender, RoutedEventArgs e)
        {
            MapControl.Map.Layers.Clear();
            MapControl.Map.Layers.Add(OsmSample.CreateLayer());

            LayerList.Initialize(MapControl.Map.Layers);
            MapControl.ZoomToFullEnvelope();
            MapControl.Refresh();
        }
示例#4
0
 private static MapControl CreateMap(CGRect bounds)
 {
     return(new MapControl(bounds)
     {
         Map = OsmSample.CreateMap(),
         RotationLock = true,
         UnSnapRotationDegrees = 30,
         ReSnapRotationDegrees = 5
     });
 }
示例#5
0
        private void PointSymbolsClick(object sender, RoutedEventArgs e)
        {
            MapControl.Map.Layers.Clear();
            MapControl.Map.Layers.Add(OsmSample.CreateLayer());
            MapControl.Map.Layers.Add(PointsSample.Create());
            MapControl.Map.Layers.Add(PointsWithSymbolsInWorldUnitsSample.CreateLayer());

            LayerList.Initialize(MapControl.Map.Layers);
            MapControl.ZoomToFullEnvelope();
            MapControl.Refresh();
        }
示例#6
0
        private void ProjectedPointClick(object sender, RoutedEventArgs e)
        {
            MapControl.Map.Layers.Clear();
            MapControl.Map.Transformation = new MinimalTransformation();
            MapControl.Map.CRS            = "EPSG:3857";
            MapControl.Map.Layers.Add(OsmSample.CreateLayer());
            MapControl.Map.Layers.Add(PointsInWgs84Sample.CreateLayer());

            LayerList.Initialize(MapControl.Map.Layers);
            MapControl.ZoomToFullEnvelope();
            MapControl.Refresh();
        }
示例#7
0
        private void RandomPointsWithFeatureInfoClick(object server, RoutedEventArgs e)
        {
            MapControl.Map.Layers.Clear();
            MapControl.Map.Layers.Add(OsmSample.CreateLayer());
            MapControl.Map.Layers.Add(PointsWithFeatureInfoSample.CreateLayer(MapControl.Map.Envelope));

            MapControl.MouseInfoUp += MapControlOnMouseInfoDown;
            MapControl.MouseInfoUpLayers.Add(MapControl.Map.Layers.FindLayer("Points with feature info").First());

            LayerList.Initialize(MapControl.Map.Layers);
            MapControl.ZoomToFullEnvelope();
            MapControl.Refresh();
        }
示例#8
0
        private void RandomPointWithStackLabelClick(object sender, RoutedEventArgs e)
        {
            MapControl.Map.Layers.Clear();
            MapControl.Map.Layers.Add(OsmSample.CreateLayer());
            var provider = PointsSample.CreateRandomPointsProvider(MapControl.Map.Envelope);

            MapControl.Map.Layers.Add(PointsWithStackedLabelsSample.CreateLayer(provider));
            MapControl.Map.Layers.Add(PointsSample.CreateRandomPointLayer(provider));

            LayerList.Initialize(MapControl.Map.Layers);
            MapControl.ZoomToFullEnvelope();
            MapControl.Refresh();
        }
示例#9
0
        public void Setup(IMapControl mapControl)
        {
            mapControl.Map = OsmSample.CreateMap();

            if (mapControl.Performance == null)
            {
                mapControl.Performance = new Utilities.Performance();
            }

            var widget = new PerformanceWidget(mapControl.Performance);

            widget.WidgetTouched += (sender, args) => {
                mapControl?.Performance.Clear();
                mapControl?.RefreshGraphics();

                args.Handled = true;
            };

            mapControl.Map.Widgets.Add(widget);
            mapControl.Renderer.WidgetRenders[typeof(PerformanceWidget)] = new Rendering.Skia.SkiaWidgets.PerformanceWidgetRenderer(10, 10, 12, SkiaSharp.SKColors.Black, SkiaSharp.SKColors.White);

            ((MapView)mapControl).UseDoubleTap  = true;
            ((MapView)mapControl).UniqueCallout = true;

            var sw = new Stopwatch();

            sw.Start();

            // Add 1000 pins
            var list = new System.Collections.Generic.List <Pin>();

            for (var i = 0; i < 1000; i++)
            {
                list.Add(CreatePin(i));
            }

            var timePart1 = sw.Elapsed;

            ((ObservableRangeCollection <Pin>)((MapView)mapControl).Pins).AddRange(list);

            var timePart2 = sw.Elapsed;

            sw.Stop();
        }
示例#10
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main);

            DeployMbTilesFile();
            MbTilesSample.MbTilesLocation = MbTilesLocationOnAndroid;

            var mapControl = FindViewById <MapControl>(Resource.Id.mapcontrol);

            mapControl.Map       = OsmSample.CreateMap();
            mapControl.Map.Info += MapOnInfo;
            mapControl.Map.Viewport.ViewportChanged += ViewportOnViewportChanged;
            mapControl.AllowPinchRotation            = true;
            mapControl.UnSnapRotationDegrees         = 30;
            mapControl.ReSnapRotationDegrees         = 5;

            FindViewById <LinearLayout>(Resource.Id.mainLayout).AddView(_popup = CreatePopup());
        }
示例#11
0
        public void Setup(IMapControl mapControl)
        {
            mapControl.Map = OsmSample.CreateMap();

            ((MapView)mapControl).UseDoubleTap = false;
        }
示例#12
0
 public void Setup(IMapControl mapControl)
 {
     mapControl.Map = OsmSample.CreateMap();
 }
示例#13
0
        public void Setup(IMapControl mapControl)
        {
            var mapView = mapControl as MapView;

            mapControl.Map = OsmSample.CreateMap();
        }