protected override void DrawCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType) { if (overlayRefreshType == OverlayRefreshType.Pan) { if (PreviousExtent != null) { double resolution = MapArguments.CurrentResolution; double worldOffsetX = targetExtent.UpperLeftPoint.X - PreviousExtent.UpperLeftPoint.X; double worldOffsetY = targetExtent.UpperLeftPoint.Y - PreviousExtent.UpperLeftPoint.Y; double screenOffsetX = worldOffsetX / resolution; double screenOffsetY = worldOffsetY / resolution; translateTransform.X -= screenOffsetX; translateTransform.Y += screenOffsetY; } } else { translateTransform.X = 0; translateTransform.Y = 0; snappingPointsLayer.InternalFeatures.Clear(); if (OverlayCanvas.Children.Count == 0) { OverlayCanvas.Children.Add(tile); } tile.TargetExtent = targetExtent; tile.Width = MapArguments.ActualWidth; tile.Height = MapArguments.ActualHeight; tile.ZoomLevelIndex = MapArguments.GetSnappedZoomLevelIndex(targetExtent); RedrawTile(tile); } }
protected override void DrawCore(RectangleShape targetExtent, OverlayRefreshType refreshType) { TileCache = null; TileType = TileType.SingleTile; TileBuffer = 0; base.DrawCore(targetExtent, refreshType); }
protected override void DrawCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType) { LayerTile tile = GetTile(targetExtent, MapArguments.ActualWidth, MapArguments.ActualHeight, 0, 0, MapArguments.GetSnappedZoomLevelIndex(targetExtent)); if (overlayRefreshType == OverlayRefreshType.Pan) { isPanningMap = true; PanOverlay(targetExtent); } else { isPanningMap = false; RefreshHighlightLayerTileAndPopup(targetExtent, tile); } }
protected override void DrawCore(RectangleShape targetExtent, OverlayRefreshType overlayRefreshType) { base.DrawCore(targetExtent, overlayRefreshType); if (!OverlayCanvas.Children.Contains(highlightTile) && overlayRefreshType == OverlayRefreshType.Redraw) { OverlayCanvas.Children.Add(highlightTile); } bool zoomLevelChanged = CheckZoomLevelChanged(targetExtent); if (overlayRefreshType == OverlayRefreshType.Redraw && (!isTracking || Vertices.Count == 0 || zoomLevelChanged)) { RefreshHighlightTile(targetExtent); } }