1.8 KiB
1.8 KiB
title | description | menu | weight | v2.0/tags | related | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
geo.ST_Contains() function | The `geo.ST_Contains()` function tests if the specified region contains the specified GIS geometry and returns `true` or `false`. |
|
401 |
|
|
The geo.ST_Contains()
function tests if the specified region contains the specified
geographic information system (GIS) geometry and returns true
or false
.
Function type: Test
import "experimental/geo"
geo.ST_Contains(
region: {lat: 40.7, lon: -73.3, radius: 20.0},
geometry: {lon: 39.7515, lat: 15.08433}
)
// Returns false
Parameters
region
The region to test. Specify record properties for the shape. See Region definitions.
Data type: Record
geometry
The GIS geometry to test. Can be either point or linestring geometry. See GIS geometry definitions.
Data type: Record
Examples
Test if geographic points are inside of a region
import "experimental/geo"
region = {
minLat: 40.51757813,
maxLat: 40.86914063,
minLon: -73.65234375,
maxLon: -72.94921875
}
data
|> geo.toRows()
|> map(fn: (r) => ({
r with st_contains: geo.ST_Contains(region: region, geometry: {lat: r.lat, lon: r.lon})
}))
Test if tracks are inside of a region
import "experimental/geo"
region = {
minLat: 40.51757813,
maxLat: 40.86914063,
minLon: -73.65234375,
maxLon: -72.94921875
}
data
|> geo.toRows()
|> geo.asTracks()
|> geo.ST_LineString()
|> map(fn: (r) => ({
r with st_contains: geo.ST_Contains(region: region, geometry: {linestring: r.st_linestring})
}))