Building 


The building is the most important entity in Situm, because it represents any venue where Situm can be configured. Any building  will have at least one floorplan that the user will geolocate in the World map, providing either:

  1. Building location and length&width of the floorplan (alternativelly, the 4 corners of the building can be provided).
  2. Building rotation (orientation).
  3. Length and width of the floorplan. 


Other building relevant information is the building name, a description of the building in plain text, a representative picture and the building custom fields. 


In the following figure, we show the floorplan of floor -1 of a building. We also show the Building Location (center), the rotation (orientation), lenght & width and the 4 corners.




Custom-fields


Custom fields are key-value pairs that the user can use to extend and fully customize the information associated with each building, POI or geofence. Using Situm SDK or Situm API, the developer will be able to retrieve this information and use it for its own purposes. Usually, this information will not trigger any behaviour in Situm Platform or Situm SDK.  


In a key-value pair, the key describes the kind of data represented, and the value represents the actual data. For instance, a point of interest representing a piece of art in a museum could be associated with the following key-value pairs, among many others:


"author":"Vincent van Gogh"
"style":"Post-impressionism"
"year":"1888"


Developers can use custom fields to extend Situm functionality to their own purposes. Some examples:

  • Increase the information associated with a resource: Situm is a generic geolocation platform, but you can adapt it  to match any information needs. With custom fields, you can put additional information in your resources. For instance, a POI can be converted in a shop with keys such as "brand", "schedulle", etc.
  • Filter information: Custom fields can also be used by the programmer to filter information. For instance, the programmer might set some buildings with a key-value pair similar to "visible": "true/false", and then only show in the application those that have the combination "visible":"true".
  • Link external information: You may also use key-value pairs to associate any resource (building, POI, event) with information stored in another platform. For instance, you may want to associate a shop in a shopping mall with a PDF catalogue of its current coupons. In this case, you may store the catalogue in a server or online storage account, and associate with the POI of the store a key-value pair containing the URL of the catalogue.
  • Bind information from Situm to another platform: Another common use case is when you want to associate a resource stored in another platform with a resource in Situm platform (e.g. associate a certain painting stored in a museum's CMS with a POI in Situm platform). In this case, you may want to create a key-value pair that contains the unique identifier of the resource on the external platform (e.g. in this case, ID of the painting in the museum's CMS). Then, you will be able to link both resources in your application.


Floor & floorplan


A floor is an entity representing a certain level of a building. Each floor resource contains, among other information, the physical level of the floor and its floorplan image.  All the floorplans of a building occupy the same 2D area in the map, and they should have the same dimensions. As it is shown in the previous picture, the area occupied by a certain floor is defined by the coordinates of each corner of the floorplan, plus the rotation of the floorplan when placed in the map.


Each floor can have a level height, which is the height of the floor with respect to the ground level. For instance, a typical building could have the following configuration:


  1. Level -1 : level_height = -5 m
  2. Level 0 : level_height = 0 m
  3. Level 1: level_height = 5 m
  4. Level 2 : level_height = 10 m




Point of interest


A point of interest represents any entity that occupies a certain geographical location. Points of interest can be located inside the building (indoor POIs: toilets, elevators, shops, cafeterias...) or outside the building (outdoor POIs: bus stops, parkings...). Points of interest can have different information associated to it, such as a name, a category, a description with text, images and videos, and any number of custom fields.


Each point of interest can belong to a unique category. Situm Dashboard provides a set of predefined categories (e.g. elevator, entrance, parking, information), but the user can also define its own categories.




Paths (wayfinding paths)


Paths are graphs that represent all the navigation routes within the building. As shown in the figure, these graphs are formed by a set of nodes and links that traverse all the navigable spaces in a venue, connecting them so that routes can be computed. Once all the navigable spaces have been defined, Situm can compute the shortest route to guide an user from point A to point B.


Paths are a very versatile tool that can be also used to connect floors (representing stairs or elevators), one-way only directions, and even navigation routes suitable for wheelchairs.



Geofences


A geofence is a virtual geographic boundary represented in the form of a polygon. A geofence must be contained within the building area. Geofences are useful, for instance, for the extraction of stay times per area. Each geofence contains information such as a name and a description in rich text format (text, image...).