====== ThinkGeo.MapSuite.AndroidEdition.Overlay ======
{{section>upgrade_map_suite_to_10.0}}
This class is the base class of all overlays in this overlay system.
===== Inheritance Hierarchy =====
*System.Object
***ThinkGeo.MapSuite.AndroidEdition.Overlay**
*[[ThinkGeo.MapSuite.AndroidEdition.AdornmentOverlay]]
*[[ThinkGeo.MapSuite.AndroidEdition.TileOverlay]]
*[[ThinkGeo.MapSuite.AndroidEdition.InteractiveOverlay]]
*[[ThinkGeo.MapSuite.AndroidEdition.MarkerOverlay]]
*[[ThinkGeo.MapSuite.AndroidEdition.PopupOverlay]]
===== Members Summary =====
==== Public Constructors ====
==== Protected Constructors ====
** {{wiki:ProtectedMethod.gif|}} Overlay() **
* //N/A//
== Remarks ==
* //N/A//
== Parameters ==
==== Public Methods ====
** {{wiki:PublicMethod.gif|}} Refresh(IEnumerable) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentsToRefresh//
* Type:IEnumerable<[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]>
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(TimeSpan) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //bufferTime//
* Type:TimeSpan
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(TimeSpan,RequestDrawingBufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.RequestDrawingBufferTimeType|RequestDrawingBufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(TimeSpan,BufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.BufferTimeType|BufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(RectangleShape,TimeSpan) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentToRefresh//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(RectangleShape,TimeSpan,RequestDrawingBufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentToRefresh//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.RequestDrawingBufferTimeType|RequestDrawingBufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(RectangleShape,TimeSpan,BufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentToRefresh//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.BufferTimeType|BufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(IEnumerable,TimeSpan) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentsToRefresh//
* Type:IEnumerable<[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]>
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(IEnumerable,TimeSpan,RequestDrawingBufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentsToRefresh//
* Type:IEnumerable<[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]>
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.RequestDrawingBufferTimeType|RequestDrawingBufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Refresh(IEnumerable,TimeSpan,BufferTimeType) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentsToRefresh//
* Type:IEnumerable<[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]>
* Description:N/A
* //bufferTime//
* Type:TimeSpan
* Description:N/A
* //bufferTimeType//
* Type:[[ThinkGeo.MapSuite.Core.BufferTimeType|BufferTimeType]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} 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 ==
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:A RectangleShape indicating the bounding box of this overlay.
== Parameters ==
** {{wiki:PublicMethod.gif|}} Initialize(MapArguments) **
* //This method initializes overlay object.//
== Remarks ==
* //This is a wrapper method for the virtual method InitializeCore.//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //mapArguments//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:This parameter maintains current map information for calculating mechanism.
** {{wiki:PublicMethod.gif|}} 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 ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Refresh(RectangleShape) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extent//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} Draw(MapArguments,OverlayRefreshType) **
* //This method draws the overlay with the provided extent in world coordinate.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //mapArguments//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:This parameter maintains current map information for calculating mechanism.
* //refreshType//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.OverlayRefreshType|OverlayRefreshType]]
* 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.
** {{wiki:PublicMethod.gif|}} PostTransform(TransformArguments,MapArguments) **
* //This method will simulate the PostTransform interaction.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //transformInfo//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.TransformArguments|TransformArguments]]
* Description:This parameter maintains the transfrom information for calculating transform.
* //mapArguments//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:This parameter maintains current map information for calculating mechanism.
** {{wiki:PublicMethod.gif|}} Close() **
* //This method will simulate the Close interaction.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Open() **
* //This method will simulate the Open interaction.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Dispose() **
* //This method dispose unmanaged resource used in this class.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} ToString() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:String
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Equals(Object) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Boolean
* Description:N/A
== Parameters ==
* //obj//
* Type:Object
* Description:N/A
** {{wiki:PublicMethod.gif|}} GetHashCode() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Int32
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} GetType() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Type
* Description:N/A
== Parameters ==
==== Protected Methods ====
** {{wiki:ProtectedMethod.gif|}} GetBoundingBoxCore() **
* //This method returns the bounding box of the Overlay.//
== Remarks ==
* //This method returns the bounding box of the Overlay.//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:This method returns the bounding box of the Overlay.
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} 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 ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} RefreshCore(RectangleShape) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extent//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} DrawCore(MapArguments,OverlayRefreshType) **
* //This method draws the overlay with the provided extent in world coordinate.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //mapArguments//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:This parameter maintains current map information for calculating mechanism.
* //refreshType//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.OverlayRefreshType|OverlayRefreshType]]
* 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.
** {{wiki:ProtectedMethod.gif|}} PostTransformCore(TransformArguments,MapArguments) **
* //This protected virtual method is the Core method of PostTransform API.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //transformInfo//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.TransformArguments|TransformArguments]]
* Description:This parameter maintains the transfrom information for calculating transform.
* //mapArguments//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:This parameter maintains current map information for calculating mechanism.
** {{wiki:ProtectedMethod.gif|}} CloseCore() **
* //This protected virtual method is the Core method of Close API.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} OpenCore() **
* //This protected virtual method is the Core method of Open API.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} 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 ==
* Type:Void
* Description:N/A
== Parameters ==
* //mapArgument//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} DrawException(GeoCanvas,Exception) **
* //This method will draw on the canvas when the layer.Draw throw exception and the DrawExceptionMode is set to DrawException instead of ThrowException.//
== Remarks ==
* //This method can be overriden its logic by rewrite the DrawExceptionCore.//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //geoCanvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //exception//
* Type:Exception
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} DrawExceptionCore(GeoCanvas,Exception) **
* //This method will draw on the canvas when the layer.Draw throw exception and the DrawExceptionMode is set to DrawException instead of ThrowException.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //geoCanvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //ex//
* Type:Exception
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawingException(DrawingExceptionOverlayEventArgs) **
* //This method raises before the overlay is drawing exception.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //args//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.DrawingExceptionOverlayEventArgs|DrawingExceptionOverlayEventArgs]]
* Description:This parameter is the event argument for DrawingException event.
** {{wiki:ProtectedMethod.gif|}} OnDrawnException(DrawnExceptionOverlayEventArgs) **
* //This method raises after the overlay is drawn exception.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //args//
* Type:[[ThinkGeo.MapSuite.AndroidEdition.DrawnExceptionOverlayEventArgs|DrawnExceptionOverlayEventArgs]]
* Description:This parameter is the event argument for DrawingException event.
** {{wiki:ProtectedMethod.gif|}} Finalize() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} Dispose(Boolean) **
* //Releases unmanaged and - optionally - managed resources.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //disposing//
* Type:Boolean
* Description:true to release both managed and unmanaged resources; false to release only unmanaged resources.
** {{wiki:ProtectedMethod.gif|}} MemberwiseClone() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Object
* Description:N/A
== Parameters ==
==== Public Properties ====
** {{wiki:PublicProperty.gif|}} AutoRefreshInterval **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:TimeSpan
** {{wiki:PublicProperty.gif|}} Name **
* //Gets or sets the name of this overaly.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:String
** {{wiki:PublicProperty.gif|}} DrawingExceptionMode **
* //This property gets and sets the DrawingExceptionMode used when an exception occurs during drawing.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.DrawingExceptionMode|DrawingExceptionMode]]
** {{wiki:PublicProperty.gif|}} 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 ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} IsVisible **
* //Gets or sets if this overlay is visible.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} Attribution **
* //Gets or sets the attribution for this overlay.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:String
** {{wiki:PublicProperty.gif|}} OverlayView **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapLayout|MapLayout]]
** {{wiki:PublicProperty.gif|}} DrawingQuality **
* //Gets or sets the drawingQuality for this overlay.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.DrawingQuality|DrawingQuality]]
** {{wiki:PublicProperty.gif|}} Opacity **
* //Gets or sets the opacity for this overlay.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Double
** {{wiki:PublicProperty.gif|}} MapArguments **
* //Gets or sets the mapArguments for this overlay.//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.AndroidEdition.MapArguments|MapArguments]]
** {{wiki:PublicProperty.gif|}} CanRefreshRegion **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Boolean
==== Protected Properties ====
==== Public Events ====
** {{wiki:PublicEvent.gif|}} DrawingException **
* //Occurs before exception is drawing on map.//
== Remarks ==
* //N/A//
Event Arguments:[[ThinkGeo.MapSuite.AndroidEdition.DrawingExceptionOverlayEventArgs|DrawingExceptionOverlayEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawnException **
* //Occurs after exception is drawn on map.//
== Remarks ==
* //N/A//
Event Arguments:[[ThinkGeo.MapSuite.AndroidEdition.DrawnExceptionOverlayEventArgs|DrawnExceptionOverlayEventArgs]]