Resumen
Each part of the spatial reference has a number of properties (especially the coordinate system) that defines what map projection options are used to define horizontal coordinates.
Debate
A SpatialReference object can also be accessed from existing datasets using the Describe spatialReference property.
dataset = "c:/data/landbase.gdb/Wetlands"
spatial_ref = arcpy.Describe(dataset).spatialReference
Las extensiones XY, Z y M no son las mismas que los dominios de referencia espacial. Los dominios XY, Z y M de una referencia espacial definen el rango válido de valores de coordenadas que se pueden almacenar en una clase de entidad. Las extensiones de la clase de entidad reflejan el rango real de valores de coordenadas que existen dentro de la clase de entidad. Estas extensiones no pueden ser más grandes que los dominios.
The SpatialReference object supports equal (==) and not equal (!=) operators for comparing spatial references.
Nota:
The spatial reference properties available depend on the coordinate system used. In the properties list below, those properties that are only available with a projected coordinate system are denoted with a 1; properties only available with a geographic coordinate system are denoted with a 2.
Because a projected coordinate system is based on a geographic coordinate system, projected coordinate system properties can be accessed from a geographic coordinate system using the GCS property.
Sintaxis
SpatialReference ({item}, {vcs}, {text})
Parámetro | Explicación | Tipo de datos |
item | The horizontal coordinate system used to create the SpatialReference object. The coordinate system can be set using a projection file, name, or factory code. Create a SpatialReference object using the display name of a coordinate system.
Create a SpatialReference object using the canonical name of a coordinate system.
Create a SpatialReference object using a coordinate system's factory code (or authority code or WKID).
Create a SpatialReference object using a projection file (.prj).
For more information about coordinate system names and factory codes, see the geographic_coordinate_systems.pdf and projected_coordinate_systems.pdf files. For more information, see Using the spatial reference class. | Variant |
vcs | The vertical coordinate system (VCS). The VCS defines information about the z-coordinates and can be set using a name or factory code. See the following examples: Define the vertical coordinate system using a name.
Define the vertical coordinate system using a factory code.
| Variant |
text | A well-known text (WKT or WKT2 format) string that can be used to define a horizontal and vertical coordinate system. Nota:When creating a SpatialReference object with a vertical coordinate system using the text argument, define the vertical coordinate system using the VERTCS section of the WKT string. The vcs argument is not used. Create a SpatialReference object using a WKT string with a horizontal coordinate system.
Create a SpatialReference object using a WKT2 string with a horizontal coordinate system.
Create a SpatialReference object using a WKT string with a horizontal and vertical coordinate system.
| String |
Propiedades
Propiedad | Explicación | Tipo de datos |
GCS (Sólo lectura) | A projected coordinate system returns a SpatialReference object for the geographic coordinate system it is based on. A geographic coordinate system returns the same SpatialReference. | SpatialReference |
MDomain (Sólo lectura) | The extent of the measure domain. | String |
MFalseOriginAndUnits (Sólo lectura) | The measure false origin and units. | String |
MResolution (Lectura y escritura) | The measure resolution. | Double |
MTolerance (Lectura y escritura) | The measure tolerance. | Double |
VCS (Sólo lectura) | If the coordinate system has a vertical coordinate system, it returns a VCS object for the vertical coordinate system it is based on. | Object |
XYResolution (Lectura y escritura) | The xy resolution. | Double |
XYTolerance (Lectura y escritura) | The xy tolerance. | Double |
ZDomain (Sólo lectura) | The extent of the z domain. | String |
ZFalseOriginAndUnits (Sólo lectura) | The z false origin and units. | String |
ZResolution (Lectura y escritura) | The z resolution property. | Double |
ZTolerance (Lectura y escritura) | The z-tolerance property. | Double |
abbreviation (Lectura y escritura) | The abbreviated name of the spatial reference. | String |
alias (Lectura y escritura) | The alias of the spatial reference. | String |
domain (Sólo lectura) | The extent of the xy domain. | String |
factoryCode (Lectura y escritura) | The factory code or well-known ID (WKID) of the spatial reference. | Integer |
falseOriginAndUnits (Sólo lectura) | The false origin and units. | String |
hasMPrecision (Sólo lectura) | Indicates whether m-value precision information has been defined. | Boolean |
hasXYPrecision (Sólo lectura) | Indicates whether xy precision information has been defined. | Boolean |
hasZPrecision (Sólo lectura) | Indicates whether z-value precision information has been defined. | Boolean |
isHighPrecision (Lectura y escritura) | Indicates whether the spatial reference has high precision set. | Boolean |
name (Lectura y escritura) | The name of the spatial reference. | String |
remarks (Lectura y escritura) | The comment string of the spatial reference. | String |
type (Lectura y escritura) | The type of the spatial reference.
| String |
usage (Sólo lectura) | The usage notes. | String |
PCSCode (Lectura y escritura) | The projected coordinate system code.1 | Integer |
PCSName (Lectura y escritura) | The projected coordinate system name.1 | String |
azimuth (Lectura y escritura) | The azimuth of a projected coordinate system.1 | Double |
centralMeridian (Lectura y escritura) | The central meridian of a projected coordinate system.1 | Double |
centralMeridianInDegrees (Lectura y escritura) | The central meridian (Lambda0) of a projected coordinate system in degrees.1 | Double |
centralParallel (Lectura y escritura) | The central parallel of a projected coordinate system.1 | Double |
classification (Sólo lectura) | The classification of a map projection.1 | String |
falseEasting (Lectura y escritura) | The false easting of a projected coordinate system.1 | Double |
falseNorthing (Lectura y escritura) | The false northing of a projected coordinate system.1 | Double |
latitudeOf1st (Lectura y escritura) | The latitude of the first point of a projected coordinate system.1 | Double |
latitudeOf2nd (Lectura y escritura) | The latitude of the second point of a projected coordinate system.1 | Double |
latitudeOfOrigin (Lectura y escritura) | The latitude of origin of a projected coordinate system.1 | Double |
linearUnitCode (Lectura y escritura) | The linear unit code.1 | Integer |
linearUnitName (Lectura y escritura) | The linear unit name.1 | String |
longitude (Lectura y escritura) | The longitude value of this prime meridian.1 | Double |
longitudeOf1st (Lectura y escritura) | The longitude of the first point of a projected coordinate system.1 | Double |
longitudeOf2nd (Lectura y escritura) | The longitude of the second point of a projected coordinate system.1 | Double |
longitudeOfOrigin (Lectura y escritura) | The longitude of origin of a projected coordinate system.1 | Double |
metersPerUnit (Sólo lectura) | The meters per linear unit.1 | Double |
projectionCode (Lectura y escritura) | The projection code.1 | Integer |
projectionName (Lectura y escritura) | The projection name.1 | String |
scaleFactor (Lectura y escritura) | The scale factor of a projected coordinate system.1 | Double |
standardParallel1 (Lectura y escritura) | The first parallel of a projected coordinate system.1 | Double |
standardParallel2 (Lectura y escritura) | The second parallel of a projected coordinate system.1 | Double |
GCSCode (Lectura y escritura) | The geographic coordinate system code.2 | Integer |
GCSName (Lectura y escritura) | The geographic coordinate system name.2 | String |
angularUnitCode (Lectura y escritura) | The angular unit code.2 | Integer |
angularUnitName (Lectura y escritura) | The angular unit name.2 | String |
datumCode (Lectura y escritura) | The datum code.2 | Integer |
datumName (Lectura y escritura) | The datum name.2 | String |
flattening (Lectura y escritura) | The flattening ratio of this spheroid.2 | Double |
longitude (Lectura y escritura) | The longitude value of this prime meridian.2 | Double |
primeMeridianCode (Lectura y escritura) | The prime meridian code.2 | Integer |
primeMeridianName (Lectura y escritura) | The prime meridian name.2 | String |
radiansPerUnit (Sólo lectura) | The radians per angular unit.2 | Double |
semiMajorAxis (Lectura y escritura) | The semi-major axis length of this spheroid.2 | Double |
semiMinorAxis (Lectura y escritura) | The semi-minor axis length of this spheroid.2 | Double |
spheroidCode (Lectura y escritura) | The spheroid code.2 | Integer |
spheroidName (Lectura y escritura) | The spheroid name.2 | String |
Descripción general del método
Método | Explicación |
create () | Creates the SpatialReference object using properties. |
createFromFile (prj_file) | Creates the SpatialReference object from a projection file. |
exportToString ({encoding}) | Exports the object to its string representation. |
loadFromString (string) | Defines a SpatialReference object from a WKT string. The exportToString method can be used to export a WKT string representation of the spatial reference.
|
setDomain (x_min, x_max, y_min, y_max) | Sets the XY domain. |
setFalseOriginAndUnits (false_x, false_y, xy_units) | Sets the XY false origin and units. |
setMDomain (m_min, m_max) | Sets the M domain. |
setMFalseOriginAndUnits (false_m, m_units) | Sets the M false origin and units. |
setZDomain (z_min, z_max) | Sets the Z domain. |
setZFalseOriginAndUnits (false_z, z_units) | Sets the Z false origin and units. |
Métodos
create ()
createFromFile (prj_file)
Parámetro | Explicación | Tipo de datos |
prj_file | The projection file used to populate the SpatialReference object. | String |
exportToString ({encoding})
Parámetro | Explicación | Tipo de datos |
encoding | Specifies the encoding of the exported string.
(El valor predeterminado es WKT) | String |
Tipo de datos | Explicación |
String | The WKT or WKT 2 representation of the object. |
loadFromString (string)
Parámetro | Explicación | Tipo de datos |
string | The WKT string representation of the object. | String |
setDomain (x_min, x_max, y_min, y_max)
Parámetro | Explicación | Tipo de datos |
x_min | The minimum x-value. | Double |
x_max | The maximum x-value. | Double |
y_min | The minimum y-value. | Double |
y_max | The maximum y-value. | Double |
setFalseOriginAndUnits (false_x, false_y, xy_units)
Parámetro | Explicación | Tipo de datos |
false_x | The false x value. | Double |
false_y | The false y value. | Double |
xy_units | The xy units. | String |
setMDomain (m_min, m_max)
Parámetro | Explicación | Tipo de datos |
m_min | The minimum m-value. | Double |
m_max | The maximum m-value. | Double |
setMFalseOriginAndUnits (false_m, m_units)
Parámetro | Explicación | Tipo de datos |
false_m | The false m-value. | Double |
m_units | The m units. | Double |
setZDomain (z_min, z_max)
Parámetro | Explicación | Tipo de datos |
z_min | The minimum z-value. | Double |
z_max | The maximum z-value. | Double |
setZFalseOriginAndUnits (false_z, z_units)
Parámetro | Explicación | Tipo de datos |
false_z | The false z-value. | Double |
z_units | The false z units. | Double |
Muestra de código
For each feature class in a workspace, print the name of its spatial reference.
import arcpy
# Set the workspace environment
arcpy.env.workspace = "c:/base/base.gdb"
# Get a list of the feature classes in the input folder
feature_classes = arcpy.ListFeatureClasses()
# Loop through the list
for fc in feature_classes:
# Create the spatial reference object
spatial_ref = arcpy.Describe(fc).spatialReference
# If the spatial reference is unknown
if spatial_ref.name == "Unknown":
print(r"{fc} has an unknown spatial reference")
# Otherwise, print out the feature class name and spatial reference
else:
print(f"{fc} : {spatial_ref.name}")