101 lines
1.5 KiB
Plaintext
101 lines
1.5 KiB
Plaintext
@startuml
|
|
'https://plantuml.com/class-diagram
|
|
|
|
interface Vision{
|
|
val parent: VisionGroup?
|
|
fun getProperty(name):TypedMetaItem?
|
|
fun setProperty(name, item)
|
|
}
|
|
|
|
interface Solid{
|
|
base of 3D geometries
|
|
}
|
|
Vision <- Solid
|
|
|
|
class VisionGroup{
|
|
a group of visions
|
|
}
|
|
|
|
Vision <-- VisionGroup
|
|
|
|
class VisionBase{
|
|
basic vision
|
|
implementation
|
|
}
|
|
Vision <- VisionBase
|
|
|
|
|
|
class SolidLabel
|
|
Solid <--- SolidLabel
|
|
|
|
class SolidGroup
|
|
Solid <--- SolidGroup
|
|
MutableVisionGroup <-- SolidGroup
|
|
|
|
|
|
class SphereLayer
|
|
GeometrySolid <-- SphereLayer
|
|
|
|
class Sphere
|
|
GeometrySolid <-- Sphere
|
|
|
|
class Box
|
|
Hexagon <-- Box
|
|
|
|
class GenericHexagon
|
|
Hexagon <-- GenericHexagon
|
|
|
|
class Extruded
|
|
GeometrySolid <-- Extruded
|
|
|
|
|
|
class PolyLine
|
|
Solid <--- PolyLine
|
|
|
|
interface GeometrySolid
|
|
Solid <--- GeometrySolid
|
|
|
|
|
|
interface Hexagon
|
|
GeometrySolid <-- Hexagon
|
|
|
|
class ConeSegment
|
|
GeometrySolid <-- ConeSegment
|
|
|
|
class ConeSurface
|
|
GeometrySolid <-- ConeSurface
|
|
|
|
|
|
class Convex
|
|
Solid <--- Convex
|
|
|
|
class Composite
|
|
Solid <--- Composite
|
|
|
|
|
|
interface SolidReference
|
|
VisionGroup <---- SolidReference
|
|
|
|
interface MutableVisionGroup
|
|
VisionGroup <---- MutableVisionGroup
|
|
|
|
class SolidReferenceGroup
|
|
VisionGroup <-- SolidReferenceGroup
|
|
Solid <-- SolidReferenceGroup
|
|
VisionBase <-- SolidReferenceGroup
|
|
SolidReference <-- SolidReferenceGroup
|
|
|
|
class ReferenceChild
|
|
VisionGroup <-- ReferenceChild
|
|
Solid <-- ReferenceChild
|
|
SolidReference <-- ReferenceChild
|
|
|
|
|
|
|
|
class RootVisionGroup
|
|
MutableVisionGroup <-- RootVisionGroup
|
|
|
|
|
|
class VisionOfPlotly
|
|
VisionBase <-- VisionOfPlotly
|
|
@enduml |