update c3nav.puml
This commit is contained in:
parent
67f2bcdf0e
commit
da69a8813a
1 changed files with 96 additions and 33 deletions
129
doc/c3nav.puml
129
doc/c3nav.puml
|
@ -1,6 +1,7 @@
|
||||||
@startuml
|
@startuml
|
||||||
abstract class Feature {
|
class Section {
|
||||||
{static} EditorForm: Form
|
name: str
|
||||||
|
altitude: Decimal
|
||||||
}
|
}
|
||||||
|
|
||||||
class Source {
|
class Source {
|
||||||
|
@ -11,65 +12,127 @@ class Source {
|
||||||
right: Decimal
|
right: Decimal
|
||||||
image: file
|
image: file
|
||||||
}
|
}
|
||||||
Feature <|-- Source
|
|
||||||
|
|
||||||
class Section {
|
abstract class GeometryMixin {
|
||||||
name: str
|
geometry:
|
||||||
altitude: Decimal
|
|
||||||
}
|
}
|
||||||
Feature <|-- Section
|
|
||||||
|
|
||||||
abstract class GeometryFeature {
|
abstract class SectionGeometryMixin {
|
||||||
{static} geomtype: str
|
|
||||||
geometry: Geometry
|
|
||||||
}
|
}
|
||||||
Feature <|-- GeometryFeature
|
GeometryMixin <|-- SectionGeometryMixin
|
||||||
|
Section "1" *-- "*" SectionGeometryMixin: section
|
||||||
abstract class SectionFeature {
|
|
||||||
section: Section
|
|
||||||
}
|
|
||||||
Section *-- SectionFeature: section
|
|
||||||
GeometryFeature <|-- SectionFeature
|
|
||||||
|
|
||||||
class Building {
|
class Building {
|
||||||
|
geometry: polygon
|
||||||
|
}
|
||||||
|
SectionGeometryMixin <|-- Building
|
||||||
|
|
||||||
|
class Category << (E,#FF7700) >> {
|
||||||
|
<i>empty string</i>
|
||||||
|
stairs
|
||||||
|
escalator
|
||||||
|
elevator
|
||||||
|
}
|
||||||
|
|
||||||
|
class Level << (E,#FF7700) >> {
|
||||||
|
<i>empty string</i>
|
||||||
|
upper
|
||||||
|
lower
|
||||||
}
|
}
|
||||||
SectionFeature <|-- Building
|
|
||||||
|
|
||||||
class Space {
|
class Space {
|
||||||
|
geometry: polygon
|
||||||
public: bool
|
public: bool
|
||||||
category: str
|
|
||||||
layer: str
|
|
||||||
}
|
}
|
||||||
SectionFeature <|-- Space
|
SectionGeometryMixin <|-- Space
|
||||||
|
Category "1" <-- Space: category
|
||||||
|
Level "1" <-- Space: level
|
||||||
|
|
||||||
class Door {
|
class Door {
|
||||||
|
geometry: polygon
|
||||||
}
|
}
|
||||||
SectionFeature <|-- Door
|
SectionGeometryMixin <|-- Door
|
||||||
|
Level "1" <-- Door: level
|
||||||
|
|
||||||
class Hole {
|
class Hole {
|
||||||
|
geometry: polygon
|
||||||
}
|
}
|
||||||
SectionFeature <|-- Hole
|
SectionGeometryMixin <|-- Hole
|
||||||
|
|
||||||
abstract class SpaceFeature {
|
abstract class SpaceGeometryMixin {
|
||||||
space: Space
|
|
||||||
}
|
}
|
||||||
Space *-- SpaceFeature: space
|
GeometryMixin <|-- SpaceGeometryMixin
|
||||||
GeometryFeature <|-- SpaceFeature
|
Space "1" *-- "*" SpaceGeometryMixin: space
|
||||||
|
|
||||||
class StuffedArea {
|
class Area {
|
||||||
|
geometry: polygon
|
||||||
}
|
}
|
||||||
SpaceFeature <|-- StuffedArea
|
SpaceGeometryMixin <|-- Area
|
||||||
|
|
||||||
|
class Point {
|
||||||
|
geometry: point
|
||||||
|
}
|
||||||
|
SpaceGeometryMixin <|-- Point
|
||||||
|
|
||||||
class Stair {
|
class Stair {
|
||||||
|
geometry: linestring
|
||||||
}
|
}
|
||||||
SpaceFeature <|-- Stair
|
SpaceGeometryMixin <|-- Stair
|
||||||
|
|
||||||
class Obstacle {
|
class Obstacle {
|
||||||
|
geometry: polygon
|
||||||
}
|
}
|
||||||
SpaceFeature <|-- Obstacle
|
SpaceGeometryMixin <|-- Obstacle
|
||||||
|
|
||||||
class LineObstacle {
|
class LineObstacle {
|
||||||
width: Decimal
|
geometry: linestring
|
||||||
}
|
}
|
||||||
SpaceFeature <|-- LineObstacle
|
SpaceGeometryMixin <|-- LineObstacle
|
||||||
|
|
||||||
|
abstract class Location {
|
||||||
|
titles: dict
|
||||||
|
public: bool
|
||||||
|
can_search: bool
|
||||||
|
can_describe: bool
|
||||||
|
color: str
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class SpecificLocation {
|
||||||
|
|
||||||
|
}
|
||||||
|
SpecificLocation --|> Location
|
||||||
|
Section --|> SpecificLocation
|
||||||
|
Space --|> SpecificLocation
|
||||||
|
Area --|> SpecificLocation
|
||||||
|
Point --|> SpecificLocation
|
||||||
|
|
||||||
|
class LocationGroup {
|
||||||
|
compiled_room: bool
|
||||||
|
compiled_area: bool
|
||||||
|
}
|
||||||
|
LocationGroup --|> Location
|
||||||
|
SpecificLocation "*" --o "*" LocationGroup: groups
|
||||||
|
|
||||||
|
class LocationSlug {
|
||||||
|
slug: str
|
||||||
|
}
|
||||||
|
|
||||||
|
Location "1" -- "1" LocationSlug
|
||||||
|
|
||||||
|
class GraphNode {
|
||||||
|
x: int
|
||||||
|
y: int
|
||||||
|
transfer: bool
|
||||||
|
desc: json
|
||||||
|
}
|
||||||
|
Space "1" *-- "*" GraphNode: space
|
||||||
|
|
||||||
|
class GraphLine {
|
||||||
|
category: str
|
||||||
|
}
|
||||||
|
GraphNode "1" *-- "*" GraphLine: start
|
||||||
|
GraphNode "1" *-- "*" GraphLine: end
|
||||||
|
|
||||||
|
hide methods
|
||||||
|
|
||||||
@enduml
|
@enduml
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue