]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.g2d.ontology/graph/G2D.pgraph
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.g2d.ontology / graph / G2D.pgraph
diff --git a/bundles/org.simantics.g2d.ontology/graph/G2D.pgraph b/bundles/org.simantics.g2d.ontology/graph/G2D.pgraph
new file mode 100644 (file)
index 0000000..e055f69
--- /dev/null
@@ -0,0 +1,260 @@
+L0 = <http://www.simantics.org/Layer0-1.1>\r
+SEL = <http://www.simantics.org/SelectionView-1.2>\r
+\r
+G2D = <http://www.simantics.org/G2D-1.1> : L0.Ontology\r
+    @L0.new\r
+    L0.HasResourceClass "org.simantics.diagram.stubs.G2DResource"\r
+\r
+G2D.Point2D <T L0.Literal\r
+    @L0.assert L0.HasDataType $(Double[2])\r
+    L0.HasDescription "A double valued property describing a two-dimensional point (x,y) in euclidian coordinates."\r
+\r
+G2D.Rectangle2D <T L0.Literal\r
+    @L0.assert L0.HasDataType $(Double[4])\r
+    L0.HasDescription "A double valued property describing a two-dimensional rectangle (x,y,width,height) in euclidian coordinates."\r
+\r
+G2D.HasPoint2D <R L0.DependsOn\r
+    --> G2D.Point2D\r
+\r
+// FIXME: use proper datatypes\r
+G2D.Point2DArray <T L0.DoubleArray\r
+    L0.HasDescription "An array of Point2D property values (x,y) as consecutive double values."\r
+\r
+G2D.HasPoint2DArray <R L0.DependsOn\r
+    --> G2D.Point2DArray\r
+\r
+// FIXME: use proper datatypes\r
+G2D.Transform <T L0.Literal\r
+    @L0.assert L0.HasDataType $(Double[6])\r
+    L0.HasDescription "A 2x3 matrix of six doubles representing an affine 2D transformation in column-major order."\r
+\r
+G2D.Transform."i-0" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "Scale (X)"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+G2D.Transform."i-1" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "Shear (Y)"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+G2D.Transform."i-2" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "Shear (X)"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+G2D.Transform."i-3" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "Scale (Y)"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+G2D.Transform."i-4" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "X"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+G2D.Transform."i-5" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
+    L0.HasLabel "Y"    \r
+    L0.HasSubliteralPredicate.Inverse G2D.Transform    \r
+\r
+G2D.HasTransform <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.Transform\r
+    L0.InverseOf G2D.IsTransformOf\r
+\r
+G2D.HasBounds <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Bounds"\r
+    --> G2D.Rectangle2D\r
+\r
+G2D.Shape <T L0.Entity\r
+    L0.HasDescription "A Graphics Node which has some kind of graphical representation."\r
+    @L0.optionalProperty G2D.HasStyle\r
+    @L0.singleProperty G2D.HasLineSegments\r
+    @L0.singleProperty G2D.HasLineSegmentTypes\r
+    @L0.optionalProperty G2D.HasFillColor\r
+    @L0.optionalProperty G2D.HasBorderColor\r
+\r
+G2D.HasLineSegments <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.Double\r
+G2D.HasLineSegmentTypes <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.Integer\r
+\r
+G2D.Style <T L0.Property\r
+    L0.HasDescription "A composite property describing a complete SVG style with stroke and fill attributes. An opacity defined for a Style represents an 'object opacity' which effects both stroke and fill opacity."\r
+    @L0.optionalProperty G2D.HasStroke\r
+    @L0.optionalProperty G2D.HasOpacity\r
+G2D.HasStyle <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.Style\r
+G2D.Stroke <T L0.Property\r
+    L0.HasDescription "A composite property describing all stroke painting attributes possible in SVG"\r
+    @L0.optionalProperty G2D.HasDashArray\r
+    @L0.optionalProperty G2D.HasDashOffset\r
+    @L0.optionalProperty G2D.HasStrokeWidth\r
+    @L0.optionalProperty G2D.HasMiterLimit\r
+    @L0.optionalProperty G2D.HasLineCap\r
+    @L0.optionalProperty G2D.HasLineJoin\r
+G2D.HasStroke <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.Stroke\r
+G2D.HasStrokeType <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Stroke Type"\r
+    --> G2D.StrokeType\r
+G2D.StrokeType <T L0.Property\r
+    @L0.tag L0.Enumeration\r
+G2D.StrokeType.Scaling : G2D.StrokeType\r
+G2D.StrokeType.Nonscaling : G2D.StrokeType\r
+G2D.LineEnd <T L0.Property\r
+    @L0.optionalProperty G2D.HasLineEndStyle\r
+    @L0.singleProperty G2D.HasSize\r
+    @L0.singleProperty G2D.HasWidthRatio\r
+    @L0.singleProperty G2D.HasSpace\r
+G2D.HasEndArrow <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "End Arrow"\r
+    --> G2D.LineEnd\r
+G2D.HasMidArrow <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Mid Arrow"\r
+    --> G2D.LineEnd\r
+G2D.HasBeginArrow <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Begin Arrow"\r
+    --> G2D.LineEnd\r
+G2D.LineEndStyle <T L0.Property\r
+    @L0.tag L0.Enumeration\r
+G2D.LineEndStyle.NormalLineEndStyle : G2D.LineEndStyle\r
+G2D.LineEndStyle.FilledLineEndStyle : G2D.LineEndStyle\r
+G2D.HasLineEndStyle <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Line End Style"\r
+    --> G2D.LineEndStyle\r
+G2D.Font <T L0.Property\r
+    L0.HasDescription "A composite property describing a single font configuration by its family, style and size."\r
+    @L0.singleProperty G2D.HasFontFamily\r
+    @L0.singleProperty G2D.HasFontStyle\r
+    @L0.singleProperty G2D.HasFontSize\r
+    @L0.assert G2D.HasFontFamily "Arial"\r
+    @L0.assert G2D.HasFontStyle G2D.FontStyle.normal_font_style\r
+    @L0.assert G2D.HasFontSize 12\r
+G2D.HasFont <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Font"\r
+    --> G2D.Font\r
+G2D.FontStyle <T L0.Property : L0.FunctionalRelation\r
+    @L0.tag L0.Enumeration\r
+    L0.HasDescription "An enumeration of the allowed font styles."\r
+G2D.FontStyle.normal_font_style : G2D.FontStyle\r
+G2D.FontStyle.italic_font_style : G2D.FontStyle\r
+G2D.FontStyle.bold_font_style : G2D.FontStyle\r
+G2D.FontStyle.bold_italic_style : G2D.FontStyle\r
+G2D.HasFontStyle <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Font Style"\r
+    --> G2D.FontStyle\r
+G2D.LineJoin <T L0.Property\r
+    @L0.tag L0.Enumeration\r
+G2D.LineJoin.MiterJoin : G2D.LineJoin\r
+G2D.LineJoin.RoundJoin : G2D.LineJoin\r
+G2D.LineJoin.BevelJoin : G2D.LineJoin\r
+G2D.HasLineJoin <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Line Join"\r
+    --> G2D.LineJoin\r
+G2D.LineCap <T L0.Property : L0.FunctionalRelation\r
+    @L0.tag L0.Enumeration\r
+G2D.LineCap.ButtCap : G2D.LineCap\r
+G2D.LineCap.RoundCap : G2D.LineCap\r
+G2D.LineCap.SquareCap : G2D.LineCap\r
+G2D.HasLineCap <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Line Cap"\r
+    --> G2D.LineCap\r
+G2D.HasPaint <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Paint"\r
+    --> L0.String\r
+G2D.HasOpacity <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Opacity"\r
+    --> L0.Float\r
+G2D.HasStrokeWidth <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Stroke Width"\r
+    --> L0.Float\r
+G2D.HasMiterLimit <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Miter Limit"\r
+    --> L0.Float\r
+G2D.HasDashArray <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.FloatArray\r
+    L0.HasDescription "The array represents the lengths of the dash segments. Alternate entries in the array represent the user space lengths of the opaque and transparent segments of the dashes."\r
+G2D.HasDashOffset <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.Float\r
+    L0.HasDescription "The dash phase is a distance specified in user coordinates that represents an offset into the dashing pattern."\r
+G2D.HasRadii <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.Point2D\r
+G2D.HasPathData <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.String\r
+G2D.HasText <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Text"\r
+    --> L0.String\r
+G2D.HasSize <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Size"\r
+    --> L0.Double\r
+G2D.HasWidthRatio <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Ratio of width to length"\r
+    --> L0.Double\r
+G2D.HasSpace <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Space"\r
+    --> L0.Double\r
+G2D.HasFontFamily <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Font Family"\r
+    --> L0.String\r
+G2D.HasFontSize <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Font Size"\r
+    --> L0.Integer\r
+\r
+G2D.Alignment <T L0.Property\r
+    @L0.tag L0.Enumeration\r
+G2D.Alignment.Leading : G2D.Alignment\r
+G2D.Alignment.Center : G2D.Alignment\r
+G2D.Alignment.Trailing : G2D.Alignment\r
+G2D.Alignment.Baseline : G2D.Alignment\r
+G2D.HasHorizontalAlignment <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Horizontal Alignment"\r
+    --> G2D.Alignment\r
+G2D.HasVerticalAlignment <R L0.IsRelatedTo : L0.FunctionalRelation\r
+    L0.HasLabel "Vertical Alignment"\r
+    --> G2D.Alignment\r
+\r
+G2D.Color <T L0.Literal\r
+    @L0.assert L0.HasDataType $(Float[4])\r
+    L0.HasDescription "A 4-component BGRA color as floats."\r
+G2D.HasColor <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Color"\r
+    --> G2D.Color\r
+G2D.HasFillColor <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Fill Color"\r
+    --> G2D.Color\r
+G2D.HasBorderColor <R L0.HasProperty : L0.FunctionalRelation\r
+    L0.HasLabel "Border Color"\r
+    --> G2D.Color\r
+\r
+G2D.ColorProfile <T L0.Library\r
+    L0.HasDescription "A collection of colors"\r
+\r
+G2D.Colors : G2D.ColorProfile\r
+    L0.ConsistsOf\r
+        [0.0,0.0,0.0,1.0] : G2D.Color\r
+            L0.HasName "black"\r
+        [1.0,1.0,1.0,1.0] : G2D.Color\r
+            L0.HasName "white"\r
+\r
+G2D.ColorGradient <T L0.Property\r
+    //TODO [G2D.HasColorPlacement card "1..*"]\r
+G2D.ColorPlacement <T L0.Property \r
+    @L0.singleProperty G2D.HasColor\r
+    @L0.singleProperty G2D.HasGradientPosition \r
+G2D.HasColorPlacement <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.ColorPlacement\r
+G2D.HasColorGradient <R L0.HasProperty : L0.FunctionalRelation\r
+    --> G2D.ColorGradient\r
+G2D.HasGradientPosition <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.Double\r
+\r
+G2D.DefaultStroke : G2D.Stroke\r
+    L0.HasDescription "Default Stroke with width = 1"\r
+    G2D.HasStrokeWidth 1.0 : L0.Float\r
+    G2D.HasDashArray [1.0] : L0.FloatArray\r
+    G2D.HasDashOffset 0.0 : L0.Float\r
+    G2D.HasMiterLimit 1.0 : L0.Float\r
+    G2D.HasLineCap G2D.LineCap.SquareCap\r
+    G2D.HasLineJoin G2D.LineJoin.RoundJoin\r
+\r
+G2D.HasRasterImage <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.ByteArray\r
+\r
+G2D.HasSVGDocument <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.String\r
+\r
+G2D.HasSVGScript <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.String\r
+\r
+G2D.IsVisible <R L0.HasProperty : L0.FunctionalRelation\r
+    --> L0.Boolean\r