Difference between revisions of "Location"

From AMTech WikiDocs
Jump to: navigation, search
Line 1: Line 1:
All things have a "location" supported property, represented using an extended Well-known text (wkt) format
+
All things and observations have a "location" supported property, represented using an extended Well-known text (wkt) format
 
*[https://en.wikipedia.org/wiki/Well-known_text Well-known text] extended with two more shapes
 
*[https://en.wikipedia.org/wiki/Well-known_text Well-known text] extended with two more shapes
 
** RECTANGLE( ''lng1'' ''lat1'', ''lng2'' ''lat2'') rectangle where ''lng1'', ''lat1'' are the south-west point longitude and latitude and ''lng2'', ''lat2'' are the north-east limit coordinates.
 
** RECTANGLE( ''lng1'' ''lat1'', ''lng2'' ''lat2'') rectangle where ''lng1'', ''lat1'' are the south-west point longitude and latitude and ''lng2'', ''lat2'' are the north-east limit coordinates.

Revision as of 09:36, 27 July 2016

All things and observations have a "location" supported property, represented using an extended Well-known text (wkt) format

  • Well-known text extended with two more shapes
    • RECTANGLE( lng1 lat1, lng2 lat2) rectangle where lng1, lat1 are the south-west point longitude and latitude and lng2, lat2 are the north-east limit coordinates.
    • CIRCLE ( lng lat, r) circle with center on coordinates lng,lat and radius r in km.
  • observations and things have a location property
    • this property can be used to define observer geo-spatial criteria (See Observers)
    • allows a geo-representation of the things
{
    ...
    "location": "{
                    \"sContext\" : \"geo\", 
                    \"wkt\" : \"POINT(-99.16297853 19.42359932)\"
                 }",
    ...
}
 Note: It is important to escape the quotation marks (") with \"

The value of this field consist on a stringified json object containing a mandatory field "wkt" defining the geometry, and two optional fields "sContext" (holding only "geo" as value to indicate that the wkt is written in geospatial context coordinates) and "hash" containing the geohash corresponding to the bounding rectangle of the given wkt. The field "hash" is computed internally so any value entered is ignored by the application.

The spatial location fields can be visually edited with the map or by writing the string in an input box

Edit by map

Whenever a spatial field is edited (for instance, the "location" field on things), the map will enable the edition controls. Using them will set the newly defined geometry as the value of the edited field.

Edit by input box

In some cases, in particular when defining a spatial constraint in an observer, a location based field can be set by writing the whole string in an input. For instance, to define a rectangle it should be written

 {"wkt":"RECTANGLE(-100 19,-98 20)"}

The application itself will escape the quotation marks. Also, once the input loose the focus (clicked outside the input box), the geometry drawn in the map will be updated.