/// <summary>Добавляет визуальный элемент на карту</summary>
        /// <param name="v">Визуальный элемент</param>
        protected void AddVisual(MapVisual v)
        {
            int index;
            for (index = 0; index < _visuals.Count; index++)
                if (((MapVisual)_visuals[index]).ZIndex > v.ZIndex) break;

            _visuals.Insert(index, v);
        }
Example #2
0
        private void AddTile(MapTileElement Tile)
        {
            _tiles.Add(Tile);
            MapVisual visual = Tile.GetVisual(ZoomLevel);

            visual.Transform = _globalTransform;
            AddVisual(visual);
            _tilesToVisuals.Add(Tile, visual);
            Tile.ChangeVisualRequested += TileChangeRequested;
        }
        /// <summary>Добавляет визуальный элемент на карту</summary>
        /// <param name="v">Визуальный элемент</param>
        protected void AddVisual(MapVisual v)
        {
            int index;

            for (index = _visuals.Count; index > 0; index--)
            {
                if (((MapVisual)_visuals[index - 1]).ZIndex <= v.ZIndex)
                {
                    break;
                }
            }

            _visuals.Insert(index, v);
        }
Example #4
0
        private void TileChangeRequested(object Sender, EventArgs E)
        {
            Dispatcher.BeginInvoke((Action <MapTileElement>)
                                       (tile =>
            {
                MapVisual oldVisual;
                if (_tilesToVisuals.TryGetValue(tile, out oldVisual))
                {
                    DeleteVisual(oldVisual);
                    _tilesToVisuals.Remove(tile);
                    MapVisual newVisual = tile.GetVisual(ZoomLevel);
                    newVisual.Transform = _globalTransform;
                    AddVisual(newVisual);
                    _tilesToVisuals.Add(tile, newVisual);
                }
            }), Sender);

            //var tile = (MapTileElement)Sender;
        }
 private MapElement safeGetElement(MapVisual Visual)
 {
     return(Visual != null ? Visual.Element : null);
 }
 /// <summary>Удаляет визуальный элемент с карты</summary>
 /// <param name="v"></param>
 protected void DeleteVisual(MapVisual v)
 {
     _visuals.Remove(v);
 }
 /// <summary>Удаляет визуальный элемент с карты</summary>
 /// <param name="v"></param>
 protected void DeleteVisual(MapVisual v)
 {
     _visuals.Remove(v);
 }
 private MapElement safeGetElement(MapVisual Visual)
 {
     return Visual != null ? Visual.Element : null;
 }