1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336
|
## @ignore Geo::OSRc
## @class Geo::OSR
## @ignore UseExceptions
## @ignore DontUseExceptions
## @ignore TIEHASH
## @ignore CLEAR
## @ignore FIRSTKEY
## @ignore NEXTKEY
## @ignore FETCH
## @ignore STORE
## @ignore this
## @fn $GetWellKnownGeogCSAsWKT($name)
# @param name a well known name
# @return a WKT string
## @fn $GetUserInputAsWKT($name)
# @param name the user input
# @return a WKT string
## @fn \@GetProjectionMethods()
# @return reference to an array of possible projection methods
## @fn @GetProjectionMethodParameterList($method)
# @param method projection method name
# @return (arrayref parameters, $projection_name)
## @fn @GetProjectionMethodParamInfo($method, $parameter)
# @return ($user_friendly_name, $type, $defaultval)
## @class Geo::OSR::SpatialReference
# @brief <a href="http://www.gdal.org/ogr/classOGRSpatialReference.html">Documentation
# of the underlying C++ class at www.gdal.org</a>
## @attr list PROJECTIONS
# Projections known to GDAL
## @attr list PARAMETERS
# Some projection parameters known to GDAL
## @cmethod Geo::OSR::SpatialReference new($wkt = undef)
# @param wkt well known text
# @return a new Geo::OSR::SpatialReference object
## @ignore ImportFromEPSGA
## @ignore ImportFromERM
## @ignore ImportFromMICoordSys
## @ignore ImportFromWkt
## @ignore ImportFromProj4
## @ignore ImportFromESRI
## @ignore ImportFromEPSG
## @ignore ImportFromPCI
## @ignore ImportFromUSGS
## @ignore ImportFromXML
## @ignore ImportFromUrl
## @cmethod Geo::OSR::SpatialReference create(%params)
# Create a new spatial reference object using a named parameter. This
# constructor recognizes the following key words (alternative in
# parenthesis): WKT (Text), Proj4, ESRI, EPSG, EPSGA, PCI, USGS, GML
# (XML), URL, ERMapper (ERM), MapInfoCS (MICoordSys). The value
# depends on the key.
# - WKT: Well Known Text string
# - Proj4: PROJ.4 string
# - ESRI: reference to a list of strings (contents of ESRI .prj file)
# - EPSG: EPSG code number
# - EPSGA: EPSG code number (the resulting CS will have EPSG preferred axis ordering)
# - PCI: listref: [PCI_projection_string, Grid_units_code, [17 cs parameters]]
# - USGS: listref: [Projection_system_code, Zone, [15 cs parameters], Datum_code, Format_flag]
# - GML: GML string
# - URL: URL for downloading the spatial reference from
# - ERMapper: listref: [Projection, Datum, Units]
# - MapInfoCS: MapInfo style co-ordinate system definition
#
# For more information, consult the import methods in <a href="http://www.gdal.org/ogr/classOGRSpatialReference.html">OGR documentation</a>.
#
# @note ImportFrom* methods also exist but are not documented here.
#
# Usage:
# \code
# $sr = Geo::OSR::SpatialReference->create( key => value );
# \endcode
# @return a new Geo::OSR::SpatialReference object
## @method Geo::OSR::SpatialReference Clone()
# Make a duplicate of this SpatialReference object.
# @return a new Geo::OSR::SpatialReference object
## @method Geo::OSR::SpatialReference CloneGeogCS()
# Make a duplicate of the GEOGCS node of this SpatialReference object.
# @return a new Geo::OSR::SpatialReference object
## @ignore AsText
## @ignore ExportToPrettyWkt
## @ignore ExportToProj4
## @ignore ExportToPCI
## @ignore ExportToUSGS
## @ignore ExportToXML
## @ignore ExportToMICoordSys
## @ignore ExportToWkt
## @method Export($format)
# Export the spatial reference to a selected format.
# @note a.k.a. As
# @param format One of the following. The return value is explained
# after the format. Other arguments are explained in parenthesis.
# - WKT (Text): Well Known Text string
# - PrettyWKT: Well Known Text string nicely formatted (simplify)
# - Proj4: PROJ.4 string
# - PCI: a list: ($proj_string, $units, [$parms1, ...])
# - USGS: a list: ($code, $zone, [$parms1, ...], $datum)
# - GML (XML): GML based string (dialect)
# - MapInfoCS (MICoordSys): MapInfo style co-ordinate system definition
#
# @note The named parameter syntax also works and is needed is those
# cases when other arguments need or may be given. The format should
# be given using key as, 'to' or 'format'.
#
# @note ExportTo* and AsText methods also exist but are not documented here.
#
# @return a scalar or a list depending on the export format
## @ignore SetACEA
## @ignore SetAE
## @ignore SetAngularUnits
## @ignore SetAttrValue
## @ignore SetBonne
## @ignore SetCS
## @ignore SetCompoundCS
## @ignore SetEC
## @ignore SetEckertIV
## @ignore SetEckertVI
## @ignore SetEquirectangular
## @ignore SetEquirectangular2
## @ignore SetFromUserInput
## @ignore SetGS
## @ignore SetGaussSchreiberTMercator
## @ignore SetGeocCS
## @ignore SetIGH
## @ignore SetLinearUnits
## @ignore SetLinearUnitsAndUpdateParameters
## @ignore SetNormProjParm
## @ignore SetProjParm
## @ignore SetProjection
## @ignore SetStatePlane
## @ignore SetTargetLinearUnits
## @ignore SetUTM
## @ignore SetVertCS
## @ignore SetWellKnownGeogCS
## @ignore SetAuthority
## @ignore SetCEA
## @ignore SetGEOS
## @ignore SetGH
## @ignore SetGnomonic
## @ignore SetHOM
## @ignore SetHOM2PNO
## @ignore SetKrovak
## @ignore SetLAEA
## @ignore SetLCC
## @ignore SetLCC1SP
## @ignore SetLCCB
## @ignore SetLocalCS
## @ignore SetMC
## @ignore SetMercator
## @ignore SetMollweide
## @ignore SetNZMG
## @ignore SetOS
## @ignore SetOrthographic
## @ignore SetPS
## @ignore SetPolyconic
## @ignore SetRobinson
## @ignore SetSOC
## @ignore SetSinusoidal
## @ignore SetStereographic
## @ignore SetTM
## @ignore SetTMG
## @ignore SetTMSO
## @ignore SetTMVariant
## @ignore SetVDG
## @ignore SetTOWGS84
## @ignore SetGeogCS
## @ignore SetProjCS
## @method Set(%params)
# Set a parameter or parameters in the spatial reference object.
# @param params Named parameters. Recognized keys and respective
# values are the following.
# - Authority: authority name
# - Node: partial or complete path to the target node
# - AngularUnits: angular units for the geographic coordinate system
# - LinearUnits: linear units for the target node or the object
# - CoordinateSystem: 'UTM', 'State Plane', 'WGS' or a user visible name
# - Zone: zone for setting up UTM or State Plane coordinate systems (State Plane zone in USGS numbering scheme)
# - Projection: one from \@Geo::OSR::PROJECTIONS
# - Parameter: one from \@Geo::OSR::PARAMETERS
# - Code: code for value with an authority
# - Value: value to be assigned to a node, the projection or the object
# - Normalized: set to true to indicate that the Value argument is in "normalized" form
# - Parameters: a reference to a list containing the projection parameters
# - Name: Transverse Mercator variant name or a well known name (e.g. WGS84)
# - GuessFrom: tries to guess from given text
# - North: set false for southern hemisphere
# - NAD83: set false if the NAD27 zone definition should be used instead of NAD83
# - UnitName: to override the legal definition for a zone
# - UnitConversionFactor: to override the legal definition for a zone
# - LOCAL_CS: local cs name
# - Datum: a known (OGC or EPSG) name
# - Spheroid: user visible name
# - GeocentricCS: Geocentric coorinate system name
# - HorizontalCS: Horizontal coordinate system name
# - VerticalCS: Vertical coordinate system name (setting requires Datum)
#
# @note Numerous Set* methods also exist but are not documented here.
## @method $IsSame($rs)
# @param rs a Geo::OSR::SpatialReference object
# @return boolean
## @method $IsSameGeogCS($rs)
# @param rs a Geo::OSR::SpatialReference object
# @return boolean
## @method $IsGeographic()
# @return boolean
## @method $IsProjected()
# @return boolean
## @method $IsLocal()
# @return boolean
## @method $IsCompound()
# @return boolean
## @method $IsGeocentric()
# @return boolean
## @method $IsVertical()
# @return boolean
## @method $IsSameVertCS($rs)
# @param rs a Geo::OSR::SpatialReference object
# @return boolean
## @method $GetAttrValue($name, $child = 0)
# @param name
# @param child
# @return string
## @method $GetAngularUnits()
# @return a number
## @method $GetLinearUnits()
# @return a number
## @method $GetLinearUnitsName()
# @return string
## @method $GetAuthorityCode($target_key)
# @param target_key
# @return string
## @method $GetAuthorityName($target_key)
# @param target_key
# @return string
## @method $GetProjParm($name, $default_val = 0.0)
# @param name
# @param default_val
# @return a number
## @method $GetNormProjParm($name, $default_val = 0.0)
# @param name
# @param default_val
# @return a number
## @method CopyGeogCSFrom($rhs)
# @param rhs Geo::OSR::SpatialReference
## @method GetTOWGS84()
# @return array = ($p1, $p2, $p3, $p4, $p5, $p6, $p7)
## @method GetInvFlattening()
## @method GetSemiMinor()
## @method GetSemiMajor()
## @method GetUTMZone()
# Get UTM zone information.
# @return The UTM zone (integer). In scalar context the returned value
# is negative for southern hemisphere zones. In list context returns
# two values ($zone, $north), where $zone is always non-negative and
# $north is true or false.
## @method AutoIdentifyEPSG()
# Set EPSG authority info if possible.
## @method EPSGTreatsAsLatLong()
# Returns TRUE if EPSG feels this geographic coordinate system should be treated as having lat/long coordinate ordering.
## @method Validate()
## @method StripCTParms()
## @method FixupOrdering()
## @method Fixup()
## @method MorphToESRI()
## @method MorphFromESRI()
## @class Geo::OSR::CoordinateTransformation
## @cmethod Geo::OSR::CoordinateTransformation new($src, $dst)
# @param src a Geo::OSR::SpatialReference object
# @param dst a Geo::OSR::SpatialReference object
# @return a new Geo::OSR::CoordinateTransformation object
## @method \@TransformPoint($x, $y, $z)
# @param x
# @param y
# @param z [optional]
# @return arrayref = [$x, $y, $z]
## @method TransformPoints(\@points)
# @param points [in/out] a reference to a list of points (line string
# or ring) that is modified in-place. A list of points is: ([x, y, z],
# [x, y, z], ...), where z is optional. Supports also lists of line
# strings and polygons.
|