====== ThinkGeo.MapSuite.Shapes.Proj4Projection ====== ===== Inheritance Hierarchy ===== *System.Object *ThinkGeo.MapSuite.Shapes.Projection ***ThinkGeo.MapSuite.Shapes.Proj4Projection** ===== Members Summary ===== ==== Public Constructors ==== ** {{wiki:PublicMethod.gif|}} Proj4Projection() ** * //This is the default constructor for this class.// == Remarks == * //This conctructor pass nothing. After this cconstructor , you should set the InternalProjectionParametersString property and ExternalProjectionParametersString property before open to use.// == Parameters ==
** {{wiki:PublicMethod.gif|}} Proj4Projection(String,String) ** * //This is a constructor for the class.// == Remarks == * //This constructor allows you to pass in Proj4 text parameters for the to and from projection. The parameters typically look like "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs" You should use this constructor when you know the parameters. If you know the SRID directly you can use the other constructor that takes the SRID.// == Parameters == * //internalProjectionParametersString// * Type:String * Description:This parameter is the projection parameters describing the data. * //externalProjectionParametersString// * Type:String * Description:This parameter is the projection parameters describing the projection you want to go to.
** {{wiki:PublicMethod.gif|}} Proj4Projection(Int32,Int32) ** * //N/A// == Remarks == * //N/A// == Parameters == * //internalEpsgSrid// * Type:Int32 * Description:N/A * //externalEpsgSrid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}} Proj4Projection(String,Int32) ** * //N/A// == Remarks == * //N/A// == Parameters == * //internalProjectionParametersString// * Type:String * Description:N/A * //externalEpsgSrid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}} Proj4Projection(Int32,String) ** * //N/A// == Remarks == * //N/A// == Parameters == * //internalEpsgSrid// * Type:Int32 * Description:N/A * //externalProjectionParametersString// * Type:String * Description:N/A
==== Protected Constructors ==== ==== Public Methods ==== ** {{wiki:PublicMethod.gif|}} CloneDeep() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Projection|Projection]] * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}} Open() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Void * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(GeoImage,RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RasterProjectionResult|RasterProjectionResult]] * Description:N/A == Parameters == * //image// * Type:[[ThinkGeo.MapSuite.Drawing.GeoImage|GeoImage]] * Description:N/A * //imageExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(GeoImage,RectangleShape,RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RasterProjectionResult|RasterProjectionResult]] * Description:N/A == Parameters == * //image// * Type:[[ThinkGeo.MapSuite.Drawing.GeoImage|GeoImage]] * Description:N/A * //imageExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A * //targetExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} Close() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Void * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(Double,Double) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex|Vertex]] * Description:N/A == Parameters == * //x// * Type:Double * Description:N/A * //y// * Type:Double * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(BaseShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A == Parameters == * //baseShape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(Feature) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A == Parameters == * //rectangleShape// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToExternalProjection(IEnumerable) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex[]|Vertex[]]] * Description:N/A == Parameters == * //vertices// * Type:IEnumerable<[[ThinkGeo.MapSuite.Shapes.Vertex|Vertex]]> * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToInternalProjection(Double,Double) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex|Vertex]] * Description:N/A == Parameters == * //x// * Type:Double * Description:N/A * //y// * Type:Double * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToInternalProjection(BaseShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A == Parameters == * //baseShape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToInternalProjection(Feature) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToInternalProjection(IEnumerable) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex[]|Vertex[]]] * Description:N/A == Parameters == * //vertices// * Type:IEnumerable<[[ThinkGeo.MapSuite.Shapes.Vertex|Vertex]]> * Description:N/A
** {{wiki:PublicMethod.gif|}} ConvertToInternalProjection(RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A == Parameters == * //rectangleShape// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:PublicMethod.gif|}} GetInternalGeographyUnit() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}} GetExternalGeographyUnit() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * 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 ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetEpsgParametersString(Int32) ** * //N/A// == Remarks == * //More information about it can reference to EPSG.rtf in the documentation.// == Return Value == * Type:String * Description:The project text corresponding to the srid. == Parameters == * //srid// * Type:Int32 * Description:The target Srid infromation to get the projection text from.
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetWgs84ParametersString() ** * //N/A// == Remarks == * //More information about it can reference to EPSG.rtf in the documentation.// == Return Value == * Type:String * Description:The project text corresponding to the srid. == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLatLongParametersString() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetDecimalDegreesParametersString() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetEsriParametersString(Int32) ** * //N/A// == Remarks == * //More information about it can reference to ERSI.rtf in the documentation.// == Return Value == * Type:String * Description:The project text corresponding to the srid. == Parameters == * //srid// * Type:Int32 * Description:The target Srid infromation to get the projection text from.
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetGoogleMapParametersString() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:A text for a projection used by GoogleMap , it should like this "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs" == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetBingMapParametersString() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:A text for a projection used by BingMaps , it should like this "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs" == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetSphericalMercatorParametersString() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:A text for a SphericalMercator projection, it should like this "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs" == Parameters ==
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneParametersString(Double,Double) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //longitude// * Type:Double * Description:N/A * //latitude// * Type:Double * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneParametersString(Feature,String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A * //proj4ProjectionParameters// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneParametersString(Feature,Int32) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A * //srid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneParametersString(BaseShape,String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //shape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A * //proj4ProjectionParameters// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneParametersString(BaseShape,Int32) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //shape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A * //srid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneNumber(Double,Double) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Int32 * Description:N/A == Parameters == * //latitude// * Type:Double * Description:N/A * //longitude// * Type:Double * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneNumber(Feature,String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Int32 * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A * //proj4ProjectionParameters// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneNumber(Feature,Int32) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Int32 * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A * //srid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneNumber(BaseShape,String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Int32 * Description:N/A == Parameters == * //shape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A * //proj4ProjectionParameters// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetLocalUtmZoneNumber(BaseShape,Int32) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Int32 * Description:N/A == Parameters == * //shape// * Type:[[ThinkGeo.MapSuite.Shapes.BaseShape|BaseShape]] * Description:N/A * //srid// * Type:Int32 * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetGeographyUnitFromPrj(String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * Description:N/A == Parameters == * //prjString// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} GetGeographyUnitFromProj4(String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * Description:N/A == Parameters == * //proj4String// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} ConvertEpsgToPrj(Int32) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description: == Parameters == * //srid// * Type:Int32 * Description:Epsg number that reprents this projection
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} ConvertProj4ToPrj(String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //proj4String// * Type:String * Description:N/A
** {{wiki:PublicMethod.gif|}}{{wiki:Static.gif|}} ConvertPrjToProj4(String) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String * Description:N/A == Parameters == * //prjString// * Type:String * Description:N/A
===== Protected Methods ===== ** {{wiki:ProtectedMethod.gif|}} OpenCore() ** * //N/A// == Remarks == * //As this is the core version of the Open method it is intended to be overridden in inherited version of the class. When overriding you will be responsible for getting the projection classes state ready for doing projections. In this override we call the Proj4 methods get it ready for projection.// == Return Value == * Type:Void * Description:None == Parameters ==
** {{wiki:ProtectedMethod.gif|}} CloseCore() ** * //N/A// == Remarks == * //As this is the core version of the Close method it is intended to be overridden in inherited version of the class. When overriding you will be responsible freeing any state you have maintained and getting the class ready to serialization if necessary. Note that the object may be opened again so you want to make sure you can open and close the object multiple tiles without any ill effects. In this override we call the Proj4 methods get release the handles and memory.// == Return Value == * Type:Void * Description:None == Parameters ==
** {{wiki:ProtectedMethod.gif|}} ConvertToExternalProjectionCore(Double[],Double[]) ** * //N/A// == Remarks == * //This method returns a projected vertex based on the coordinates passed in. You will need to override this method for the Projection class. Typically you can call the projection utility library that has interfaces for dozens of different types of projections.// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex[]|Vertex[]]] * Description:This method returns a projected vertices based on the coordinates passed in. == Parameters == * //x// * Type:Double[] * Description:This parameter is the X values of the points that will be projected. * //y// * Type:Double[] * Description:This parameter is the Y values of the points that will be projected.
** {{wiki:ProtectedMethod.gif|}} ConvertToInternalProjectionCore(Double[],Double[]) ** * //N/A// == Remarks == * //This method returns a de-projected vertex based on the coordinates passed in. You will need to override this method for the Projection class. Typically you can call the projection utility library that has interfaces for dozens of different types of projections. The de-projection is important because inside of the FeatureSource you will in many cases to to and from various projections.// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Vertex[]|Vertex[]]] * Description:This method returns a de-projected vertices based on the coordinates passed in. == Parameters == * //x// * Type:Double[] * Description:This parameter is the X values of the points that will be de-projected. * //y// * Type:Double[] * Description:This parameter is the Y values of the points that will be de-projected.
** {{wiki:ProtectedMethod.gif|}} ConvertToExternalProjectionCore(GeoImage,RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RasterProjectionResult|RasterProjectionResult]] * Description:N/A == Parameters == * //image// * Type:[[ThinkGeo.MapSuite.Drawing.GeoImage|GeoImage]] * Description:N/A * //imageExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:ProtectedMethod.gif|}} ConvertToExternalProjectionCore(GeoImage,RectangleShape,RectangleShape) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RasterProjectionResult|RasterProjectionResult]] * Description:N/A == Parameters == * //image// * Type:[[ThinkGeo.MapSuite.Drawing.GeoImage|GeoImage]] * Description:N/A * //imageExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A * //targetExtent// * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] * Description:N/A
** {{wiki:ProtectedMethod.gif|}} GetInternalGeographyUnitCore() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * Description:N/A == Parameters ==
** {{wiki:ProtectedMethod.gif|}} GetExternalGeographyUnitCore() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.GeographyUnit|GeographyUnit]] * Description:N/A == Parameters ==
** {{wiki:ProtectedMethod.gif|}} CloneDeepCore() ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.Projection|Projection]] * Description:N/A == Parameters ==
** {{wiki:ProtectedMethod.gif|}} UpdateToExternalProjection(Feature) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Void * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * Description:N/A
** {{wiki:ProtectedMethod.gif|}} UpdateToInternalProjection(Feature) ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Void * Description:N/A == Parameters == * //feature// * Type:[[ThinkGeo.MapSuite.Shapes.Feature|Feature]] * 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|}} InternalProjectionParametersString ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String ** {{wiki:PublicProperty.gif|}} ExternalProjectionParametersString ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:String ** {{wiki:PublicProperty.gif|}} DecimalDegreeBoundary ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:[[ThinkGeo.MapSuite.Shapes.RectangleShape|RectangleShape]] ** {{wiki:PublicProperty.gif|}} IsOpen ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Boolean ** {{wiki:PublicProperty.gif|}} CanConvertRasterToExternalProjection ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Boolean ==== Protected Properties ==== ** {{wiki:ProtectedProperty.gif|}} CanReproject ** * //N/A// == Remarks == * //N/A// == Return Value == * Type:Boolean ==== Public Events ====