Table of Contents

ThinkGeo.MapSuite.WpfDesktopEdition.Overlay

Note: The page was created before Map Suite 10. Map Suite 10.0 organized many classes into new namespaces and assemblies as well as had a few minor breaks in compatibility. The majority of previously built code should work without modification assuming the new namespaces are added. For guidance on upgrading your existing code, please check out MapSuite 10 Upgrade Guide.

This class is the base class of all overlays in this overlay system.

Inheritance Hierarchy

Members Summary

Public Constructors

Protected Constructors

Overlay()

Constructor of the Overlay class.

Remarks

N/A

Parameters

Public Methods

Refresh(IEnumerable<RectangleShape>)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(TimeSpan)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(TimeSpan,RequestDrawingBufferTimeType)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(RectangleShape,TimeSpan)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(RectangleShape,TimeSpan,RequestDrawingBufferTimeType)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(IEnumerable<RectangleShape>,TimeSpan)

N/A

Remarks

N/A

Return Value
Parameters

Refresh(IEnumerable<RectangleShape>,TimeSpan,RequestDrawingBufferTimeType)

N/A

Remarks

N/A

Return Value
Parameters

Initialize(MapArguments)

This method initializes overlay object.

Remarks

This is a wrapper method for the virtual method InitializeCore.

Return Value
Parameters

Refresh(RectangleShape)

N/A

Remarks

N/A

Return Value
Parameters

Refresh()

This method refreshes all the content in the OverlayCanvas. For example, LayerOverlay with multiple tiles; when the style of one layer is changed, call Refresh to refresh all the tiles to accept new styles.

Remarks

The difference from Draw() method is that Refresh() method refreshs all the elements while Draw() does not.

Return Value
Parameters

Close()

N/A

Remarks

N/A

Return Value
Parameters

Open()

N/A

Remarks

N/A

Return Value
Parameters

Draw(RectangleShape)

This method draws the overlay with the provided extent in world coordinate.

Remarks

N/A

Return Value
Parameters

Draw(RectangleShape,OverlayRefreshType)

This method draws the overlay with the provided extent in world coordinate.

Remarks

N/A

Return Value
Parameters

PanTo(RectangleShape)

This method pans the overlay to the provided world extent.

Remarks

Some overlay doesn't need to continously drawing all the tile. For example, MarkerOverlay is formed by markers. When mouse down to pan, the markers don't need to redraw, we can only change its position. When mouse up to end panning, we can redraw the overlay for better performance.

Return Value
Parameters

GetBoundingBox()

This method gets a bounding box of the Overlay.

Remarks

This method is the concrete wrapper for the abstract method GetBoundingBoxCore. This method returns the bounding box of the Overlay. As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.

Return Value
Parameters

SaveState()

This method saves overlay state to a byte array.

Remarks

N/A

Return Value
Parameters

LoadState(Byte[])

This method restore the overlay state back from the specified state.

Remarks

N/A

Return Value
Parameters

Dispose()

This method dispose unmanaged resource used in this class.

Remarks

N/A

Return Value
Parameters

ToString()

N/A

Remarks

N/A

Return Value
Parameters

Equals(Object)

N/A

Remarks

N/A

Return Value
Parameters

GetHashCode()

N/A

Remarks

N/A

Return Value
Parameters

GetType()

N/A

Remarks

N/A

Return Value
Parameters

Protected Methods

InitializeCore(MapArguments)

This method initializes overlay object.

Remarks

When implementing this method, consider initializing the overlay canvas such as setting its z-index, setting current map reference to the CurrentMap property.

Return Value
Parameters

RefreshCore(RectangleShape)

N/A

Remarks

N/A

Return Value
Parameters

RefreshCore()

This method refreshes all the content in the OverlayCanvas. For example, LayerOverlay with multiple tiles; when the style of one layer is changed, call Refresh to refresh all the tiles to accept new styles.

Remarks

The difference from Draw() method is that Refresh() method refreshs all the elements while Draw() does not.

Return Value
Parameters

CloseCore()

N/A

Remarks

N/A

Return Value
Parameters

OpenCore()

N/A

Remarks

N/A

Return Value
Parameters

DrawCore(RectangleShape,OverlayRefreshType)

This method draws the overlay with the provided extent in world coordinate.

Remarks

N/A

Return Value
Parameters

4hM=(GeoCanvas)

N/A

Remarks

N/A

Return Value
Parameters

DrawAttributionCore(GeoCanvas)

N/A

Remarks

N/A

Return Value
Parameters

OnDrawingAttribution(DrawingAttributionOverlayEventArgs)

N/A

Remarks

N/A

Return Value
Parameters

OnDrawnAttribution(DrawnAttributionOverlayEventArgs)

N/A

Remarks

N/A

Return Value
Parameters

PanToCore(RectangleShape)

This method pans the overlay to the provided world extent.

Remarks

Some overlay doesn't need to continously drawing all the tile. For example, MarkerOverlay is formed by markers. When mouse down to pan, the markers don't need to redraw, we can only change its position. When mouse up to end panning, we can redraw the overlay for better performance.

Return Value
Parameters

OnDrawing(DrawingOverlayEventArgs)

This method raises before the overlay is drawing.

Remarks

N/A

Return Value
Parameters

OnDrawn(DrawnOverlayEventArgs)

This method raises after the overlay is drawn.

Remarks

N/A

Return Value
Parameters

GetBoundingBoxCore()

This method returns the bounding box of the Overlay.

Remarks

This method returns the bounding box of the Overlay.

Return Value
Parameters

SaveStateCore()

This method saves overlay state to a byte array.

Remarks

N/A

Return Value
Parameters

LoadStateCore(Byte[])

This method restore the overlay state back from the specified state.

Remarks

N/A

Return Value
Parameters

Finalize()

Finalizer of this Overlay object.

Remarks

N/A

Return Value
Parameters

Dispose(Boolean)

This method dispose unmanaged resource used in this class.

Remarks

N/A

Return Value
Parameters

OnRefreshing(OverlayRefreshType)

N/A

Remarks

N/A

Return Value
Parameters

MemberwiseClone()

N/A

Remarks

N/A

Return Value
Parameters

Public Properties

AutoRefreshInterval

N/A

Remarks

N/A

Return Value

Name

Gets or sets the name of this overaly.

Remarks

N/A

Return Value

MapArguments

Gets or sets current map information which will be used for calculating mechanism.

Remarks

N/A

Return Value

OverlayCanvas

Gets or sets the actual canvas which maintains all the visual elements on the overlay.

Remarks

N/A

Return Value

IsBase

N/A

Remarks

N/A

Return Value

CanRefreshRegion

N/A

Remarks

N/A

Return Value

DrawingExceptionMode

This property gets and sets the DrawingExceptionMode used when an exception occurs during drawing.

Remarks

N/A

Return Value

IsVisible

Gets or sets if this overlay is visible.

Remarks

N/A

Return Value

Attribution

N/A

Remarks

N/A

Return Value

IsEmpty

This property gets if this overlay is empty or not.

Remarks

This property enhances the performance of the overlay while drawing. If is true, we will skip drawing this overlay and continue drawing the next overlay.

Return Value

Protected Properties

PreviousExtent

Gets or sets the previous exent of the overlay.

Remarks

N/A

Return Value

3BM=

N/A

Remarks

N/A

Return Value

IsOverlayInitialized

Gets or sets if the overlay canvas is initialized.

Remarks

N/A

Return Value

Public Events

Drawing This event raises before the overlay is drawing.

Remarks

N/A

Event Arguments:DrawingOverlayEventArgs

Drawn This event raises after the overlay is drawn.

Remarks

N/A

Event Arguments:DrawnOverlayEventArgs

DrawingAttribution N/A

Remarks

N/A

Event Arguments:DrawingAttributionOverlayEventArgs

DrawnAttribution N/A

Remarks

N/A

Event Arguments:DrawnAttributionOverlayEventArgs