====== ThinkGeo.MapSuite.Core.GdiPlusRasterLayer ======
{{section>upgrade_map_suite_to_10.0}}
This class represents general image types to be drawn on the map, such as .BMP, .JPG, .PNG, etc.
===== Inheritance Hierarchy =====
*System.Object
*ThinkGeo.MapSuite.Core.Layer
*ThinkGeo.MapSuite.Core.RasterLayer
***ThinkGeo.MapSuite.Core.GdiPlusRasterLayer**
===== Members Summary =====
==== Public Constructors ====
** {{wiki:PublicMethod.gif|}} GdiPlusRasterLayer() **
* //This is a constructor for the class.//
== Remarks ==
* //If you use this constructor, then you need to set the PathFileName property manually before using the layer.//
== Parameters ==
** {{wiki:PublicMethod.gif|}} GdiPlusRasterLayer(String) **
* //This is a constructor for the class.//
== Remarks ==
* //This constructor gets the layer ready to use.//
== Parameters ==
* //pathFilename//
* Type:String
* Description:This parameter is the path and filename of the GDI+ image file you want to use. If you want to load a Tiff(.tif or .tiff) files, please use the GeoTiffRasterLayer instead for better performance.
** {{wiki:PublicMethod.gif|}} GdiPlusRasterLayer(String,String) **
* //This is a constructor for the class.//
== Remarks ==
* //This constructor gets the layer ready to use.//
== Parameters ==
* //pathFilename//
* Type:String
* Description:This parameter is the path and filename of the GDI+ image file you want to use. If you want to load a Tiff(.tif or .tiff) files, please use the GeoTiffRasterLayer instead for better performance.
* //worldfilePathFilename//
* Type:String
* Description:This parameter is the world file path and filename for the GDI+ image you want to use.
** {{wiki:PublicMethod.gif|}} GdiPlusRasterLayer(String,RectangleShape) **
* //This is a constructor for the class.//
== Remarks ==
* //This constructor gets the layer ready to use.//
== Parameters ==
* //pathFilename//
* Type:String
* Description:This parameter is the path and filename of the GDI+ image file you want to use. If you want to load a Tiff(.tif or .tiff) files, please use the GeoTiffRasterLayer instead for better performance.
* //imageExtent//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:This parameter is the image extent of GDI+ image file you want to use.
==== Protected Constructors ====
==== Public Methods ====
** {{wiki:PublicMethod.gif|}} GetProjectionText() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:String
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} GetHorizontalResolution() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Single
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} GetVerticalResolution() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Single
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} RequestDrawing() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} RequestDrawing(RectangleShape) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //extentToRefresh//
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
** {{wiki:PublicMethod.gif|}} RequestDrawing(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|}} RequestDrawing(TimeSpan) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //bufferTime//
* Type:TimeSpan
* Description:N/A
** {{wiki:PublicMethod.gif|}} RequestDrawing(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|}} RequestDrawing(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|}} RequestDrawing(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|}} RequestDrawing(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|}} RequestDrawing(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|}} GetThreadSafetyLevel() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.ThreadSafetyLevel|ThreadSafetyLevel]]
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} CloneDeep() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.Layer|Layer]]
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Open() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Close() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} GetBoundingBox() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
== Parameters ==
** {{wiki:PublicMethod.gif|}} Draw(GeoCanvas,Collection) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //canvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //labelsInAllLayers//
* Type:Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>
* Description:N/A
** {{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|}} DrawCore(GeoCanvas,Collection) **
* //This method will draw the image from the GeoImage source based on the parameters provided.//
== Remarks ==
* //The DrawCore method will be called when the layer is being drawn. It will determine if the image is within the extent and the threshold defined. If these parameters are met, it will query the RasterSource for an image and then apply the other various properties (such as transparency, etc.) on the image. Lastly, it will draw the image on the GeoImage or native image passed into the method.//
== Return Value ==
* Type:Void
* Description:None
== Parameters ==
* //canvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:This parameter is the GeoCanvas used to Draw the RasterLayer.
* //labelsInAllLayers//
* Type:Collection<[[ThinkGeo.MapSuite.Core.SimpleCandidate|SimpleCandidate]]>
* Description:This parameter is not used for ImageLayers.
** {{wiki:ProtectedMethod.gif|}} GetBoundingBoxCore() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} OpenCore() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} CloseCore() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} OnRequestedDrawing(RequestedDrawingLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //eventArgs//
* Type:[[ThinkGeo.MapSuite.Core.RequestedDrawingLayerEventArgs|RequestedDrawingLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnRequestingDrawing(RequestingDrawingLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //eventArgs//
* Type:[[ThinkGeo.MapSuite.Core.RequestingDrawingLayerEventArgs|RequestingDrawingLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} GetThreadSafetyLevelCore() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.ThreadSafetyLevel|ThreadSafetyLevel]]
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} CloneDeepCore() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.Layer|Layer]]
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} DrawException(GeoCanvas,Exception) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //canvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //e//
* Type:Exception
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} DrawExceptionCore(GeoCanvas,Exception) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //canvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //e//
* Type:Exception
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawingException(DrawingExceptionLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //e//
* Type:[[ThinkGeo.MapSuite.Core.DrawingExceptionLayerEventArgs|DrawingExceptionLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawnException(DrawnExceptionLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //e//
* Type:[[ThinkGeo.MapSuite.Core.DrawnExceptionLayerEventArgs|DrawnExceptionLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} DrawAttributionCore(GeoCanvas,String) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //canvas//
* Type:[[ThinkGeo.MapSuite.Core.GeoCanvas|GeoCanvas]]
* Description:N/A
* //attribution//
* Type:String
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawingAttribution(DrawingAttributionLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //args//
* Type:[[ThinkGeo.MapSuite.Core.DrawingAttributionLayerEventArgs|DrawingAttributionLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawnAttribution(DrawnAttributionLayerEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //args//
* Type:[[ThinkGeo.MapSuite.Core.DrawnAttributionLayerEventArgs|DrawnAttributionLayerEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} OnDrawingProgressChanged(DrawingProgressChangedEventArgs) **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
* //e//
* Type:[[ThinkGeo.MapSuite.Core.DrawingProgressChangedEventArgs|DrawingProgressChangedEventArgs]]
* Description:N/A
** {{wiki:ProtectedMethod.gif|}} Finalize() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Void
* Description:N/A
== Parameters ==
** {{wiki:ProtectedMethod.gif|}} MemberwiseClone() **
* //N/A//
== Remarks ==
* //N/A//
== Return Value ==
* Type:Object
* Description:N/A
== Parameters ==
==== Public Properties ====
** {{wiki:PublicProperty.gif|}} HasBoundingBox **
This property checks to see if a Layer has a BoundingBox or not. If it has no BoundingBox, it will throw an exception when you call the GetBoundingBox() and GetFullExtent() APIs. In GdiPlusRasterLayer, we override this API and mark it as true.
== Remarks ==
The default implementation in the base class returns false.
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} PathFilename **
This property gets and sets the path and filename of the image file you want to use.
== Remarks ==
This should be a complete path and filename for the image file.
== Return Value ==
* Type:String
** {{wiki:PublicProperty.gif|}} InterpolationMode **
Gets or sets the interpolation mode associated with this System.Drawing.Graphics.
== Remarks ==
N/A
== Return Value ==
* Type:InterpolationMode
** {{wiki:PublicProperty.gif|}} ImageSource **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.RasterSource|RasterSource]]
** {{wiki:PublicProperty.gif|}} WrappingMode **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.WrappingMode|WrappingMode]]
** {{wiki:PublicProperty.gif|}} WrappingExtent **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.RectangleShape|RectangleShape]]
** {{wiki:PublicProperty.gif|}} UpperThreshold **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Double
** {{wiki:PublicProperty.gif|}} LowerThreshold **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Double
** {{wiki:PublicProperty.gif|}} HasProjectionText **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} RequestDrawingInterval **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:TimeSpan
** {{wiki:PublicProperty.gif|}} IsOpen **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} DrawingTime **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:TimeSpan
** {{wiki:PublicProperty.gif|}} Name **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:String
** {{wiki:PublicProperty.gif|}} Attribution **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:String
** {{wiki:PublicProperty.gif|}} IsVisible **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} Transparency **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Single
** {{wiki:PublicProperty.gif|}} BlueTranslation **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Single
** {{wiki:PublicProperty.gif|}} RedTranslation **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Single
** {{wiki:PublicProperty.gif|}} GreenTranslation **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Single
** {{wiki:PublicProperty.gif|}} KeyColors **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Collection<[[ThinkGeo.MapSuite.Core.GeoColor|GeoColor]]>
** {{wiki:PublicProperty.gif|}} IsNegative **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} IsGrayscale **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
** {{wiki:PublicProperty.gif|}} DrawingExceptionMode **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:[[ThinkGeo.MapSuite.Core.DrawingExceptionMode|DrawingExceptionMode]]
==== Protected Properties ====
** {{wiki:ProtectedProperty.gif|}} IsOpenCore **
N/A
== Remarks ==
N/A
== Return Value ==
* Type:Boolean
==== Public Events ====
** {{wiki:PublicEvent.gif|}} StreamLoading **
This event allows you to pass in your own stream to represent the image.
== Remarks ==
If you wish, you can pass in your own stream to represent the image. The stream can come from a variety of places, including isolated storage, a compressed file, or an encrypted stream. When the image is finished with the stream it will dispose of it, so be sure to keep this in mind when passing the stream in. If you do not pass in an alternate stream, the class will attempt to load the file from the file system using the PathFileName property.
Event Arguments:[[ThinkGeo.MapSuite.Core.StreamLoadingEventArgs|StreamLoadingEventArgs]]
** {{wiki:PublicEvent.gif|}} RequestedDrawing **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.RequestedDrawingLayerEventArgs|RequestedDrawingLayerEventArgs]]
** {{wiki:PublicEvent.gif|}} RequestingDrawing **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.RequestingDrawingLayerEventArgs|RequestingDrawingLayerEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawingProgressChanged **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.DrawingProgressChangedEventArgs|DrawingProgressChangedEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawingException **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.DrawingExceptionLayerEventArgs|DrawingExceptionLayerEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawnException **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.DrawnExceptionLayerEventArgs|DrawnExceptionLayerEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawingAttribution **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.DrawingAttributionLayerEventArgs|DrawingAttributionLayerEventArgs]]
** {{wiki:PublicEvent.gif|}} DrawnAttribution **
N/A
== Remarks ==
N/A
Event Arguments:[[ThinkGeo.MapSuite.Core.DrawnAttributionLayerEventArgs|DrawnAttributionLayerEventArgs]]