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.
Parameters
Public Methods
Refresh(IEnumerable<RectangleShape>)
N/A
Return Value
Type:Void
Description:N/A
Parameters
Refresh(TimeSpan)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Refresh(TimeSpan,RequestDrawingBufferTimeType)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Refresh(RectangleShape,TimeSpan)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Refresh(RectangleShape,TimeSpan,RequestDrawingBufferTimeType)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Refresh(IEnumerable<RectangleShape>,TimeSpan)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Refresh(IEnumerable<RectangleShape>,TimeSpan,RequestDrawingBufferTimeType)
N/A
Return Value
Type:Void
Description:N/A
Parameters
bufferTime
Type:TimeSpan
Description:N/A
Initialize(MapArguments)
This method initializes overlay object.
This is a wrapper method for the virtual method InitializeCore.
Return Value
Type:Void
Description:N/A
Parameters
Refresh(RectangleShape)
N/A
Return Value
Type:Void
Description:N/A
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.
The difference from Draw() method is that Refresh() method refreshs all the elements while Draw() does not.
Return Value
Type:Void
Description:N/A
Parameters
Close()
N/A
Return Value
Type:Void
Description:N/A
Parameters
Open()
N/A
Return Value
Type:Void
Description:N/A
Parameters
Draw(RectangleShape)
This method draws the overlay with the provided extent in world coordinate.
Return Value
Type:Void
Description:N/A
Parameters
Draw(RectangleShape,OverlayRefreshType)
This method draws the overlay with the provided extent in world coordinate.
Return Value
Type:Void
Description:N/A
Parameters
refreshType
-
Description:This parameter indicates whether the elements of this overlay needs to be refreshed. For example, TileOverlay is formed by tiles. When panning the map around, the existing tile doesn't need to be redraw, the only thing we need to do is modifying the position of these tiles. On another hand, when click to change the style of the overlay, we need to redraw the tile images to change the appearance. So we need refresh mode.
PanTo(RectangleShape)
This method pans the overlay to the provided world extent.
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
Type:Void
Description:N/A
Parameters
GetBoundingBox()
This method gets a bounding box of the Overlay.
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.
Return Value
Parameters
LoadState(Byte[])
This method restore the overlay state back from the specified state.
Return Value
Type:Void
Description:N/A
Parameters
Dispose()
This method dispose unmanaged resource used in this class.
Return Value
Type:Void
Description:N/A
Parameters
ToString()
N/A
Return Value
Type:String
Description:N/A
Parameters
Equals(Object)
N/A
Return Value
Type:Boolean
Description:N/A
Parameters
obj
Type:Object
Description:N/A
GetHashCode()
N/A
Return Value
Type:Int32
Description:N/A
Parameters
GetType()
N/A
Return Value
Type:Type
Description:N/A
Parameters
Protected Methods
InitializeCore(MapArguments)
This method initializes overlay object.
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
Type:Void
Description:N/A
Parameters
RefreshCore(RectangleShape)
N/A
Return Value
Type:Void
Description:N/A
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.
The difference from Draw() method is that Refresh() method refreshs all the elements while Draw() does not.
Return Value
Type:Void
Description:N/A
Parameters
CloseCore()
N/A
Return Value
Type:Void
Description:N/A
Parameters
OpenCore()
N/A
Return Value
Type:Void
Description:N/A
Parameters
DrawCore(RectangleShape,OverlayRefreshType)
This method draws the overlay with the provided extent in world coordinate.
Return Value
Type:Void
Description:N/A
Parameters
overlayRefreshType
-
Description:This parameter indicates whether the elements of this overlay needs to be refreshed. For example, TileOverlay is formed by tiles. When panning or zooming the map, the existing tile doesn't need to be redraw, because the styles are the same as the previous states. the only thing we need to do is modifying the position of these tiles. On another hand, when click to change the style of the overlay, we need to redraw the tile images to change the appearance. So we need refresh mode.
4hM=(GeoCanvas)
N/A
Return Value
Type:Void
Description:N/A
Parameters
DrawAttributionCore(GeoCanvas)
N/A
Return Value
Type:Void
Description:N/A
Parameters
OnDrawingAttribution(DrawingAttributionOverlayEventArgs)
N/A
Return Value
Type:Void
Description:N/A
Parameters
OnDrawnAttribution(DrawnAttributionOverlayEventArgs)
N/A
Return Value
Type:Void
Description:N/A
Parameters
PanToCore(RectangleShape)
This method pans the overlay to the provided world extent.
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
Type:Void
Description:N/A
Parameters
OnDrawing(DrawingOverlayEventArgs)
This method raises before the overlay is drawing.
Return Value
Type:Void
Description:N/A
Parameters
OnDrawn(DrawnOverlayEventArgs)
This method raises after the overlay is drawn.
Return Value
Type:Void
Description:N/A
Parameters
GetBoundingBoxCore()
This method returns the bounding box of the Overlay.
This method returns the bounding box of the Overlay.
Return Value
Parameters
SaveStateCore()
This method saves overlay state to a byte array.
Return Value
Parameters
LoadStateCore(Byte[])
This method restore the overlay state back from the specified state.
Return Value
Type:Void
Description:N/A
Parameters
Finalize()
Finalizer of this Overlay object.
Return Value
Type:Void
Description:N/A
Parameters
Dispose(Boolean)
This method dispose unmanaged resource used in this class.
Return Value
Type:Void
Description:N/A
Parameters
disposing
Type:Boolean
Description:N/A
OnRefreshing(OverlayRefreshType)
N/A
Return Value
Type:Void
Description:N/A
Parameters
MemberwiseClone()
N/A
Return Value
Type:Object
Description:N/A
Parameters
Public Properties
AutoRefreshInterval
N/A
Return Value
Name
Gets or sets the name of this overaly.
Return Value
MapArguments
Gets or sets current map information which will be used for calculating mechanism.
Return Value
OverlayCanvas
Gets or sets the actual canvas which maintains all the visual elements on the overlay.
Return Value
IsBase
N/A
Return Value
CanRefreshRegion
N/A
Return Value
DrawingExceptionMode
This property gets and sets the DrawingExceptionMode used when an exception occurs during drawing.
Return Value
IsVisible
Gets or sets if this overlay is visible.
Return Value
Attribution
N/A
Return Value
IsEmpty
This property gets if this overlay is empty or not.
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.
Return Value
3BM=
N/A
Return Value
IsOverlayInitialized
Gets or sets if the overlay canvas is initialized.
Return Value
Public Events
Drawing
This event raises before the overlay is drawing.