]> gerrit.simantics Code Review - simantics/3d.git/blob - org.simantics.g3d.csg.ontology/graph/csg.pgraph
3D framework (Simca 2012)
[simantics/3d.git] / org.simantics.g3d.csg.ontology / graph / csg.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>\r
2 G3D = <http://www.simantics.org/G3D-0.1>\r
3 \r
4 CSG = <http://www.simantics.org/CSG-0.1> : L0.Ontology\r
5     @L0.new\r
6     L0.HasResourceClass "org.simantics.g3d.csg.ontology.CSG"\r
7 \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
12 \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
28 \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