1 L0 = <http://www.simantics.org/Layer0-1.1>
\r
2 G3D = <http://www.simantics.org/G3D-0.1>
\r
4 CSG = <http://www.simantics.org/CSG-0.1> : L0.Ontology
\r
6 L0.HasResourceClass "org.simantics.g3d.csg.ontology.CSG"
\r
8 CSG.Shape <T G3D.Node
\r
9 CSG.Model <T G3D.RootNode
\r
10 CSG.Primitive <T CSG.Shape
\r
11 @L0.property CSG.HasSizingProperty
\r
13 CSG.hasPrimaryShape <R G3D.geometryDefinition
\r
14 L0.HasDomain CSG.BooleanOperation
\r
15 L0.HasRange CSG.Shape
\r
16 CSG.hasSecondaryShape <R G3D.geometryDefinition
\r
17 L0.HasDomain CSG.BooleanOperation
\r
18 L0.HasRange CSG.Shape
\r
19 CSG.hasChildShape <R G3D.children
\r
20 L0.HasDomain CSG.Shape
\r
21 L0.HasRange CSG.Shape
\r
22 CSG.BooleanOperation <T CSG.Shape
\r
23 @L0.optionalProperty CSG.hasPrimaryShape
\r
24 @L0.property CSG.hasSecondaryShape
\r
25 CSG.Difference <T CSG.BooleanOperation
\r
26 CSG.Intersection <T CSG.BooleanOperation
\r
27 CSG.Union <T CSG.BooleanOperation
\r
29 CSG.HasSizingProperty <R G3D.hasNonTransformation
\r
30 CSG.HasXAxisSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
31 L0.HasRange L0.Double
\r
32 CSG.HasYAxisSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
33 L0.HasRange L0.Double
\r
34 CSG.HasZAxisSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
35 L0.HasRange L0.Double
\r
36 CSG.HasXAxisMinimumSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
37 L0.HasRange L0.Double
\r
38 CSG.HasZAxisMinimumSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
39 L0.HasRange L0.Double
\r
40 CSG.HasXAxisMaximumSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
41 L0.HasRange L0.Double
\r
42 CSG.HasZAxisMaximumSize <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
43 L0.HasRange L0.Double
\r
44 CSG.HasRadius <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
45 L0.HasRange L0.Double
\r
46 CSG.HasMajorRadius <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
47 L0.HasRange L0.Double
\r
48 CSG.HasMinorRadius <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
49 L0.HasRange L0.Double
\r
50 CSG.HasTopRadius <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
51 L0.HasRange L0.Double
\r
52 CSG.HasBottomRadius <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
53 L0.HasRange L0.Double
\r
54 CSG.HasHeight <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
55 L0.HasRange L0.Double
\r
56 CSG.HasCorners <R CSG.HasSizingProperty : L0.FunctionalRelation
\r
57 L0.HasRange L0.Integer
\r
58 CSG.Box <T CSG.Primitive
\r
59 @L0.assert CSG.HasXAxisSize 1.0
\r
60 @L0.assert CSG.HasYAxisSize 1.0
\r
61 @L0.assert CSG.HasZAxisSize 1.0
\r
62 CSG.Sphere <T CSG.Primitive
\r
63 @L0.assert CSG.HasRadius 1.0
\r
64 CSG.Cone <T CSG.Primitive
\r
65 @L0.assert CSG.HasTopRadius 0.5
\r
66 @L0.assert CSG.HasBottomRadius 1.0
\r
67 @L0.assert CSG.HasHeight 1.0
\r
68 CSG.Cylinder <T CSG.Primitive
\r
69 @L0.assert CSG.HasRadius 1.0
\r
70 @L0.assert CSG.HasHeight 1.0
\r
71 CSG.Barrel <T CSG.Primitive
\r
72 @L0.assert CSG.HasMinorRadius 0.9
\r
73 @L0.assert CSG.HasMajorRadius 1.0
\r
74 @L0.assert CSG.HasHeight 1.0
\r
75 CSG.EllipticCylinder <T CSG.Primitive
\r
76 @L0.assert CSG.HasMinorRadius 0.5
\r
77 @L0.assert CSG.HasMajorRadius 1.0
\r
78 @L0.assert CSG.HasHeight 1.0
\r
79 CSG.RegularPrism <T CSG.Primitive
\r
80 @L0.assert CSG.HasHeight 1.0
\r
81 @L0.assert CSG.HasRadius 1.0
\r
82 @L0.assert CSG.HasCorners 3
\r
83 CSG.Torus <T CSG.Primitive
\r
84 @L0.assert CSG.HasMinorRadius 0.5
\r
85 @L0.assert CSG.HasMajorRadius 1.0
\r
86 CSG.RectangularSolid <T CSG.Primitive
\r
87 @L0.assert CSG.HasXAxisMinimumSize 0.5
\r
88 @L0.assert CSG.HasXAxisMaximumSize 1.0
\r
89 @L0.assert CSG.HasYAxisSize 1.0
\r
90 @L0.assert CSG.HasZAxisMinimumSize 0.5
\r
91 @L0.assert CSG.HasZAxisMaximumSize 1.0
\r