CreatePolygon (Azure Stream Analytics)
Returns a GeoJSON Polygon record. The result of a CreatePolygon can be used as input to other Geospatial functions. The order of points must follow right-hand ring orientation, an easy way to check if the polygon orientation is correct is to imagine yourself walking from one point to the other in order of declaration, the inside of the polygon needs to be on your left side all the time.
Be aware that when declaring polygons:
A polygon with left-hand ring orientation will generate a geography that encompass the entire globe minus the polygon you declared.
Polygons cannot have holes.
Polygons cannot have less than 3 points.
First and last points declared must be equal to close the loop
Syntax
CreatePolygon (points)
Argument
Points
A list of GeoJSON record points.
Return Type
Returns a GeoJSON polygon record with Polygon as type and an array of points as coordinates.
Example
SELECT
CreatePolygon(CreatePoint(input.latitude, input.longitude), CreatePoint(10.0, 10.0), CreatePoint(10.5, 10.5), CreatePoint(input.latitude, input.longitude))
FROM input
Input Example
latitude | longitude |
---|---|
3.0 | -10.2 |
-87.33 | 20.2321 |
Output Example
{"type" : "Polygon", "coordinates" : [[ [-10.2, 3.0], [10.0, 10.0], [10.5, 10.5], [-10.2, 3.0] ]]}
{"type" : "Polygon", "coordinates" : [[ [20.2321, -87.33], [10.0, 10.0], [10.5, 10.5], [20.2321, -87.33] ]]}