Optional displayName: stringProtected connectedCreated timestamp
Object display name
Protected positionObject identifier
Unique object identifier
Set the parent symbolic location
Parent symbolic location
Get the current absolute position of the object relative to the global reference space
Absolute position of data object
Set the current absolute position of the object relative to the global reference space
Get relative positions
Array of relative positions
Get the transformation matrix for scaling
Transformation matrix
Add a connected space
Connected space
Optional position: TPosition of connection
instance
Bind the data object to a service
Service to bind it to
Data object binding with a service
Get relative position of a specified object
Reference object identifier
Optional type: stringConstructor type of the relative position
Relative position to reference object
Check if the space is connected to another
Space to check if connected
connected or not
Transform perspective
Farthest left on the x-axis
Farthest right on the x-axis
Farthest down on the y-axis
Farthest up on the y-axis
Distance to the near clipping plane along the -Z axis
Distance to the far clipping plane along the -Z axis
Reference space instance
Optional unit?: AngleUnitOptional order?: EulerOrderOptional unit?: AngleUnitProtected setProtected setUpdate parent reference spaces
Service to use for updating
Update promise
Protected updateStatic fromStatic fromCreate a new symbolic space GeoJSON
GeoJSON
symbolic space instance
Static fromWKT
A symbolic space can be used to indicate an abstract space with a boundary. It is an extended
ReferenceSpacewith boundaries.About
A symbolic space is a
ReferenceSpace, and is therefore not directly as a position. It indicates a symbolic space and provides several utilities. Both a hierarchical structure and graph connection can be used to connect symbolic spaces together.Usage
Creation
Creating a symbolic space requires a generic position type. This type indicates how the symbolic position should be interpreted.
Optionally, the space can be initialized with a display name.
Parent space
The parent space uses a wrapper for the
ReferenceSpace.parentUID.In addition, the parent is also treated as the base reference space.
Creating boundaries
Boundaries can be set of a symbolic space. Both 2D and 3D polygons are supported.
Positioning of boundaries is always relative to the parent (i.e. if the floor shifts position, you do not have to change the lobby boundaries).
Boundary utilities
Symbolic spaces provide several boundary utilities.
Checking if a position is inside a symbolic space
Centroid
The centroid is determined using the boundaries, this will be the position that is used.
AbsolutePositiontoSymbolicSpaceConverting an absolute position to a symbolic space does not provide a single result. Similar to geocoders, the results are sorted based on their probability.
For this, we make use of the [[SymbolicSpaceService]]. This service acts as the data store for symbolic spaces.
SymbolicSpacetoAbsolutePositionConverting a symbolic space to a position uses the centroid that is calculated from the boundaries.