Exemple #1
0
        private void LoadLayerInView(bool useTransitions, Rectangle2D drawBounds, Layer layer)
        {
            if (!Rectangle2D.IsNullOrEmpty(drawBounds) && layer.IsInitialized && (layer.Error == null)
      && (layer.MinVisibleResolution <= mapResolution) && (layer.MaxVisibleResolution >= mapResolution)
      && layer.IsVisible && Layers.Contains(layer) && CoordinateReferenceSystem.Equals(layer.CRS, CRS, true))
            {
                Rectangle2D last = (Rectangle2D)(layer.GetValue(LastLayerViewBoundsProperty));
                if (Rectangle2D.IsNullOrEmpty(last) || !drawBounds.Equals(last))
                {
                    layer.Draw(new DrawParameter()
                    {
                        UseTransitions = useTransitions,
                        Resoluitons = Resolutions,
                        Resolution = targetResolution,
                        ViewBounds = drawBounds,
                        ViewSize = currentSize,
                        LayerOrigin = layer.Container.Origin
                    });
                    layer.SetValue(LastLayerViewBoundsProperty, drawBounds);
                }
            }

        }