GDAL APILink to this heading

ForbhreathnúLink to this heading

`GDAL`__ stands for Geospatial Data Abstraction Library, and is a veritable "Swiss army knife" of GIS data functionality. A subset of GDAL is the `OGR`__ Simple Features Library, which specializes in reading and writing vector geographic data in a variety of standard formats.

Soláthraíonn GeodJango comhéadan Python ardleibhéil do chuid de chumais OGR, lena n-áirítear claochlú léitheoireachta agus comhordaithe sonraí spásúla veicteora agus tacaíocht íosta do ghnéithe GDAL maidir le sonraí raster (íomhá).

Sonraí SamplachaLink to this heading

The GDAL/OGR tools described here are designed to help you read in your geospatial data, in order for most of them to be useful you have to have some data to work with. If you're starting out and don't yet have any data of your own to use, GeoDjango tests contain a number of data sets that you can use for testing. You can download them here:

Shell
$ wget https://raw.githubusercontent.com/django/django/main/tests/gis_tests/data/cities/cities.{shp,prj,shx,dbf}
$ wget https://raw.githubusercontent.com/django/django/main/tests/gis_tests/data/rasters/raster.tif

Rudaí Foinse Sonraí VeicteoraLink to this heading

Sonraí SonraíLink to this heading

DataSource is a wrapper for the OGR data source object that supports reading data from a variety of OGR-supported geospatial file formats and data sources using a consistent interface. Each data source is represented by a DataSource object which contains one or more layers of data. Each layer, represented by a Layer object, contains some number of geographic features (Feature), information about the type of features contained in that layer (e.g. points, polygons, etc.), as well as the names and types of any additional fields (Field) of data that may be associated with each feature in that layer.

class DataSource(ds_input, encoding='utf-8')Link to this definition

Ní theastaíonn ach paraiméadar amháin ar an tógálaí do DataSource`: cosán an chomhaid is mian leat a léamh. Mar sin féin, tacaíonn OGR le réimse foinsí sonraí níos casta, lena n-áirítear bunachair sonraí, ar féidir rochtain a fháil orthu trí shreang ainm speisialta a rith in ionad cosán. Le haghaidh tuilleadh faisnéise, féach an doiciméadú `OGR Vector Formats`__. Tugann maoin: Attr: ainm de shampla Datasource ainm OGR an fhoinse sonraí bunúsach atá á úsáid aige.

Ligeann an paraiméadar roghnach “ionchódú” duit ionchódú neamhchaighdeánach de na teaghráin sa fhoinse a shonrú. Is gnách go mbíonn sé seo úsáideach nuair a fhaigheann tú eisceachtaí DjangounicodeDecodeError agus tú ag léamh luachanna réimse.

Nuair a bheidh do Dataource` cruthaithe agat, is féidir leat a fháil amach cé mhéad sraitheanna sonraí atá ann trí rochtain a fháil ar an maoin: attr: layer_count, nó (go coibhéiseach) tríd an bhfeidhm `len () ``a úsáid. Le haghaidh faisnéise maidir le rochtain a fháil ar na sraitheanna sonraí féin, féach an chéad chuid eile:

Python console
>>> from django.contrib.gis.gdal import DataSource
>>> ds = DataSource("/path/to/your/cities.shp")
>>> ds.name
'/path/to/your/cities.shp'
>>> ds.layer_count  # This file only contains one layer
1
layer_countLink to this definition

Tugann sé líon na sraitheanna san fhoinse sonraí ar ais.

nameLink to this definition

Tugann ainm na foinse sonraí ar ais.

``Sraith ``Link to this heading

class LayerLink to this definition

Is é Layer fillteán do chiseal sonraí i réad DataSource. Ní chruthaíonn tú réad Layer go díreach riamh. Ina áit sin, aisghabhann tú iad ó a: class: DataSource réad, atá go bunúsach ina choimeádán caighdeánach Python de rudaí Layer`. Mar shampla, is féidir leat rochtain a fháil ar chiseal ar leith trína innéacs (m.sh. `ds [0] ``chun rochtain a fháil ar an gcéad chiseal), is féidir leat athrá thar na sraitheanna go léir sa choimeádán i lúb ``for. Feidhmíonn an Layer féin mar choimeádán do ghnéithe geoiméadracha.

De ghnáth, bíonn an cineál céanna céanna ag na gnéithe go léir i gciseal áirithe. Is é maoin: attr: geom_type ciseal ná: class: ogrGeomType a aithníonn an cineál gné. Is féidir linn é a úsáid chun roinnt faisnéise bunúsach a phriontáil faoi gach ciseal in a:class: DataSource:

Python console
>>> for layer in ds:
...     print('Layer "%s": %i %ss' % (layer.name, len(layer), layer.geom_type.name))
...
Layer "cities": 3 Points

Tá an t-aschur sampla ó fhoinse sonraí na gcathracha, luchtaithe thuas, ina léir go bhfuil ciseal amháin, ar a dtugtar ``"cathracha” ``, ina bhfuil trí ghné phointe ann. Ar mhaithe le simplíocht, glacann na samplaí thíos leis gur stóráil tú an ciseal sin san athróg ``sraith ``:

Python console
>>> layer = ds[0]
nameLink to this definition

Tugann ainm an chiseal seo ar ais san fhoinse sonraí.

Python console
>>> layer.name
'cities'
num_featLink to this definition

Tugann sé líon na ngnéithe sa chiseal ar ais. Mar an gcéanna le len (ciseal) `:

Python console
>>> layer.num_feat
3
geom_typeLink to this definition

Tugann sé cineál geoiméadrach an chiseal ar ais, mar réad: class: ogrGeomType:

Python console
>>> layer.geom_type.name
'Point'
num_fieldsLink to this definition

Tugann sé líon na réimsí sa chiseal ar ais, ie líon na réimsí sonraí a bhaineann le gach gné sa chiseal:

Python console
>>> layer.num_fields
4
fieldsLink to this definition

Tugann liosta ar ais d'ainmneacha gach ceann de na réimsí sa chiseal seo:

Python console
>>> layer.fields
['Name', 'Population', 'Density', 'Created']

Tugann liosta de na cineálacha sonraí gach ceann de na réimsí sa chiseal seo ar ais. Is fo-aicmí iad seo de Field, a phléitear thíos:

Python console
>>> [ft.__name__ for ft in layer.field_types]
['OFTString', 'OFTReal', 'OFTReal', 'OFTDate']
field_widthsLink to this definition

Tugann liosta de na leithead réimse uasta do gach ceann de na réimsí sa chiseal seo ar ais:

Python console
>>> layer.field_widths
[80, 11, 24, 10]
field_precisionsLink to this definition

Tugann liosta de na cruinneas uimhriúla ar ais do gach ceann de na réimsí sa chiseal seo. Tá sé seo gan brí (agus socraithe go nialas) do réimsí neamh-uimhriúla:

Python console
>>> layer.field_precisions
[0, 0, 15, 0]
extentLink to this definition

Tugann sé ar ais méid spásúil an chiseal seo, mar réad an:class: Envelope:

Python console
>>> layer.extent.tuple
(-104.609252, 29.763374, -95.23506, 38.971823)
srsLink to this definition

Maoin a thugann air:class: spatialReference a bhaineann leis an gciseal seo:

Python console
>>> print(layer.srs)
GEOGCS["GCS_WGS_1984",
    DATUM["WGS_1984",
        SPHEROID["WGS_1984",6378137,298.257223563]],
    PRIMEM["Greenwich",0],
    UNIT["Degree",0.017453292519943295]]

Mura bhfuil aon fhaisnéis tagartha spásúil ag an:class: Layer a bhaineann leis, cuirtear ``None ``ar ais.

spatial_filterLink to this definition

Maoin a d'fhéadfaí a úsáid chun scagaire spásúil a aisghabháil nó a shocrú don chiseal seo. Ní féidir scagaire spásúil a shocrú ach amháin le sampla: class: OgrGeometry, méid 4 tuipéil, nó None. Nuair a bheidh sé socraithe le rud éigin seachas ``None ``, ní thabharfar ach gnéithe a thrasnaíonn an scagaire ar ais agus iad ag athrú thar an gciseal:

Python console
>>> print(layer.spatial_filter)
None
>>> print(len(layer))
3
>>> [feat.get("Name") for feat in layer]
['Pueblo', 'Lawrence', 'Houston']
>>> ks_extent = (-102.051, 36.99, -94.59, 40.00)  # Extent for state of Kansas
>>> layer.spatial_filter = ks_extent
>>> len(layer)
1
>>> [feat.get("Name") for feat in layer]
['Lawrence']
>>> layer.spatial_filter = None
>>> len(layer)
3
get_fields()Link to this definition

Modh a thugann liosta de luachanna réimse ar leith ar fáil do gach gné sa chiseal:

Python console
>>> layer.get_fields("Name")
['Pueblo', 'Lawrence', 'Houston']
get_geoms(geos=False)Link to this definition

Modh a thugann liosta ar ais ina bhfuil geoiméadacht gach gné sa chiseal. Má tá an argóint roghnach geos socraithe go True ansin déantar na geoiméadrachtaí a thiontú go rudaí:class: ~django.contrib.gis.geos.geosgeometry. Seachas sin, cuirtear ar ais iad mar: class: ogrGeometry rudaí:

Python console
>>> [pt.tuple for pt in layer.get_geoms()]
[(-104.609252, 38.255001), (-95.23506, 38.971823), (-95.363151, 29.763374)]
test_capability(capability)Link to this definition

Returns a boolean indicating whether this layer supports the given capability (a string). Examples of valid capability strings include: 'RandomRead', 'SequentialWrite', 'RandomWrite', 'FastSpatialFilter', 'FastFeatureCount', 'FastGetExtent', 'CreateField', 'Transactions', 'DeleteFeature', and 'FastSetNextByIndex'.

GnéitheLink to this heading

class FeatureLink to this definition

Fillteann Feature gné OGR. Ní chruthaíonn tú réad Feature go díreach riamh. Ina áit sin, aisghabhann tú iad ó réad a: class: Layer. Is éard atá i ngach gné geoiméadracht agus sraith réimsí ina bhfuil airíonna breise. Tá geoiméadracht réimse inrochtana tríd a mhaoin geom, a thugann ruda:class: ogrGeometry ar ais. Iompraíonn Feature cosúil le coimeádán caighdeánach Python dá réimsí, a thugann sé ar ais mar ruda:class: Field: is féidir leat rochtain a fháil ar réimse go díreach trína innéacs nó ainm, nó is féidir leat athrá thar réimsí gné, m.sh. i lúb for`.

geomLink to this definition

Tugann sé an geoiméadracht don ghné seo ar ais, mar réad ``Ogrgeoiméadr`:

Python console
>>> city.geom.tuple
(-104.609252, 38.255001)
getLink to this definition

Modh a thugann luach an réimse tugtha ar ais (sonraithe de réir ainm) don ghné seo, réad fillte ``Réimse ``:

Python console
>>> city.get("Population")
102121
geom_typeLink to this definition

Tugann sé an cineál céimeadra don ghné seo ar ais, mar réad: class: ogrGeomType. Beidh sé seo mar an gcéanna do gach gné i gciseal ar leith agus tá sé coibhéiseach leis an maoin: attr: Layer.geom_TYPE den réad :class: Layer as a tháinig an ghné.

num_fieldsLink to this definition

Tugann sé líon na réimsí sonraí a bhaineann leis an ngné ar ais. Beidh sé seo mar an gcéanna do gach gné i gciseal ar leith agus tá sé coibhéiseach leis an maoin: attr: Layer.num_Fields den réad: Class: Layer as a tháinig an ghné.

fieldsLink to this definition

Tugann liosta ar ais d'ainmneacha na réimsí sonraí a bhaineann leis an ngné. Beidh sé seo mar an gcéanna do gach gné i gciseal ar leith agus tá sé coibhéiseach leis an maoin: attr: Layer.Fields den réad: Class: Layer as a tháinig an ghné.

fidLink to this definition

Tugann an t-aitheantas gné ar ais laistigh den chiseal:

Python console
>>> city.fid
0
layer_nameLink to this definition

Tugann ainm an: class: Layer as a tháinig an ghné ar ais. Beidh sé seo mar an gcéanna le haghaidh gach gné i gciseal ar leith:

Python console
>>> city.layer_name
'cities'
indexLink to this definition

Modh a thugann innéacs an ainm réimse tugtha ar ais. Beidh sé seo mar an gcéanna do gach gné i gciseal ar leith:

Python console
>>> city.index("Population")
1

RéimseLink to this heading

class FieldLink to this definition
nameLink to this definition

Tugann ainm an réimse seo ar ais:

Python console
>>> city["Name"].name
'Name'
typeLink to this definition

Tugann sé an cineál OGR den réimse seo ar ais, mar shláimhir. Déanann an foclóir FIELD_CLASSES` na luachanna seo a léarscáil ar fho-aicmí Field:

Python console
>>> city["Density"].type
2
type_nameLink to this definition

Tugann teaghrán ar ais le hainm an chineál sonraí an réimse seo:

Python console
>>> city["Name"].type_name
'String'
valueLink to this definition

Tugann luach an réimse seo ar ais. Tugann an rang Field féin an luach ar ais mar shreang, ach filleann gach fo-aicme an luach sa fhoirm is oiriúnaí:

Python console
>>> city["Population"].value
102121
widthLink to this definition

Tugann sé leithead an réimse seo ar ais:

Python console
>>> city["Name"].width
80
precisionLink to this definition

Tugann cruinneas uimhriúil an réimse seo ar ais. Tá sé seo gan brí (agus socraithe go nialas) do réimsí neamh-uimhriúla:

Python console
>>> city["Density"].precision
15
as_double()Link to this definition

Tugann luach an réimse ar ais mar dhúbailte (snámhphointe):

Python console
>>> city["Density"].as_double()
874.7
as_int()Link to this definition

Tugann luach an réimse ar ais mar shláimhir:

Python console
>>> city["Population"].as_int()
102121
as_string()Link to this definition

Tugann luach an réimse ar ais mar shreang:

Python console
>>> city["Name"].as_string()
'Pueblo'
as_datetime()Link to this definition

Tugann luach an réimse ar ais mar thiúpla de chomhpháirteanna dáta agus ama:

Python console
>>> city["Created"].as_datetime()
(c_long(1999), c_long(5), c_long(23), c_long(0), c_long(0), c_long(0), c_long(0))

TiománaLink to this heading

class Driver(dr_input)Link to this definition

Úsáidtear an rang Tiomána go hinmheánach chun tiománaí OGR:Class: DataSource a fhilleadh.

driver_countLink to this definition

Filleann líon na dtiománaithe veicteora OGR atá cláraithe faoi láthair.

Geoiméadrachtaí OGRLink to this heading

``Geoiméadracht ``Link to this heading

OGRGeometry objects share similar functionality with GEOSGeometry objects and are thin wrappers around OGR's internal geometry representation. Thus, they allow for more efficient access to data when using DataSource. Unlike its GEOS counterpart, OGRGeometry supports spatial reference systems and coordinate transformation:

Python console
>>> from django.contrib.gis.gdal import OGRGeometry
>>> polygon = OGRGeometry("POLYGON((0 0, 5 0, 5 5, 0 5))")
class OGRGeometry(geom_input, srs=None)Link to this definition

Is fillteán é an réad seo don rang Geoiméadracht OGR `__. Déantar na rudaí seo a thionscnamh go díreach ón bparaiméadar ``geom_input` a thugtar, ar d'fhéadfadh a bheith ina sreang ina bhfuil WKT, HEX, GeoJSON, maolán ``ina bhfuil sonraí WKB, nó ruda:class: `ogrGeomType. Cuirtear na rudaí seo ar ais freisin ón tréith: :class: Feature.geom, agus sonraí veicteora á léamh ó:class: Layer (atá ina chuid de a:class: DataSource).

classmethod from_gml(gml_string)Link to this definition

Tógann sé an:aicme: OgGeoiméadrach ón sreang GML tugtha.

classmethod from_bbox(bbox)Link to this definition

Tógann a: aicme: Polygon ón mbosca teorainn a thugtar (4-tuple).

__len__()Link to this definition

Tugann sé ar ais líon na bpointí in a:aicme: Linestring, líon na bhfáinní in a:aicme: Polygon, nó líon na ngeoiméadrachtaí in a:class: GeometryCollection. Ní bhaineann le cineálacha geoiméadrachta eile.

__iter__()Link to this definition

Athraigh thar na pointí in a: aicme: Linestring, na fáinní i a: aicme: Polygon, nó na geoiméadrachtaí in a:class: GeometryCollection. Ní bhaineann le cineálacha geoiméadrachta eile.

__getitem__()Link to this definition

Tugann an pointe ar ais ag an innéacs sonraithe le haghaidh a: aicme: LíneString, an fáinne istigh ag an innéacs sonraithe do a:class: Polygon, nó an geoiméadra ag an innéacs sonraithe in a:class: GeometryCollection. Ní bhaineann le cineálacha geoiméadrachta eile.

dimensionLink to this definition

Tugann sé líon toisí comhordaithe an ghéiméadrachta ar ais, ie 0 do phointí, 1 do línte, agus mar sin de:

Python console
>>> polygon.dimension
2
is_3dLink to this definition

Boolean a léiríonn an bhfuil comhordanáidí Z ag an gcéimseadra seo.

set_3d(value)Link to this definition

Modh a chuireann nó a bhaineann an toise comhordaithe Z.

Python console
>>> p = OGRGeometry("POINT (1 2 3)")
>>> p.is_3d
True
>>> p.set_3d(False)
>>> p.wkt
"POINT (1 2)"
is_measuredLink to this definition

Boolean a léiríonn an bhfuil comhordanáidí M ag an gcéimseadra seo.

set_measured(value)Link to this definition

Modh chun an toise comhordaithe M a chur leis nó a bhaint.

Python console
>>> p = OGRGeometry("POINT (1 2)")
>>> p.is_measured
False
>>> p.set_measured(True)
>>> p.wkt
"POINT M (1 2 0)"
geom_countLink to this definition

Tugann sé líon na n-eilimintí sa geoiméadra seo ar ais:

Python console
>>> polygon.geom_count
1
has_curveLink to this definition

A boolean indicating if this geometry is or contains a curve geometry.

get_linear_geometry()Link to this definition

Returns a linear version of the geometry. If no conversion can be made, the original geometry is returned.

get_curve_geometry()Link to this definition

Returns a curved version of the geometry. If no conversion can be made, the original geometry is returned.

point_countLink to this definition

Tugann sé líon na bpointí a úsáidtear chun cur síos a dhéanamh ar an geoiméad

Python console
>>> polygon.point_count
4
num_pointsLink to this definition

Alias le haghaidh: attr: point_count.

num_coordsLink to this definition

Alias le haghaidh: attr: point_count.

geom_typeLink to this definition

Tugann sé an cineál céimeadra seo ar ais, mar réad: class: ogrGeomType.

geom_nameLink to this definition

Tugann ainm an chineál céiméadra seo ar ais:

Python console
>>> polygon.geom_name
'POLYGON'
areaLink to this definition

Tugann sé limistéar an geoiméadra seo ar ais, nó 0 le haghaidh geoiméadraí nach bhfuil limistéar ann:

Python console
>>> polygon.area
25.0
envelopeLink to this definition

Tugann clúdach an ghéiméadracht seo ar ais, mar réad: aicme: Envelop.

extentLink to this definition

Tugann clúdach an ghéiméadracht seo ar ais mar 4-tuple, in ionad mar réad an:class: Envelope:

Python console
>>> point.extent
(0.0, 0.0, 5.0, 5.0)
srsLink to this definition

This property controls the spatial reference for this geometry, or None if no spatial reference system has been assigned to it. If assigned, accessing this property returns a SpatialReference object. It may be set with another SpatialReference object, or any input that SpatialReference accepts. Example:

Python console
>>> city.geom.srs.name
'GCS_WGS_1984'
sridLink to this definition

Returns or sets the spatial reference identifier corresponding to SpatialReference of this geometry. Returns None if there is no spatial reference information associated with this geometry, or if an SRID cannot be determined.

geosLink to this definition

Tuairisceáin a:class: ~django.contrib.gis.geos.geosgeometry réad a fhreagraíonn don ghéiméadracht seo.

gmlLink to this definition

Tugann sé léiriú teaghrán den ghéiméadracht seo ar ais i bhformáid GML:

Python console
>>> OGRGeometry("POINT(1 2)").gml
'<gml:Point><gml:coordinates>1,2</gml:coordinates></gml:Point>'
hexLink to this definition

Tugann sé léiriú teaghrán den ghéiméadracht seo ar ais i bhformáid HEX WKB:

Python console
>>> OGRGeometry("POINT(1 2)").hex
'0101000000000000000000F03F0000000000000040'
jsonLink to this definition

Filleann sé léiriú teaghrán den ghéimseata seo i bhformáid JSON:

Python console
>>> OGRGeometry("POINT(1 2)").json
'{ "type": "Point", "coordinates": [ 1.000000, 2.000000 ] }'
kmlLink to this definition

Filleann sé léiriú teaghrán den ghéiméadracht seo i bhformáid KML.

wkb_sizeLink to this definition

Tugann sé ar ais méid an maoláin WKB a theastaíonn chun léiriú WKB a shealbhú den ghéiméadracht seo:

Python console
>>> OGRGeometry("POINT(1 2)").wkb_size
21
wkbLink to this definition

Tugann sé “maolán” ar ais ina bhfuil léiriú WKB den ghéiméadracht seo.

wktLink to this definition

Filleann sé léiriú teaghrán den ghéiméadracht seo i bhformáid WKT.

ewktLink to this definition

Tugann ionadaíocht EWKT an geoiméadra seo ar ais.

clone()Link to this definition

Filleann clón nua:class: ogrGeometry den réad geoiméadrach seo.

close_rings()Link to this definition

Má tá aon fáinní laistigh den ghéiméadracht seo nár dúnadh, déanfaidh an gnáthamh seo amhlaidh tríd an bpointe tosaigh a chur leis an deireadh:

Python console
>>> triangle = OGRGeometry("LINEARRING (0 0,0 1,1 0)")
>>> triangle.close_rings()
>>> triangle.wkt
'LINEARRING (0 0,0 1,1 0,0 0)'
transform(coord_trans, clone=False)Link to this definition

Athraíonn sé an geoiméadracht seo go córas tagartha spásúil difriúil. Féadfaidh sé a: aicme: CoordTransform réad, a:class: SpatialReference a thógáil, nó aon ionchur eile a nglactar leis ar:class: SpatialReference (lena n-áirítear tagairt spásúil WKT agus teaghráin PROJ, nó SRID sláimhir).

De réir réamhshocraithe ní thugtar aon rud ar ais agus déantar an geoiméadracht a athrú go Mar sin féin, má tá an eochairfhocal clone socraithe go True ansin cuirtear clón claochlaithe den ghéimseadracht seo ar ais ina ionad.

intersects(other)Link to this definition

Tugann sé ar ais True má thrasnaíonn an geoiméadacht seo an ceann eile, ar shlí eile filleann sé False.

equals(other)Link to this definition

Tugann sé ar ais True má tá an geoiméadacht seo coibhéiseach leis an gceann eile, seachas sin filleann sé False.

disjoint(other)Link to this definition

Tugann sé ar ais True má tá an geoiméadacht seo dícheangailte go spásúil leis an gceann eile (i.e. ní thrasnaíonn sé), ar shlí eile filleann sé False.

touches(other)Link to this definition

Tugann sé True má chuireann an geoiméadacht seo i dteagmháil leis an gceann eile, seachas sin filleann sé False.

crosses(other)Link to this definition

Tugann sé ar ais True má thrasnaíonn an geoiméadacht seo an ceann eile, ar shlí eile filleann sé False.

within(other)Link to this definition

Tugann sé True má tá an geoiméadacht seo laistigh den chéad cheann eile, seachas sin filleann sé False.

contains(other)Link to this definition

Tugann sé True má tá an ceann eile sa geoiméadacht seo, ar shlí eile filleann sé False.

overlaps(other)Link to this definition

Tugann sé ar ais True má fhorluíonn an geoiméadacht seo an ceann eile, ar shlí eile filleann sé False.

boundary()Link to this definition

Teorainn an ghéiméadracht seo, mar réad nua:class: OgrGeometry.

convex_hullLink to this definition

An polagán doimhneach is lú ina bhfuil an geoiméadacht seo, mar réad nua:class: ogrGeometry.

difference()Link to this definition

Filleann sé an réigiún ina bhfuil difríocht an geoiméadra seo agus an ceann eile, mar réad nua:class: ogrGeometry.

intersection()Link to this definition

Tugann sé ar ais an réigiún ina bhfuil trasna an ghéiméadracht seo agus an ceann eile, mar réad nua:class: ogrGeometry.

sym_difference()Link to this definition

Tugann sé ar ais an réigiún ina bhfuil difríocht shioméadrach an ghéiméadracht seo agus an ceann eile, mar réad nua:class: ogrGeometry.

union()Link to this definition

Tugann sé ar ais an réigiún ina bhfuil aontas an geoiméadair seo agus an ceann eile, mar réad nua:class: ogrGeometry.

centroidLink to this definition

Tuairisceáin a: aicme: Point a léiríonn lárnach an geoiméadair seo.

tupleLink to this definition

Tugann comhordanáidí geoiméadracht pointe ar ais mar thiúpla, comhordanáidí céiméadra líne mar thiúpla de thiúpla, agus mar sin de:

Python console
>>> OGRGeometry("POINT (1 2)").tuple
(1.0, 2.0)
>>> OGRGeometry("LINESTRING (1 2,3 4)").tuple
((1.0, 2.0), (3.0, 4.0))
coordsLink to this definition

Ainm le haghaidh: attr: tuple.

class PointLink to this definition
xLink to this definition

Tugann comhordú X an phointe seo ar ais:

Python console
>>> OGRGeometry("POINT (1 2)").x
1.0
yLink to this definition

Tugann comhordú Y an phointe seo ar ais:

Python console
>>> OGRGeometry("POINT (1 2)").y
2.0
zLink to this definition

Tugann comhordú Z an phointe seo ar ais, nó None mura bhfuil comhordú Z ag an bpointe:

Python console
>>> OGRGeometry("POINT (1 2 3)").z
3.0
mLink to this definition

Tugann comhordú M an phointe seo ar ais, nó None mura bhfuil comhordú M ag an bPointe:

Python console
>>> OGRGeometry("POINT ZM (1 2 3 4)").m
4.0
class LineStringLink to this definition
xLink to this definition

Tugann liosta de chomhordanáidí X ar ais sa líne seo:

Python console
>>> OGRGeometry("LINESTRING (1 2,3 4)").x
[1.0, 3.0]
yLink to this definition

Tugann liosta de chomhordanáidí Y ar ais sa líne seo:

Python console
>>> OGRGeometry("LINESTRING (1 2,3 4)").y
[2.0, 4.0]
zLink to this definition

Tugann liosta de chomhordanáidí Z ar ais sa líne seo, nó ``None ``mura bhfuil comhordanáidí Z ag an líne:

Python console
>>> OGRGeometry("LINESTRING (1 2 3,4 5 6)").z
[3.0, 6.0]
mLink to this definition

Tugann liosta de chomhordanáidí M sa líne seo nó None mura bhfuil comhordanáidí M ag an líne:

Python console
>>> OGRGeometry("LINESTRING(0 1 2 10, 1 2 3 11, 2 3 4 12)").m
[10.0, 11.0, 12.0]
class PolygonLink to this definition
shellLink to this definition

Tugann an bhlaosc nó an fáinne taobh amuigh den pholagán seo ar ais, mar gheoiméadra Línear.

exterior_ringLink to this definition

Ainm le haghaidh: attr: shell.

class GeometryCollectionLink to this definition
add(geom)Link to this definition

Cuireann sé geoiméadra leis an mbailiúchán geoiméad Ní bhaineann le cineálacha geoiméadrachta eile.

OgrGeomTypeLink to this heading

class OGRGeomType(type_input)Link to this definition

Ceadaíonn an rang seo cineál geoiméadrachta OGR a léiriú ar aon cheann de bhealaí éagsúla:

Python console
>>> from django.contrib.gis.gdal import OGRGeomType
>>> gt1 = OGRGeomType(3)  # Using an integer for the type
>>> gt2 = OGRGeomType("Polygon")  # Using a string
>>> gt3 = OGRGeomType("POLYGON")  # It's case-insensitive
>>> print(gt1 == 3, gt1 == "Polygon")  # Equivalence works w/non-OGRGeomType objects
True True
nameLink to this definition

Tugann foirm teaghrán gearr-láimhe de chineál Geoimseachta OGR ar ais:

Python console
>>> gt1.name
'Polygon'
numLink to this definition

Tugann an uimhir a fhreagraíonn don chineál geoiméadachta OGR ar ais:

Python console
>>> gt1.num
3
djangoLink to this definition

Filleann sé cineál réimse Django (fo-aicme de GeometryField) le húsáid chun an cineál OGR seo a stóráil, nó ``None ``mura bhfuil aon chineál Django oiriúnach ann:

Python console
>>> gt1.django
'PolygonField'

`ImbléadLink to this heading

class Envelope(*args)Link to this definition

Léiríonn sé struchtúr Clúdach OGR ina bhfuil na comhordanáidí X, Y íosta agus uasta do bhosca teorainn dronuilleogach. Tá ainmniú na n-athróg comhoiriúnach le struchtúr Clúdach OGR C.

min_xLink to this definition

Luach an chomhordaithe X íosta.

min_yLink to this definition

Luach an chomhordaithe X uasta.

max_xLink to this definition

Luach an chomhordaithe íosta Y.

max_yLink to this definition

Luach an chomhordaithe uasta Y.

urLink to this definition

An comhordú uachtarach ar dheis, mar tuple.

llLink to this definition

An comhordú ar chlé íochtarach, mar chlúdach.

tupleLink to this definition

Tuple a léiríonn an clúdach.

wktLink to this definition

Sreang a léiríonn an clúdach seo mar pholgún i bhformáid WKT.

expand_to_include(*args)Link to this definition

Rudaí Córais ComhordaitheLink to this heading

Tagairt spáisLink to this heading

class SpatialReference(srs_input)Link to this definition

Cuirtear rudaí tagartha spásúla a thionscnamh ar an srs_input` a thugtar, a d'fhéadfadh a bheith ar cheann de na nithe seo a leanas:

  • Téacs Aitheanta OGC (WKT) (sreang)

  • Cód EPSG (sláimhir nó sreang)

  • Proj teaghrán

  • Teagán gearrthréimhe do chaighdeáin aitheanta ('WGS84', WGS72'`, ``NAD27'`, ``NAD83')

Sampla:

Python console
>>> wgs84 = SpatialReference("WGS84")  # shorthand string
>>> wgs84 = SpatialReference(4326)  # EPSG code
>>> wgs84 = SpatialReference("EPSG:4326")  # EPSG string
>>> proj = "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs "
>>> wgs84 = SpatialReference(proj)  # PROJ string
>>> wgs84 = SpatialReference("""GEOGCS["WGS 84",
... DATUM["WGS_1984",
...      SPHEROID["WGS 84",6378137,298.257223563,
...          AUTHORITY["EPSG","7030"]],
...      AUTHORITY["EPSG","6326"]],
... PRIMEM["Greenwich",0,
...      AUTHORITY["EPSG","8901"]],
... UNIT["degree",0.01745329251994328,
...      AUTHORITY["EPSG","9122"]],
... AUTHORITY["EPSG","4326"]]""")  # OGC WKT
__getitem__(target)Link to this definition

Tugann sé luach an nód tréith teaghrán a thugtar, ``None ``mura bhfuil an nód ann. Is féidir le tuple a ghlacadh mar pharaiméadar freisin, (sprioc, leanbh), áit a bhfuil an leanbh innéacs an tréith sa WKT. Mar shampla:

Python console
>>> wkt = 'GEOGCS["WGS 84", DATUM["WGS_1984, ... AUTHORITY["EPSG","4326"]]'
>>> srs = SpatialReference(wkt)  # could also use 'WGS84', or 4326
>>> print(srs["GEOGCS"])
WGS 84
>>> print(srs["DATUM"])
WGS_1984
>>> print(srs["AUTHORITY"])
EPSG
>>> print(srs["AUTHORITY", 1])  # The authority value
4326
>>> print(srs["TOWGS84", 4])  # the fourth value in this wkt
0
>>> print(srs["UNIT|AUTHORITY"])  # For the units authority, have to use the pipe symbol.
EPSG
>>> print(srs["UNIT|AUTHORITY", 1])  # The authority value for the units
9122
attr_value(target, index=0)Link to this definition

An luach tréithe don spriocnód tugtha (m.sh. ``PROJCS'`). Sonraíonn an eochairfhocal innéacs den nód linbh le filleadh.

auth_name(target)Link to this definition

Tugann ainm an údaráis ar ais don sprioc-nód sreangán a thugtar.

auth_code(target)Link to this definition

Tugann an cód údaráis ar ais don sprioc-nód sreangán a thugtar.

clone()Link to this definition

Tugann clón den réad tagartha spásúil seo ar ais.

identify_epsg()Link to this definition

Déanann an modh seo iniúchadh ar WKT an SpatialReference seo agus cuirfidh sé nóid údaráis EPSG leis nuair a bhíonn aitheantóir EPSG infheidhme.

from_esri()Link to this definition

Déanann an Tagairt spásúil seo a mhorgáil ó fhormáid ESRI go EPSG

to_esri()Link to this definition

Morphaíonn an spásúil seoTagairt d'fhormáid ESRI.

validate()Link to this definition

Seiceálacha chun a fháil amach an bhfuil an tagairt spásúil a thugtar bailí, mura n-ardófar eisceacht.

import_epsg(epsg)Link to this definition

Tagairt spásúil a iompórtáil ó chód EPSG.

import_proj(proj)Link to this definition

Tagairt spásúil a iompórtáil ó sreang PROJ.

import_user_input(user_input)Link to this definition
import_wkt(wkt)Link to this definition

Tagairt spásúil a iompórtáil ó WKT.

import_xml(xml)Link to this definition

Tagairt spásúil a iompórtáil ó XML.

nameLink to this definition

Tugann ainm an Tagartha Spásúil seo ar ais.

sridLink to this definition

Tugann an SRID d'údarás barrleibhéil ar ais, nó None mura bhfuil sainmhínithe.

linear_nameLink to this definition

Tugann ainm na n-aonad líneach ar ais.

linear_unitsLink to this definition

Tugann luach na n-aonad líneach ar ais.

angular_nameLink to this definition

Tugann ainm na n-aonad uilleach ar ais.”

angular_unitsLink to this definition

Tugann luach na n-aonad uilleach ar ais.

unitsLink to this definition

Filleann sé 2-tuple de luach na haonaid agus ainm na n-aonaid agus cinneoidh sé go huathoibríoch an gcuirfear na haonaid líneacha nó uilleacha ar ais.

ellipsoidLink to this definition

Filleann sé tuple de na paraiméadair ellipsoid don tagairt spásúil seo: (ais semimajor, ais semiminor, agus comhréiteach inbhéartha).

semi_majorLink to this definition

Filleann ais leathmhór an ellipsoid don tagairt spásúil seo.

semi_minorLink to this definition

Filleann ais leathbheag an ellipsoid don tagairt spásúil seo.

inverse_flatteningLink to this definition

Tugann sé comhréiteach inbhéartha an ellipsoid ar ais don tagairt spásúil seo.

geographicLink to this definition

Tugann sé ar ais True má tá an tagairt spásúil seo geografach (is é `GEOGCS ``fréimhnód).

localLink to this definition

Tugann sé ar ais True má tá an tagairt spásúil seo áitiúil (is é LOCAL_CS` fréimhe ná LOCAL_CS).

projectedLink to this definition

Tugann sé ar ais True más córas comhordaithe réamh-mheasta é an tagairt spásúil seo (is é `PROJCS ``nód fréimhe).

wktLink to this definition

Tugann sé ionadaíocht WKT ar an tagairt spásúil seo ar ais.

pretty_wktLink to this definition

Tugann sé ionadaíocht 'deas' an WKT ar ais.

projLink to this definition

Tugann sé ionadaíocht PROJ ar ais don tagairt spásúil seo.

proj4Link to this definition

Alias le haghaidh: attr: spatialReference.proj.

xmlLink to this definition

Tugann sé ionadaíocht XML an tagartha spásúil seo ar ais.

CoordTransformLink to this heading

class CoordTransform(source, target)Link to this definition

Léiríonn sé athrú córais chomhordaithe. Tosaítear é le dhá: aicme: SpatialReference, a léiríonn na córais comhordaithe foinse agus spriocchórais, faoi seach. Ba chóir na rudaí seo a úsáid agus an claochlú comhordaithe céanna á ndéanamh arís agus arís eile ar geoiméadraí

Python console
>>> ct = CoordTransform(SpatialReference("WGS84"), SpatialReference("NAD83"))
>>> for feat in layer:
...     geom = feat.geom  # getting clone of feature geometry
...     geom.transform(ct)  # transforming
...

Cuspóirí Sonraí RasterLink to this heading

GdalrasterLink to this heading

GDALRaster is a wrapper for the GDAL raster source object that supports reading data from a variety of GDAL-supported geospatial file formats and data sources using a consistent interface. Each data source is represented by a GDALRaster object which contains one or more layers of data named bands. Each band, represented by a GDALBand object, contains georeferenced image data. For example, an RGB image is represented as three bands: one for red, one for green, and one for blue.

class GDALRaster(ds_input, write=False)Link to this definition

Glacann an tógálaí le haghaidh Gdalraster dhá pharaiméadar. Sainmhíníonn an chéad pharaiméadar an fhoinse raster, agus sainmhíníonn an dara paraiméadar an gcaithfear raster a oscailt i mód scríbhneoireachta. Maidir le rasters nua-chruthaithe, déantar neamhaird ar an dara paraiméadar agus cruthaítear an raster nua i gcónaí i mód scríbhneoireachta.

Is féidir leis an gcéad pharaiméadar trí fhoirm a ghlacadh: teaghrán nó:class: ~pathlib.path a léiríonn cosán comhaid (córas comhaid nó córas comhaid fíorúil GDAL), foclóir le luachanna a shainníonn raster nua, nó réad beáit a léiríonn comhad raster.

Más cosán comhad é an t-ionchur, osclaítear an raster as sin. Más sonraí amh i bhfoclóir iad an t-ionchur, teastaíonn na paraiméadair leithead`, `airde, agus srid. Más réad bytes é an t-ionchur, osclófar é ag baint úsáide as córas comhaid fíorúil GDAL.

Le haghaidh tuairisc mhionsonraithe ar conas rasters a chruthú ag baint úsáide as ionchur foclóra, féach:ref: gdal-raster-ds-input. Le haghaidh tuairisc mhionsonraithe ar conas rasters a chruthú sa chóras comhaid fíorúil, féach:ref: gdal-raster-vsimem.

Taispeánann an sampla seo a leanas conas is féidir rasters a chruthú ó fhoinsí ionchuir éagsúla (ag baint úsáide as na sonraí samplacha ó na tástálacha GeoDjango; féach freisin roinn:ref: gdal_sample_data).

Python console
>>> from django.contrib.gis.gdal import GDALRaster
>>> rst = GDALRaster("/path/to/your/raster.tif", write=False)
>>> rst.name
'/path/to/your/raster.tif'
>>> rst.width, rst.height  # This file has 163 x 174 pixels
(163, 174)
>>> rst = GDALRaster(
...     {  # Creates an in-memory raster
...         "srid": 4326,
...         "width": 4,
...         "height": 4,
...         "datatype": 1,
...         "bands": [
...             {
...                 "data": (2, 3),
...                 "offset": (1, 1),
...                 "size": (2, 2),
...                 "shape": (2, 1),
...                 "nodata_value": 5,
...             }
...         ],
...     }
... )
>>> rst.srs.srid
4326
>>> rst.width, rst.height
(4, 4)
>>> rst.bands[0].data()
array([[5, 5, 5, 5],
       [5, 2, 3, 5],
       [5, 2, 3, 5],
       [5, 5, 5, 5]], dtype=uint8)
>>> rst_file = open("/path/to/your/raster.tif", "rb")
>>> rst_bytes = rst_file.read()
>>> rst = GDALRaster(rst_bytes)
>>> rst.is_vsi_based
True
>>> rst.name  # Stored in a random path in the vsimem filesystem.
'/vsimem/da300bdb-129d-49a8-b336-e410a9428dad'
nameLink to this definition

Ainm na foinse atá coibhéiseach leis an gcosán comhaid ionchuir nó an t-ainm a chuirtear ar fáil nuair a chuirtear isteach.

Python console
>>> GDALRaster({"width": 10, "height": 10, "name": "myraster", "srid": 4326}).name
'myraster'
driverLink to this definition

Ainm an tiománaí GDAL a úsáidtear chun an comhad ionchuir a láimhseáil. Maidir le Gdalrasters a cruthaíodh ó chomhad, braithtear an cineál tiománaí go huathoibríoch. Is raster in-chuimhne é cruthú rasters ón tús de réir réamhshocraithe (MEM'), ach is féidir é a athrú de réir mar is gá. Mar shampla, bain úsáid as GTIFF le haghaidh comhad GeoTiff. Le haghaidh liosta de chineálacha comhaid, féach freisin an liosta `GDAL Raster Formats`__.

Cruthaítear raster in-chuimhne tríd an sampla seo a leanas:

Python console
>>> GDALRaster({"width": 10, "height": 10, "srid": 4326}).driver.name
'MEM'

Cruthaítear raster GeoTIFF bunaithe ar chomhad tríd an sampla seo a leanas:

Python console
>>> import tempfile
>>> rstfile = tempfile.NamedTemporaryFile(suffix=".tif")
>>> rst = GDALRaster(
...     {
...         "driver": "GTiff",
...         "name": rstfile.name,
...         "srid": 4326,
...         "width": 255,
...         "height": 255,
...         "nr_of_bands": 1,
...     }
... )
>>> rst.name
'/tmp/tmp7x9H4J.tif'           # The exact filename will be different on your computer
>>> rst.driver.name
'GTiff'
widthLink to this definition

Leithead na foinse i bpicteilíní (X-ais).

Python console
>>> GDALRaster({"width": 10, "height": 20, "srid": 4326}).width
10
heightLink to this definition

Airde na foinse i bpicteilíní (ais Y).

Python console
>>> GDALRaster({"width": 10, "height": 20, "srid": 4326}).height
20
srsLink to this definition

Córas tagartha spásúil an raster, mar shampla a:class: SpatialReference. Is féidir an SRS a athrú tríd é a shocrú go dtí: class: SpatialReference eile nó aon ionchur a ghlacann an tógálaí:class: SpatialReference a sholáthar.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.srs.srid
4326
>>> rst.srs = 3086
>>> rst.srs.srid
3086
sridLink to this definition

Aitheantóir an Chórais Tagartha Spásúil (SRID) an raster. Is aicearra í an maoin seo chun an SRID a fháil nó a shocrú tríd an tréith: attr: srs.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.srid
4326
>>> rst.srid = 3086
>>> rst.srid
3086
>>> rst.srs.srid  # This is equivalent
3086
geotransformLink to this definition

Úsáidtear an maitrís claochlaithe affine chun an fhoinse a ghearradh, mar thiúpla de sé chomhéifeacht a mhapálann comhordanáidí picteilín/líne isteach i spás georeferencithe ag baint úsáide as an gcaidreamh seo a leanas:

Code
Xgeo = GT(0) + Xpixel * GT(1) + Yline * GT(2)
Ygeo = GT(3) + Xpixel * GT(4) + Yline * GT(5)

Is féidir na luachanna céanna a aisghabháil trí rochtain a fháil ar airíonna: attr: origin (innéacsanna 0 agus 3), :attr: scale (innéacsanna 1 agus 5) agus:attr: sque (innéacsanna 2 agus 4).

Is é an réamhshocrú [0.0, 1.0, 0.0, 0.0, 0.0, -1.0].

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.geotransform
[0.0, 1.0, 0.0, 0.0, 0.0, -1.0]
originLink to this definition

Comhordanáidí bunús barr ar chlé an raster i gcóras tagartha spásúil na foinse, mar réad pointe le baill x agus y.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.origin
[0.0, 0.0]
>>> rst.origin.x = 1
>>> rst.origin
[1.0, 0.0]
scaleLink to this definition

Leithead agus airde picteilín a úsáidtear chun an raster a gheoreferenciú, mar réad pointe le baill x agus y. Féach: attr: geotransform le haghaidh tuilleadh faisnéise.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.scale
[1.0, -1.0]
>>> rst.scale.x = 2
>>> rst.scale
[2.0, -1.0]
skewLink to this definition

Comhéifeachtaí sceitheacha a úsáidtear chun an raster a ghearradh, mar réad pointe le baill x agus y. I gcás íomhánna ó thuaidh suas, is iad na comhéifeachtaí seo 0.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.skew
[0.0, 0.0]
>>> rst.skew.x = 3
>>> rst.skew
[3.0, 0.0]
extentLink to this definition

Méid (luachanna teorann) na foinse raster, mar 4-tupól (xmin, ymin, xmax, ymax) i gcóras tagartha spásúil na foinse.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.extent
(0.0, -20.0, 10.0, 0.0)
>>> rst.origin.x = 100
>>> rst.extent
(100.0, -20.0, 110.0, 0.0)
bandsLink to this definition

Liosta de na bandaí go léir den fhoinse, mar shama:class: GdalBand cásanna.

Python console
>>> rst = GDALRaster(
...     {
...         "width": 1,
...         "height": 2,
...         "srid": 4326,
...         "bands": [{"data": [0, 1]}, {"data": [2, 3]}],
...     }
... )
>>> len(rst.bands)
2
>>> rst.bands[1].data()
array([[ 2.,  3.]], dtype=float32)
warp(ds_input, resampling='NearestNeighbour', max_error=0.0)Link to this definition

Tugann sé leagan chearrtha den raster seo ar ais.

Is féidir na paraiméadair warping a shonrú tríd an argóint ds_input`. Tá úsáid ds_input cosúil leis an argóint chomhfhreagrach de thógálaí an aicme. Is foclóir é le tréithe an sprioc-raster. Is iad príomhluachanna foclóra ceadaithe ná leithead, airde, SRID, bunús, scála, scála, cineál sonraí, tiománaí, agus ainm (ainm comhaid).

De réir réamhshocraithe, coinníonn na feidhmeanna warp an chuid is mó de na paraiméadair cothrom le luachanna an raster foinse bunaidh, mar sin ní gá ach paraiméadair ba chóir a athrú a shonrú. Tabhair faoi deara go n-áirítear leis seo an tiománaí, mar sin do rasters comhadbhunaithe cruthóidh an fheidhm warp raster nua ar dhiosca.

Is é an t-aon pharaiméadar atá socraithe ar bhealach difriúil ón raster foinse ná an t-ainm. Is é luach réamhshocraithe an ainm raster ainm an raster foinse atá curtha leis '_copy'+source_driver_name. Maidir le rasters comhadbhunaithe moltar cosán comhaid an sprioc-raster a sholáthar.

Is féidir an algartam athshamplála a úsáidtear le haghaidh warping a shonrú leis an argóint athshampling. Is é an réamhshocraithe Comharsanacht is gaire, agus is iad na luachanna ceadaithe eile Bilinear, Cubic`, Cubicspline`, Lanczos`, Meán`, agus Mod.

Is féidir an argóint max_error` a úsáid chun an earráid uasta a thomhaistear i bpicteilíní ionchuir a cheadaítear chun an claochlú a chomhshonrú a shonrú. Is é an réamhshocrú 0.0 le haghaidh ríomhanna cruinne.

Maidir le húsáideoirí atá eolach ar GDAL, tá feidhmiúlacht chosúil ag an bhfeidhm seo leis an bhfóntais líne ordaithe gdalwarp.

Mar shampla, is féidir an fheidhm warp a úsáid chun raster a chomhiomlánú go dúbailte a scála picteilín bunaidh:

Python console
>>> rst = GDALRaster(
...     {
...         "width": 6,
...         "height": 6,
...         "srid": 3086,
...         "origin": [500000, 400000],
...         "scale": [100, -100],
...         "bands": [{"data": range(36), "nodata_value": 99}],
...     }
... )
>>> target = rst.warp({"scale": [200, -200], "width": 3, "height": 3})
>>> target.bands[0].data()
array([[  7.,   9.,  11.],
       [ 19.,  21.,  23.],
       [ 31.,  33.,  35.]], dtype=float32)
transform(srs, driver=None, name=None, resampling='NearestNeighbour', max_error=0.0)Link to this definition

Déanann an raster seo a athrú go córas tagartha spásúil difriúil (srs`), a d'fhéadfadh a bheith ina réad a:class: SpatialReference, nó aon ionchur eile a nglactar leis ar:class: SpatialReference (lena n-áirítear tagairt spásúil WKT agus PROJ, nó SRID sláimhir).

Ríomhann sé teorainneacha agus scála an raster reatha sa chóras tagartha spásúil nua agus cuireann sé an raster ag baint úsáide as an bhfeidhm: attr: ~gdalraster.warp.

De réir réamhshocraithe, úsáidtear tiománaí an raster foinse agus is é ainm an raster an t-ainm bunaidh atá curtha leis '_copy'+source_driver_name. Is féidir tiománaí nó ainm difriúil a shonrú leis na hargóintí tiomána agus ``ainm ``.

Is é an algartam athshamplú réamhshocraithe NearestNeighbour' ach is féidir é a athrú ag baint úsáide as an argóint ``athshampling. Is é 0.0 an earráid réamhshocraithe a cheadaítear le haghaidh athshamplú agus is féidir é a athrú ag baint úsáide as an argóint max_error. Téigh i gcomhairle le cáipéisíocht: attr: ~gdalraster.warp le haghaidh mionsonraí faoi na hargóintí sin.

Python console
>>> rst = GDALRaster(
...     {
...         "width": 6,
...         "height": 6,
...         "srid": 3086,
...         "origin": [500000, 400000],
...         "scale": [100, -100],
...         "bands": [{"data": range(36), "nodata_value": 99}],
...     }
... )
>>> target_srs = SpatialReference(4326)
>>> target = rst.transform(target_srs)
>>> target.origin
[-82.98492744885776, 27.601924753080144]
infoLink to this definition

Tugann teaghrán ar ais le achoimre ar an raster. Tá sé seo comhionann leis an bhfóntais líne ordaithe `gdalinfo`__.

metadataLink to this definition

Meiteashonraí an raster seo, a léirítear mar fhoclóir neadaithe. Is é an eochair chéad leibhéil an fearainn meiteashonraí. Tá ainmneacha agus luachanna na míreanna meiteashonraí ó gach fearann sa dara leibhéal.

Chun mír meiteashonraí a shocrú nó a nuashonrú, cuir an mír meiteashonraí comhfhreagrach ar an modh ag baint úsáide as an struchtúr neadaithe Ní dhéantar ach eochracha atá sa bhfoclóir sonraithe a nuashonrú; fanann an chuid eile de na meiteashonraí gan athrú.

Chun mír meiteashonraí a bhaint, bain úsáid as None mar an luach meiteashonraí.

Python console
>>> rst = GDALRaster({"width": 10, "height": 20, "srid": 4326})
>>> rst.metadata
{}
>>> rst.metadata = {"DEFAULT": {"OWNER": "Django", "VERSION": "1.0"}}
>>> rst.metadata
{'DEFAULT': {'OWNER': 'Django', 'VERSION': '1.0'}}
>>> rst.metadata = {"DEFAULT": {"OWNER": None, "VERSION": "2.0"}}
>>> rst.metadata
{'DEFAULT': {'VERSION': '2.0'}}
vsi_bufferLink to this definition

Léiriú bytes den raster seo. Tugann sé “None” ar ais do rastróirí nach stóráiltear i gcóras comhaid fíorúil GDAL.

is_vsi_basedLink to this definition

Boolean a léiríonn an bhfuil an raster seo stóráilte i gcóras comhaid fíorúil GDAL.

GdalbandLink to this heading

class GDALBandLink to this definition

Ní chruthaítear cásanna GdalBand go sainráite, ach a fhaightear ó a: class: GdalRaster réad, trínaí:attr: ~gdalraster.bands tréith. Tá luachanna picteilín iarbhír an raster sna GDALBands.

descriptionLink to this definition

Ainm nó cur síos ar an mbanna, más ann.

widthLink to this definition

Leithead an bhanda i bpicteilíní (X-ais).

heightLink to this definition

Airde an bhanda i bpicteilíní (ais Y).

pixel_countLink to this definition

An líon iomlán na bpicteilíní sa bhanda seo. Tá sé comhionann le ``leithead* airde ``.

statistics(refresh=False, approximate=False)Link to this definition

Ríomh staitisticí ar luachanna picteilín an bhanda seo. Is é an luach tuairisceáin ná tiúpla leis an struchtúr seo a leanas: (íosta, uasmhéid, meán, diall caighdeánach).

Má shocraítear an argóint thart ``True, féadfar na staitisticí a ríomh bunaithe ar léargas nó ar fho-thacar tíleanna íomhá.

Má shocraítear an argóint refresh ``go `True, ríomhfar na staitisticí ó na sonraí go díreach, agus déanfar an taisce a nuashonrú leis an toradh.

Má aimsítear luach taisce leanúnach, cuirtear an luach sin ar ais. Maidir le formáidí raster a úsáideann seirbhísí Meiteashonraí Cúnta Marthanacha (PAM), d'fhéadfadh na staitisticí a stóráil i gcomhad cúnta. I gcásanna áirithe d'fhéadfadh an meiteashonraí seo a bheith as comhshoncronú leis na luachanna picteilín nó go gcuirfí faoi deara luachanna ó ghlao roimhe seo a thabhairt ar ais nach léiríonn luach na hargóintí ``thart ``. I gcásanna den sórt sin, bain úsáid as an argóint ``refresh ``chun luachanna nuashonraithe a fháil agus iad a stóráil sa taisce.

Maidir le bandaí folmha (áit nach “aon sonraí” iad na luachanna picteilín go léir), cuirtear gach staitisticí ar ais mar ``None ``.

Is féidir na staitisticí a aisghabháil go díreach freisin trí rochtain a fháil ar airíonna: attr: min, :attr: max, :attr: mean, agus:attr: std.

minLink to this definition

Luach picteilín íosta an bhanda (gan an luach “gan sonraí” a áireamh).

maxLink to this definition

Luach picteilín uasta an bhanda (gan an luach “gan sonraí” a áireamh).

meanLink to this definition

Meán luachanna picteilín uile an bhanda (gan an luach “gan sonraí” a áireamh).

stdLink to this definition

Diall caighdeánach luachanna picteilín uile an bhanda (gan an luach “gan sonraí” a áireamh).

nodata_valueLink to this definition

De ghnáth is luach marcóra speisialta é an luach “gan sonraí” do bhanda a úsáidtear chun picteilíní nach sonraí bailí iad a mharcáil. De ghnáth níor chóir picteilíní den sórt sin a thaispeáint, ná cur le hoibríochtaí an

Chun luach “gan sonraí” atá ann cheana a scriosadh, socraigh an maoin seo go None.

datatype(as_string=False)Link to this definition

An cineál sonraí atá sa bhanda, mar shlámhshláir tairiseach idir 0 (Anaithnid) agus 14. Más é as_string True, cuirtear an cineál sonraí ar ais mar shreang. <gdal-raster-datatype>Amharc ar an gcolún “GDAL Pixel Type” sa tábla luacha:ref: datetype luach le haghaidh luachanna féideartha.

color_interp(as_string=False)Link to this definition

The color interpretation for the band, as an integer between 0 and 16. If as_string is True, the data type is returned as a string with the following possible values: GCI_Undefined, GCI_GrayIndex, GCI_PaletteIndex, GCI_RedBand, GCI_GreenBand, GCI_BlueBand, GCI_AlphaBand, GCI_HueBand, GCI_SaturationBand, GCI_LightnessBand, GCI_CyanBand, GCI_MagentaBand, GCI_YellowBand, GCI_BlackBand, GCI_YCbCr_YBand, GCI_YCbCr_CbBand, and GCI_YCbCr_CrBand. GCI_YCbCr_CrBand also represents GCI_Max because both correspond to the integer 16, but only GCI_YCbCr_CrBand is returned as a string.

data(data=None, offset=None, size=None, shape=None)Link to this definition

An rochtain ar luachanna picteilín an Gdalband. Filleann sé an sraith sonraí iomlán mura gcuirtear aon pharaiméadair ar fáil. Is féidir fo-thacar den eagar picteilín a iarraidh trí fhritháireamh agus méid bloc a shonrú mar thiúpla.

Má tá NumPy ar fáil, cuirtear na sonraí ar ais mar eagar NumPy. Ar chúiseanna feidhmíochta, moltar go mór NumPy a úsáid.

Scríobhtar sonraí chuig an Gdalband` má chuirtear an paraiméadar sonraí ``ar fáil. Is féidir leis an ionchur a bheith ar cheann de na cineálacha seo a leanas - sreang pacáilte, maolán, liosta, eagar, agus eagar NumPy. Ba chóir go bhfreagraíonn líon na míreanna san ionchur de ghnáth do líon iomlán na bpicteilín sa bhanda, do líon na bpicteilíní le haghaidh bloc sonrach luachanna picteilín sholáthraítear na paraiméadair ``offset agus ``méide`.

Má tá líon na míreanna san ionchur difriúil ón mbloc picteilín sprioc, caithfear an paraiméadar ``cruth` a shonrú. Is tuple é an cruth a shonraíonn leithead agus airde na sonraí ionchuir i bpicteilíní. Déantar na sonraí a mhacasamhlú ansin chun luachanna picteilín an bhloc roghnaithe a nuashonrú. Tá sé seo úsáideach chun banna iomlán a líonadh le luach amháin, mar shampla.

Mar shampla:

Python console
>>> rst = GDALRaster(
...     {"width": 4, "height": 4, "srid": 4326, "datatype": 1, "nr_of_bands": 1}
... )
>>> bnd = rst.bands[0]
>>> bnd.data(range(16))
>>> bnd.data()
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]], dtype=int8)
>>> bnd.data(offset=(1, 1), size=(2, 2))
array([[ 5,  6],
       [ 9, 10]], dtype=int8)
>>> bnd.data(data=[-1, -2, -3, -4], offset=(1, 1), size=(2, 2))
>>> bnd.data()
array([[ 0,  1,  2,  3],
       [ 4, -1, -2,  7],
       [ 8, -3, -4, 11],
       [12, 13, 14, 15]], dtype=int8)
>>> bnd.data(data="\x9d\xa8\xb3\xbe", offset=(1, 1), size=(2, 2))
>>> bnd.data()
array([[  0,   1,   2,   3],
       [  4, -99, -88,   7],
       [  8, -77, -66,  11],
       [ 12,  13,  14,  15]], dtype=int8)
>>> bnd.data([1], shape=(1, 1))
>>> bnd.data()
array([[1, 1, 1, 1],
       [1, 1, 1, 1],
       [1, 1, 1, 1],
       [1, 1, 1, 1]], dtype=uint8)
>>> bnd.data(range(4), shape=(1, 4))
array([[0, 0, 0, 0],
       [1, 1, 1, 1],
       [2, 2, 2, 2],
       [3, 3, 3, 3]], dtype=uint8)
metadataLink to this definition

Meiteashonraí an bhanda seo. Tá an fheidhmiúlacht comhionann len:attr: gdalraster.metadata.

Rasters a chruthú ó shonraíLink to this heading

Déanann an chuid seo cur síos ar conas rasters a chruthú ón tús ag baint úsáide as an paraiméadar ds_input.

Cruthaítear raster nua nuair a chuirtear dict chuig an tógálaí:class: GdalRaster. Tá paraiméadair shainmhínithe an raster nua sa fhoclóir, amhail an tionscnamh, méid nó an córas tagartha spásúil. Is féidir sonraí picteilín agus faisnéis faoi fhormáid an raster nua a bheith san fhoclóir freisin. Dá bhrí sin is féidir leis an raster atá mar thoradh air a bheith bunaithe ar chomhad nó cuimhne, ag brath ar an tiománaí a shonraítear.

Níl aon chaighdeán ann chun cur síos a dhéanamh ar shonraí raster i bhfoclóir nó i mblas JSON. Dá bhrí sin tá an sainmhíniú ar ionchur an fhoclóra chuig aicme:class: GdalRaster go sonrach do Django. Tá sé spreagtha ag an bhformáid `geojson`__, ach tá an caighdeán geojson teoranta faoi láthair do fhormáidí veicteora.

Is féidir samplaí de úsáid na heochracha éagsúla agus rasters á gcruthú agat a fháil i ndoiciméadú na dtréithe agus na modhanna comhfhreagracha de na haicm:class: GdalRaster agus:class: GdalBand.

An foclóir ds_inputLink to this heading

Níl ach cúpla eochair ag teastáil sa fhoclóir ds_input chun raster a chruthú: leithead, aird`, agus srid. Tá luachanna réamhshocraithe ag gach paraiméadar eile (féach an tábla thíos). Tá dlúthbhaint ag liosta na n-eochracha is féidir a rith sa fhoclóir ds_input` ach níl siad comhionann leis na hairíonna: class: GdalRaster. Déantar go leor de na paraiméadair a mhapáil go díreach leis na hairíonna sin; déantar cur síos ar na cinn eile thíos.

Déanann an tábla seo a leanas cur síos ar gach eochracha is féidir a shocrú sa fhoclóir ds_input`.

Eochair

Réamhshocraithe

Úsáid

Srid

riachtanach

Mapáilte leis an tréith: attr: ~gdalraster.srid

leithead

riachtanach

Mapáilte leis an tréith: attr: ~gdalraster.width

airde

riachtanach

Mapáilte leis an tréith: attr: ~gdalraster.height

Tiomána

MEM

Mapáilte leis an tréith: attr: ~gdalraster.driver

``ainm `

"

Féach thíos

`bunaidh

0

Mapáilte leis an tréith: attr: ~gdalraster.origin

``scála ``

0

Mapáilte leis an tréith: attr: ~gdalraster.scale

`sciob

0

Mapáilte leis an tréith: attr: ~gdalraster.width

banna

[]

Féach thíos

nr_of_banna

0

Féach thíos

Cineál sonraí

6

Féach thíos

roghanna papsz

{}

Féach thíos

name

Teagán a léiríonn ainm an raster. Agus raster comhbhunaithe á chruthú agat, caithfidh an paraiméadar seo gurb é an cosán comhaid don raster nua. Má thosaíonn an t-ainm le /vsimem/, cruthaítear an raster i gcóras comhaid fíorúil GDAL.

datatype

Sláimhir a léiríonn an cineál sonraí do na bandaí go léir. Réamhshocraithe go 6 (Float32). Ceanglaítear go mbeadh an cineál sonraí céanna ag gach banna de raster nua. Is é an mapáil luachanna:

Luach

Cineál Picteilín GDAL

Cur síos

1

GDT_byte

8 giotán sláimhir neamhshínithe

2

GDT_uInt16

16 giotán sláimhir neamhshínithe

3

GDT_Int16

Sláimhir sínithe 16 giotán

4

GDT_uInt32

Sláimhir 32 giotán gan shíniú

5

GDT_Int32

Sláimhir sínithe 32 giotán

6

GDT_Float32

Pointe snámh 32 giotán

7

GDT_Float64

Pointe snámh 64 giotán

12

GDT_uInt64

Sláimhir neamhshínithe 64 giotán (GDAL 3.5+)

13

GDT_Int64

Sláimhir shínithe 64 giotán (GDAL 3.5+)

14

GDT_Int8

Sláimhir shínithe 8 giotán (GDAL 3.7+)

nr_of_bands

Sláimhir a léiríonn líon na mbannaí den raster. Is féidir raster a chruthú gan sonraí banna a chur ar aghaidh nuair a chruthaítear iad. Mura sonraítear líon na mbannaí, ríomhtar é go huathoibríoch ó fhad na n-ionchur banda. Ní féidir líon na mbannaí a athrú tar éis a chruthú.

bands

Liosta de fhoclóirí band_input le sonraí ionchuir banna. Tá na hinnéacsanna banna mar thoradh air mar an gcéanna leis an liosta a chuirtear ar fáil. Tá an sainmhíniú ar an bhfoclóir ionchuir banna tugtar thíos. Mura gcuirtear sonraí banna ar fáil, déantar luachanna na mbannaí raster a ionchasadh mar shraith nialas agus socraítear an luach “gan aon sonraí” go ``None ``.

papsz_options

Foclóir le roghanna cruthaithe raster. Cuirtear péirí luach eochair an fhoclóra ionchuir chuig an tiománaí nuair a chruthaítear an raster.

Tá na roghanna atá ar fáil sainiúil don tiománaí agus déantar cur síos orthu i ndoiciméadú gach tiománaí.

Níl na luachanna sa fhoclóir cás-íogair agus déantar iad a thiontú go huathoibríoch go formáid sreinge ceart nuair a chruthaítear iad

Úsáideann an sampla seo a leanas cuid de na roghanna atá ar fáil don `tiománaí GTIFF `__. Is é an toradh ná raster comhbhrúite le scéim tíleála inmheánach. Tá méid bloc 23 ag 23 ag na tíleanna inmheánacha:

Python console
>>> GDALRaster(
...     {
...         "driver": "GTiff",
...         "name": "/path/to/new/file.tif",
...         "srid": 4326,
...         "width": 255,
...         "height": 255,
...         "nr_of_bands": 1,
...         "papsz_options": {
...             "compress": "packbits",
...             "tiled": "yes",
...             "blockxsize": 23,
...             "blockysize": 23,
...         },
...     }
... )

An foclóir band_inputLink to this heading

Is é an eochair bands sa fhoclóir ds_input` liosta de fhoclóirí band_input. Is féidir luachanna picteilín a bheith i ngach foclóir band_input agus an luach “gan sonraí” atá le socrú ar bannaí an raster nua. Féadfaidh méid iomlán an raster nua a bheith ag an eagar sonraí nó a bheith níos lú. Maidir le eagair atá níos lú ná an raster iomlán, rialaíonn na heochracha `méid ``, `cruth, agus offset na luachanna picteilín. Cuirtear na heochracha comhfhreagracha ar aghaidh chuig an modh: meth: ~Gdalband.data. Tá a bhfeidhmiúlacht mar an gcéanna le sonraí na mbanna a shocrú leis an modh sin. Déanann an tábla seo a leanas cur síos ar na heochracha is féidir a úsáid.

Eochair

Réamhshocraithe

Úsáid

luach_nodata

`Aon cheann

Mapáilte leis an tréith: attr: ~gdalband.nodata_value

``sonraí ``

Mar an gcéanna le nodata_value0

Rinneadh chuig an modh: meth: ~Gdalband.data

``Méid ``

(le, airde) de raster

Rinneadh chuig an modh: meth: ~Gdalband.data

cruth

Mar an gcéanna leis an méid

Rinneadh chuig an modh: meth: ~Gdalband.data

offset

(0, 0)

Rinneadh chuig an modh: meth: ~Gdalband.data

Ag baint úsáide as Córas Comhad Fíorúil GDALLink to this heading

Is féidir le GDAL rochtain a fháil ar chomhaid atá stóráilte sa chóras comhaid, ach tacaíonn sé freisin le córais chomhad fíorúla chun rochtain teibí a fháil ar chineál eile comhaid, mar shampla comhaid chomhbhrúite, criptithe nó iargúlta.

Córas Comhad Fíorúil bunaithe ar chuimhne a úsáidLink to this heading

Tá córas comhaid bunaithe ar chuimhne inmheánach ag GDAL, a cheadaíonn bloic cuimhne a chóireáil mar chomhaid. Is féidir é a úsáid chun rudaí: aicme: GdalRaster a léamh agus a scríobh chuig agus ó mhaoláin comhaid dénártha.

Tá sé seo úsáideach i gcomhthéacsanna gréasáin ina bhféadfaí rasters a fháil mar mhaolán ó stóráil iargúlta nó a thabhairt ar ais ó radharc gan iad a scríobh ar dhiosca.

GDALRaster objects are created in the virtual filesystem when a bytes object is provided as input, or when the file path starts with /vsimem/.

Caithfidh ionchur a sholáthraítear mar “bytes” a bheith ina léiriú dénártha iomlán ar chomhad. Mar shampla:

Python console
# Read a raster as a file object from a remote source.
>>> from urllib.request import urlopen
>>> dat = urlopen("https://example.com/raster.tif").read()
# Instantiate a raster from the bytes object.
>>> rst = GDALRaster(dat)
# The name starts with /vsimem/, indicating that the raster lives in the
# virtual filesystem.
>>> rst.name
'/vsimem/da300bdb-129d-49a8-b336-e410a9428dad'

Chun raster fíorúil nua atá bunaithe ar chomhad a chruthú ón tús, bain úsáid as ionadaíocht foclóra ds_input` agus tabhair argóint ainm ``a thosaíonn le ``/vsimem/ (le haghaidh mionsonraithe an fhoclóra, féach:ref: gdal-raster-ds-input). Maidir le rastróirí fíorúla comhad-bhunaithe, tugann an tréith: attr: ~gdalraster.vsi_buffer léiriú bytes an raster ar ais.

Seo conas raster a chruthú agus é a thabhairt ar ais mar chomhad in an:class: ~django.http.httpResponse:

Python console
>>> from django.http import HttpResponse
>>> rst = GDALRaster(
...     {
...         "name": "/vsimem/temporarymemfile",
...         "driver": "tif",
...         "width": 6,
...         "height": 6,
...         "srid": 3086,
...         "origin": [500000, 400000],
...         "scale": [100, -100],
...         "bands": [{"data": range(36), "nodata_value": 99}],
...     }
... )
>>> HttpResponse(rast.vsi_buffer, "image/tiff")

Ag baint úsáide as córas comhaid fíorúla eileLink to this heading

Ag brath ar thógáil áitiúil GDAL d'fhéadfaí tacú le córais chomhad fíorúla eile. Is féidir leat iad a úsáid tríd an gcosán a chuirtear ar fáil réamhfheidhmiú leis an réimír chuí /vsi*/. Féach an doiciméadú `Córais Comhad Fíorúla GDAL `_ le haghaidh tuilleadh sonraí.

Rasters comhbhrúiteLink to this heading

Instead of decompressing the file and instantiating the resulting raster, GDAL can directly access compressed files using the /vsizip/, /vsigzip/, or /vsitar/ virtual filesystems:

Python console
>>> from django.contrib.gis.gdal import GDALRaster
>>> rst = GDALRaster("/vsizip/path/to/your/file.zip/path/to/raster.tif")
>>> rst = GDALRaster("/vsigzip/path/to/your/file.gz")
>>> rst = GDALRaster("/vsitar/path/to/your/file.tar/path/to/raster.tif")
Rosters líonraLink to this heading

Is féidir le GDAL tacú le hacmhainní ar líne agus soláthraithe stórála go trédhearcach Chomh fada agus a thógtar é le cumais den sórt sin.

Chun rochtain a fháil ar chomhad raster poiblí gan aon fhíordheimhniú, is féidir leat /vsicurl/ a úsáid:

Python console
>>> from django.contrib.gis.gdal import GDALRaster
>>> rst = GDALRaster("/vsicurl/https://example.com/raster.tif")
>>> rst.name
'/vsicurl/https://example.com/raster.tif'

Maidir le soláthraithe stórála tráchtála (m.sh. /vsis3/) ba chóir an córas a chumrú roimhe seo le haghaidh fíordheimhnithe agus socruithe eile b'fhéidir (féach doiciméadú `GDAL Virtual Filesystems `_ le haghaidh na roghanna atá ar fáil).

Security considerationsLink to this heading

Since GDALRaster always opens new rasters in write mode, it is essential to prevent instantiating one from untrusted input. Otherwise, an attacker might gain the ability to write a file or make a network request.

To mitigate this, spatial lookups prevent str, pathlib.Path, and dict values from reaching GDALRaster altogether. To use these types with lookups, wrap them explicitly with GDALRaster, indicating that the value is trusted. Bytes are accepted without being wrapped in GDALRaster because they are opened through GDAL's memory-based virtual filesystem.

This protection applies only to spatial lookups. Assigning a dict value to a RasterField will still open a new raster, and assigning a str or Path will still fetch and open the referenced raster.

When validating geometry inputs, the GeometryField form field will reject raster values. When validating raster inputs, you should write custom validation.

For defense-in-depth strategies for limiting the available raster drivers, see GDAL security considerations.

SocruitheLink to this heading

BÓTHAIR_LEABHARLANNA_GDALLink to this heading

A string specifying the location of the GDAL library. Typically, this setting is only used if the GDAL library is in a non-standard location (e.g., /home/john/lib/libgdal.so).

EisceachtaíLink to this heading

exception GDALExceptionLink to this definition

An buneisceacht GDAL, ag léiriú earráid a bhaineann le GDAL.

exception SRSExceptionLink to this definition

Eisceacht a ardaítear nuair a tharlaíonn earráid agus réad córais tagartha spásúil á thógáil nó ag úsáid.