Exemple #1
0
        private void SetupOverlays()
        {
            // Camera overlay
            CameraOverlay = new CameraOverlay(_world, "Camera", 230, _input)
            {
                X = new UniScalar(0, 10)
            };
            CameraOverlay.Y = new UniScalar(1, -CameraOverlay.Height - 10);

            const int gameInfoWidth = 245;

            GameInfoOverlay = new GameInfoOverlay(this, "Game Info", gameInfoWidth, _world.ActiveCamera)
            {
                X = new UniScalar(1, -gameInfoWidth - 10),
                Y = new UniScalar(0, 10)
            };

            const int minimapWidth  = 276,
                      minimapHeight = 302;

            MinimapOverlay = new MinimapOverlay(BlankTexture, "Minimap", minimapWidth, minimapHeight, MinimapTexture, _world)
            {
                X = new UniScalar(1, -minimapWidth - 10),
                Y = new UniScalar(1, -minimapHeight - 10)
            };

            _gui.Screen.Desktop.Children.Add(CameraOverlay);
            _gui.Screen.Desktop.Children.Add(GameInfoOverlay);
            _gui.Screen.Desktop.Children.Add(MinimapOverlay);

            // Update minimap viewport bounds
            RectangleF minimapBounds = MinimapOverlay.Minimap.GetAbsoluteBounds();

            MinimapOverlay.UpdateCameraBorderBounds(0, _world.ActiveCamera.GetMiniMapViewport(Utils.CastRectangleF(minimapBounds)));
        }
        protected override void AddOverlays()
        {
            base.AddOverlays();
            /* Itemized Overlay */
            /* Create a static ItemizedOverlay showing some Markers on various cities. */

            var context = Activity;

            _myLocationOverlay = new MyLocationNewOverlay(context, new GpsMyLocationProvider(context), mapView);

            var items = new List <OverlayItem>
            {
                new OverlayItem("Moj Dom!", "Morsko ul. Zamkowa 25", new GeoPoint(50.54457, 19.50684)),
            };
            //19.50684
            /* OnTapListener for the Markers, shows a simple Toast. */
            var overlay = new ItemizedOverlayWithFocus(items, new OnItemGestureListener(Application.Context), ResourceProxy);
            //int resID = Resources.GetIdentifier(Resources, "drawcheese_1",);
            Drawable newMarker = new Drawable();

            // newMarker = Resources.GetDrawable(Resource.Drawable.cheese_1);
            overlay.SetFocusItemsOnTap(true);
            overlay.SetFocusedItem(0);
            mapView.Overlays.Add(_myLocationOverlay);
            _myLocationOverlay.EnableMyLocation();
            _myLocationOverlay.EnableFollowLocation();



            mapView.Overlays.Add(overlay);

            var rotationGestureOverlay = new RotationGestureOverlay(Activity, mapView)
            {
                Enabled = false
            };

            mapView.Overlays.Add(rotationGestureOverlay);

            /* MiniMap */
            var miniMapOverlay = new MinimapOverlay(Activity, mapView.TileRequestCompleteHandler);

            mapView.Overlays.Add(miniMapOverlay);

            // Zoom and center on the focused item.
            mapView.Controller.SetZoom(50);
            // var geoPoint = ((OverlayItem) overlay.FocusedItem).Point;
            // mapView.Controller.AnimateTo(geoPoint);
            //mapView.Controller.AnimateTo(_myLocationOverlay.MyLocation);

            //  HasOptionsMenu = true;
        }
Exemple #3
0
        public override void OnActivityCreated(Bundle savedInstanceState)
        {
            base.OnActivityCreated(savedInstanceState);

            var context = Activity;
            var dm      = context.Resources.DisplayMetrics;

            // mResourceProxy = new ResourceProxyImpl(getActivity().getApplicationContext());

            _prefs = context.GetSharedPreferences(OpenStreetMapConstants.PrefsName, FileCreationMode.Private);

            _compassOverlay = new CompassOverlay(context, new InternalCompassOrientationProvider(context),
                                                 _mapView);
            _myLocationOverlay = new MyLocationNewOverlay(context, new GpsMyLocationProvider(context),
                                                          _mapView);

            _minimapOverlay = new MinimapOverlay(Activity, _mapView.TileRequestCompleteHandler)
            {
                Width  = dm.WidthPixels / 5,
                Height = dm.HeightPixels / 5
            };

            _scaleBarOverlay = new ScaleBarOverlay(context);
            _scaleBarOverlay.SetCentred(true);
            _scaleBarOverlay.SetScaleBarOffset(dm.WidthPixels / 2, 10);

            _rotationGestureOverlay = new RotationGestureOverlay(context, _mapView)
            {
                Enabled = false
            };

            _mapView.SetBuiltInZoomControls(true);
            _mapView.SetMultiTouchControls(true);
            _mapView.Overlays.Add(_myLocationOverlay);
            _mapView.Overlays.Add(_compassOverlay);
            _mapView.Overlays.Add(_minimapOverlay);
            _mapView.Overlays.Add(_scaleBarOverlay);
            _mapView.Overlays.Add(_rotationGestureOverlay);

            _mapView.Controller.SetZoom(_prefs.GetInt(OpenStreetMapConstants.PrefsZoomLevel, 1));
            _mapView.ScrollTo(_prefs.GetInt(OpenStreetMapConstants.PrefsScrollX, 0),
                              _prefs.GetInt(OpenStreetMapConstants.PrefsScrollY, 0));

            _myLocationOverlay.EnableMyLocation();
            _compassOverlay.EnableCompass();

            HasOptionsMenu = true;
        }
        protected override void AddOverlays()
        {
            base.AddOverlays();

            /* Itemized Overlay */
            /* Create a static ItemizedOverlay showing some Markers on various cities. */
            var items = new List <OverlayItem>
            {
                new OverlayItem("Hannover", "Tiny SampleDescription", new GeoPoint(52370816, 9735936)),
                new OverlayItem("Berlin", "This is a relatively short SampleDescription.",
                                new GeoPoint(52518333, 13408333)),
                new OverlayItem(
                    "Washington",
                    "This SampleDescription is a pretty long one. Almost as long as a the great wall in china.",
                    new GeoPoint(38895000, -77036667)),
                new OverlayItem("San Francisco", "SampleDescription", new GeoPoint(37779300, -122419200))
            };

            /* OnTapListener for the Markers, shows a simple Toast. */
            var overlay = new ItemizedOverlayWithFocus(items, new OnItemGestureListener(Activity), ResourceProxy);

            overlay.SetFocusItemsOnTap(true);
            overlay.SetFocusedItem(0);

            MapView.Overlays.Add(overlay);

            var rotationGestureOverlay = new RotationGestureOverlay(Activity, MapView)
            {
                Enabled = false
            };

            MapView.Overlays.Add(rotationGestureOverlay);

            /* MiniMap */
            var miniMapOverlay = new MinimapOverlay(Activity, MapView.TileRequestCompleteHandler);

            MapView.Overlays.Add(miniMapOverlay);

            // Zoom and center on the focused item.
            MapView.Controller.SetZoom(5);
            var geoPoint = ((OverlayItem)overlay.FocusedItem).Point;

            MapView.Controller.AnimateTo(geoPoint);

            HasOptionsMenu = true;
        }
        public override void OnActivityCreated(Bundle savedInstanceState)
        {
            base.OnActivityCreated(savedInstanceState);

            var context = Activity;
            var dm = context.Resources.DisplayMetrics;
            // mResourceProxy = new ResourceProxyImpl(getActivity().getApplicationContext());

            _prefs = context.GetSharedPreferences(OpenStreetMapConstants.PrefsName, FileCreationMode.Private);

            _compassOverlay = new CompassOverlay(context, new InternalCompassOrientationProvider(context),
                _mapView);
            _myLocationOverlay = new MyLocationNewOverlay(context, new GpsMyLocationProvider(context),
                _mapView);

            _minimapOverlay = new MinimapOverlay(Activity, _mapView.TileRequestCompleteHandler)
            {
                Width = dm.WidthPixels/5,
                Height = dm.HeightPixels/5
            };

            _scaleBarOverlay = new ScaleBarOverlay(context);
            _scaleBarOverlay.SetCentred(true);
            _scaleBarOverlay.SetScaleBarOffset(dm.WidthPixels/2, 10);

            _rotationGestureOverlay = new RotationGestureOverlay(context, _mapView) {Enabled = false};

            _mapView.SetBuiltInZoomControls(true);
            _mapView.SetMultiTouchControls(true);
            _mapView.Overlays.Add(_myLocationOverlay);
            _mapView.Overlays.Add(_compassOverlay);
            _mapView.Overlays.Add(_minimapOverlay);
            _mapView.Overlays.Add(_scaleBarOverlay);
            _mapView.Overlays.Add(_rotationGestureOverlay);

            _mapView.Controller.SetZoom(_prefs.GetInt(OpenStreetMapConstants.PrefsZoomLevel, 1));
            _mapView.ScrollTo(_prefs.GetInt(OpenStreetMapConstants.PrefsScrollX, 0),
                _prefs.GetInt(OpenStreetMapConstants.PrefsScrollY, 0));

            _myLocationOverlay.EnableMyLocation();
            _compassOverlay.EnableCompass();

            HasOptionsMenu = true;
        }
        protected override void AddOverlays()
        {
            base.AddOverlays();

            /* Itemized Overlay */
            /* Create a static ItemizedOverlay showing some Markers on various cities. */
            var items = new List<OverlayItem>
            {
                new OverlayItem("Hannover", "Tiny SampleDescription", new GeoPoint(52370816, 9735936)),
                new OverlayItem("Berlin", "This is a relatively short SampleDescription.",
                    new GeoPoint(52518333, 13408333)),
                new OverlayItem(
                    "Washington",
                    "This SampleDescription is a pretty long one. Almost as long as a the great wall in china.",
                    new GeoPoint(38895000, -77036667)),
                new OverlayItem("San Francisco", "SampleDescription", new GeoPoint(37779300, -122419200))
            };

            /* OnTapListener for the Markers, shows a simple Toast. */
            var overlay = new ItemizedOverlayWithFocus(items, new OnItemGestureListener(Activity), ResourceProxy);

            overlay.SetFocusItemsOnTap(true);
            overlay.SetFocusedItem(0);

            MapView.Overlays.Add(overlay);

            var rotationGestureOverlay = new RotationGestureOverlay(Activity, MapView) {Enabled = false};
            MapView.Overlays.Add(rotationGestureOverlay);

            /* MiniMap */
            var miniMapOverlay = new MinimapOverlay(Activity, MapView.TileRequestCompleteHandler);
            MapView.Overlays.Add(miniMapOverlay);

            // Zoom and center on the focused item.
            MapView.Controller.SetZoom(5);
            var geoPoint = ((OverlayItem) overlay.FocusedItem).Point;
            MapView.Controller.AnimateTo(geoPoint);

            HasOptionsMenu = true;
        }