This module defines the geoalchemy2.types.Geometry, geoalchemy2.types.Geography, and geoalchemy2.types.Raster classes, that are used when defining geometry, geography and raster columns/properties in models.
Bases: sqlalchemy.sql.type_api.UserDefinedType
A wrapper for geoalchemy2.elements.CompositeElement, that can be used as the return type in PostgreSQL functions that return composite values.
This is used as the base class of geoalchemy2.types.GeometryDump.
Dictionary used for defining the content types and their corresponding keys. Set in subclasses.
Bases: geoalchemy2.types._GISType
The Geography type.
Creating a geography column is done like this:
Column(Geography(geometry_type='POINT', srid=4326))
See geoalchemy2.types._GISType for the list of arguments that can be passed to the constructor.
The FromText geography constructor. Used by the parent class’ bind_expression method.
Type name used for defining geography columns in CREATE TABLE.
Bases: geoalchemy2.types._GISType
The Geometry type.
Creating a geometry column is done like this:
Column(Geometry(geometry_type='POINT', srid=4326))
See geoalchemy2.types._GISType for the list of arguments that can be passed to the constructor.
The FromText geometry constructor. Used by the parent class’ bind_expression method.
Type name used for defining geometry columns in CREATE TABLE.
Bases: geoalchemy2.types.CompositeType
The return type for functions like ST_Dump, consisting of a path and a geom field. You should normally never use this class directly.
Dictionary defining the contents of a geometry_dump.
Bases: sqlalchemy.sql.type_api.UserDefinedType
The Raster column type.
Creating a raster column is done like this:
Column(Raster)
This class defines the result_processor method, so that raster values received from the database are converted to geoalchemy2.elements.RasterElement objects.
Constructor arguments:
spatial_index
Indicate if a spatial index should be created. Default is True.
This is the way by which spatial operators and functions are defined for raster columns.
alias of BaseComparator
Bases: sqlalchemy.sql.type_api.UserDefinedType
The base class for geoalchemy2.types.Geometry and geoalchemy2.types.Geography.
This class defines bind_expression and column_expression methods that wrap column expressions in ST_GeomFromEWKT, ST_GeogFromText, or ST_AsBinary calls.
This class also defines result_processor and bind_processor methods. The function returned by result_processor converts WKB values received from the database to geoalchemy2.elements.WKBElement objects. The function returned by bind_processor converts geoalchemy2.elements.WKTElement objects to EWKT strings.
Constructor arguments:
geometry_type
The geometry type.
Possible values are:
- "GEOMETRY",
- "POINT",
- "LINESTRING",
- "POLYGON",
- "MULTIPOINT",
- "MULTILINESTRING",
- "MULTIPOLYGON",
- "GEOMETRYCOLLECTION"
- "CURVE".
The latter is actually not supported with geoalchemy2.types.Geography.
Default is "GEOMETRY".
srid
The SRID for this column. E.g. 4326. Default is -1.
dimension
The dimension of the geometry. Default is 2.
spatial_index
Indicate if a spatial index should be created. Default is True.
management
Indicate if the AddGeometryColumn and DropGeometryColumn managements functions should be called when adding and dropping the geometry column. Should be set to True for PostGIS 1.x. Default is False. Note that this option has no effect for geoalchemy2.types.Geography.
This is the way by which spatial operators are defined for geometry/geography columns.
alias of Comparator
The name of ST_*FromText function for this type. Set in subclasses.
Name used for defining the main geo type (geometry or geography) in CREATE TABLE statements. Set in subclasses.