Geo Data FBFs
The Geo data fields can be used to derive new fields and data from, by using the following Field Build Functions:
area
Function | Description | Sources | Output | Arguments |
---|---|---|---|---|
area | A directive for calculating the area of polygon. The input should be a polygon in the format of a GeoJson (json or WKT) or a TopoJson. The returned area will be in square meter (m^2). Set convert_to_km to true in order to get the result in square kilometer(km^2) | polygon | convert_to_km |
{
"area_of_polygon": {
"type": "numeric",
"function": "area",
"source": "polygon"
}
}
<EXAMPLE INPUT 1>
{
"polygon": {
"type": "Polygon",
"coordinates": [[[-50,-90],[-50,90],[50,90],[-50,-90]]]
}
}
<EXAMPLE INPUT 2>
{
"polygon": "POLYGON ((-50 -90, -50 90, 50 90, 50 -90, -50 -90))"
}
<EXAMPLE OUTPUT >
{
"area_of_polygon": 18000.0
}
distance
Function | Description | Sources | Output | Arguments |
---|---|---|---|---|
distance | A directive for calculating the distance between two points. The input should be two given Geopoints. The returned distance will be in meters (m). Set convert_to_km to true in order to get the result in kilometers (km) | point1 point2 | convert_to_km |
{
"distance_between_two_points": {
"function": "distance",
"sources": ["point1", "point2"],
"type": "numeric"
}
}
<EXAMPLE INPUT>
{
[{
"point1": {"location" : "POINT (-71.34 41.12)" },
"point2": {"location" : "POINT (52.406374 16.9251681)" }
}]
}
<EXAMPLE OUTPUT>
{
"distance_between_two_points": 11365307.89
}
geo_intersect
Function | Description | Sources | Output | Arguments |
---|---|---|---|---|
geo_intersect | A directive for calculating the intersection of two given polygons. The input should be GeoJson or TopoJson format or WKT (as a json or a json string) and the output will be returned as WKT string. | polygon1 polygon2 |
{
"intersection_of_polygons": {
"function": "geo_intersect",
"sources": ["poly1", "poly2"],
"type": "string"
}
}
<EXAMPLE INPUT>
{
[{
"poly1": {
"type": "Polygon",
"coordinates": [[
[-180,-90],
[-180,90],
[180,90],
[180,-90],
[-180,-90]
]]
},
"poly2": {
"type": "Polygon",
"coordinates": [[
[-122.801742, 45.48565],
[-122.801742, 45.60491],
[-122.584762, 45.60491],
[-122.584762, 45.48565],
[-122.801742, 45.48565]
]]
}
}]
}
<EXAMPLE OUTPUT>
{
""intersection_of_polygons": POLYGON ((
-122.801742 45.60491,
-122.584762 45.60491,
-122.584762 45.48565,
-122.801742 45.48565,
-122.801742 45.60491
))"
}
Updated almost 2 years ago