Marian Pohling edited this page Feb 6, 2018 · 11 revisions

BCO Registry Wiki

Build Status Build Status

Maven Artifact


The following is kind of outdated!

Location Architecture

This aritecture is developed to support spatial reasoning, device and object transformations and hierarchical controlling of services and units within a Smart Environment.



  • base location_id
  • position
    • translation
    • rotation
  • shape


  • LocationConfig
    • Label
    • Placement
    • Set[Location] children
      • Placement of all Children are included in the parent shape.


  • is a Location
  • Description: Logical spatial partition.
  • Example: home theater, patio, entrance, interaction islands


  • is a Location
  • a zone can not directly contain any units.
  • Has at least one child location
  • a zone can not be a leaf.
  • Description: A set of locations logically associate to on zone.
  • Example: home[garden, house], house[all rooms], ground floor[...], first floor[...], ...


  • is a Location without parent
  • The whole placement must be covered by tiles.


  • is a Region
  • has a defined logical parent location
  • A tile cannot overlap with other tiles.
  • Set[Connection]
  • TileType[Room, Garden]
  • Example: Room, Garden


  • Set[ Tile]
  • ConnectionType[Door, Window, Passage]
  • Implementations
    • Door
      • Set[Unit]
    • Window
      • Set[Unit]
    • Passage
      • Set[Unit]

Spatial Relation

  • Locations organized by a tree structure

    • Nodes: Location
    • Leaf: Region
    • Allows spatial and hierarchical controlling
      • Controlling all devices/units/services in a defined Zone
  • Location are connected via Connections to a graph structure

    • Nodes: Tile
    • Edges: Connection
    • Allows Spatial reasoning
      • path finding
      • Smoke expansion
      • Intrusion detection
      • Air conditioning
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.