oceanum.datamesh.query.GeoFilter¶
- pydantic model oceanum.datamesh.query.GeoFilter[source]¶
GeoFilter class Describes a spatial subset or interpolation
Show JSON schema
{ "title": "GeoFilter", "description": "GeoFilter class\nDescribes a spatial subset or interpolation", "type": "object", "properties": { "type": { "title": "Geofilter type", "description": "\n Type of the geofilter. Can be one of:\n - 'feature': Select with a geojson feature\n - 'bbox': Select with a bounding box\n - 'radius': Select within radius of point\n ", "default": "bbox", "allOf": [ { "$ref": "#/definitions/GeoFilterType" } ] }, "geom": { "title": "Selection geometry", "description": "\n - For type='feature', geojson feature.\n - For type='bbox', list[x_min,y_min,x_max,y_max] in CRS units.\n - For type='radius', list[x0,y0,radius] in CRS units.\n ", "anyOf": [ { "type": "array", "items": {} }, { "$ref": "#/definitions/Feature" } ] }, "resolution": { "title": "Maximum spatial resolution of data", "description": "Maximum resolution of the data for downsampling in CRS units", "default": 0.0, "type": "number" } }, "required": [ "geom" ], "definitions": { "GeoFilterType": { "title": "GeoFilterType", "description": "An enumeration.", "enum": [ "feature", "radius", "bbox" ] }, "Point": { "title": "Point", "description": "Point Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] }, "type": { "title": "Type", "const": "Point", "type": "string" } }, "required": [ "coordinates" ] }, "MultiPoint": { "title": "MultiPoint", "description": "MultiPoint Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "type": "array", "items": { "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } }, "type": { "title": "Type", "const": "MultiPoint", "type": "string" } }, "required": [ "coordinates" ] }, "LineString": { "title": "LineString", "description": "LineString Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "minItems": 2, "type": "array", "items": { "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } }, "type": { "title": "Type", "const": "LineString", "type": "string" } }, "required": [ "coordinates" ] }, "MultiLineString": { "title": "MultiLineString", "description": "MultiLineString Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "type": "array", "items": { "type": "array", "items": { "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } } }, "type": { "title": "Type", "const": "MultiLineString", "type": "string" } }, "required": [ "coordinates" ] }, "Polygon": { "title": "Polygon", "description": "Polygon Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "type": "array", "items": { "type": "array", "items": { "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } } }, "type": { "title": "Type", "const": "Polygon", "type": "string" } }, "required": [ "coordinates" ] }, "MultiPolygon": { "title": "MultiPolygon", "description": "MultiPolygon Model", "type": "object", "properties": { "coordinates": { "title": "Coordinates", "type": "array", "items": { "type": "array", "items": { "type": "array", "items": { "anyOf": [ { "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 3, "maxItems": 3, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } } } }, "type": { "title": "Type", "const": "MultiPolygon", "type": "string" } }, "required": [ "coordinates" ] }, "Feature": { "title": "Feature", "description": "Feature Model", "type": "object", "properties": { "type": { "title": "Type", "const": "Feature", "type": "string" }, "geometry": { "title": "Geometry", "anyOf": [ { "$ref": "#/definitions/Point" }, { "$ref": "#/definitions/MultiPoint" }, { "$ref": "#/definitions/LineString" }, { "$ref": "#/definitions/MultiLineString" }, { "$ref": "#/definitions/Polygon" }, { "$ref": "#/definitions/MultiPolygon" } ] }, "properties": { "title": "Properties", "type": "object" }, "id": { "title": "Id", "type": "string" }, "bbox": { "title": "Bbox", "anyOf": [ { "type": "array", "minItems": 4, "maxItems": 4, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] }, { "type": "array", "minItems": 6, "maxItems": 6, "items": [ { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] }, { "anyOf": [ { "type": "number" }, { "type": "integer" } ] } ] } ] } }, "required": [ "geometry" ] } } }
- Fields
- field geom: Union[List, geojson_pydantic.features.Feature] [Required]¶
For type=’feature’, geojson feature.
For type=’bbox’, list[x_min,y_min,x_max,y_max] in CRS units.
For type=’radius’, list[x0,y0,radius] in CRS units.
- field resolution: Optional[float] = 0.0¶
Maximum resolution of the data for downsampling in CRS units
- field type: oceanum.datamesh.query.GeoFilterType = <GeoFilterType.bbox: 'bbox'>¶
- Type of the geofilter. Can be one of:
‘feature’: Select with a geojson feature
‘bbox’: Select with a bounding box
‘radius’: Select within radius of point