/// <summary> /// Pans the map the specified amount /// </summary> /// <param name="lm">the layout map to pan</param> /// <param name="x">The distance to pan the map on x-axis in screen coord</param> /// <param name="y">The distance to pan the map on y-axis in screen coord</param> public void PanMap(LayoutMap lm, float x, float y) { RectangleF mapOnScreen = PaperToScreen(lm.Rectangle); lm.PanMap((lm.Envelope.Width / mapOnScreen.Width) * x, (lm.Envelope.Height / mapOnScreen.Height ) * -y); }
/// <summary> /// Zooms the map element to the full extent of its layers /// </summary> public static void ZoomFullExtentMap(LayoutMap lm) { lm.ZoomToFullExtent(); }
/// <summary> /// Zoom the map to the extent of the data view /// </summary> public static void ZoomFullViewExtentMap(LayoutMap lm) { lm.ZoomViewExtent(); }
/// <summary> /// Zooms the map element out by 10% /// </summary> public static void ZoomOutMap(LayoutMap lm) { double tenPerWidth = (lm.Envelope.Maximum.X - lm.Envelope.Minimum.X) / 20; double tenPerHeight = (lm.Envelope.Maximum.Y - lm.Envelope.Minimum.Y) / 20; Geometries.Envelope envl = new Geometries.Envelope(); envl.Minimum.X = lm.Envelope.Minimum.X - tenPerWidth; envl.Minimum.Y = lm.Envelope.Minimum.Y - tenPerHeight; envl.Maximum.X = lm.Envelope.Maximum.X + tenPerWidth; envl.Maximum.Y = lm.Envelope.Maximum.Y + tenPerWidth; lm.Envelope = envl; }