0024326: Get rid of confusing extension line
[occt.git] / src / Prs3d / Prs3d_DimensionAspect.cdl
... / ...
CommitLineData
1-- Copyright (c) 1993-1999 Matra Datavision
2-- Copyright (c) 1999-2012 OPEN CASCADE SAS
3--
4-- The content of this file is subject to the Open CASCADE Technology Public
5-- License Version 6.5 (the "License"). You may not use the content of this file
6-- except in compliance with the License. Please obtain a copy of the License
7-- at http://www.opencascade.org and read it completely before using this file.
8--
9-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
10-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
11--
12-- The Original Code and all software distributed under the License is
13-- distributed on an "AS IS" basis, without warranty of any kind, and the
14-- Initial Developer hereby disclaims all such warranties, including without
15-- limitation, any warranties of merchantability, fitness for a particular
16-- purpose or non-infringement. Please see the License for the specific terms
17-- and conditions governing the rights and limitations under the License.
18
19class DimensionAspect from Prs3d inherits BasicAspect from Prs3d
20
21 ---Purpose: defines the attributes when drawing a Length Presentation.
22uses
23 DimensionTextHorizontalPosition from Prs3d,
24 DimensionTextVerticalPosition from Prs3d,
25 DimensionArrowOrientation from Prs3d,
26 AspectLine3d from Graphic3d,
27 ArrowAspect from Prs3d,
28 LineAspect from Prs3d,
29 TextAspect from Prs3d,
30 NameOfColor from Quantity,
31 Color from Quantity,
32 TypeOfLine from Aspect,
33 PlaneAngle from Quantity,
34 TypeOfLine from Aspect
35is
36
37 Create returns mutable DimensionAspect from Prs3d;
38 --- Purpose: Constructs an empty framework to define the display of dimensions.
39
40 LineAspect(me) returns mutable LineAspect from Prs3d;
41 ---Purpose: Returns the settings for the display of lines used in presentation of dimensions.
42
43 SetLineAspect(me: mutable; theAspect: LineAspect from Prs3d);
44 ---Purpose: Sets the display attributes of lines used in presentation of dimensions.
45
46 TextAspect(me) returns mutable TextAspect from Prs3d is static;
47 --- Purpose: Returns the settings for the display of text used in presentation of dimensions.
48
49 SetTextAspect(me:mutable; theAspect: TextAspect from Prs3d) is static;
50 ---Purpose: Sets the display attributes of text used in presentation of dimensions.
51
52 IsText3d(me) returns Boolean from Standard;
53 --- Purpose: Check if text for dimension label is 3d.
54
55 MakeText3d (me:mutable; isText3d: Boolean from Standard);
56 ---Purpose: Sets type of text.
57
58 IsTextShaded (me) returns Boolean from Standard;
59 --- Purpose: Check if 3d text for dimension label is shaded.
60
61 MakeTextShaded (me: mutable; isTextShaded: Boolean from Standard);
62 --- Purpose: Turns on/off text shading for 3d text.
63
64 IsArrows3d(me) returns Boolean from Standard;
65 --- Purpose: Gets type of arrows.
66
67 MakeArrows3d (me:mutable; isArrows3d: Boolean from Standard);
68 ---Purpose: Sets type of arrows.
69
70 SetArrowOrientation(me: mutable; theArrowOrient: DimensionArrowOrientation from Prs3d);
71 --- Purpose: Sets orientation of arrows (external or internal).
72 -- By default orientation is chosen automatically according to situation and text label size.
73
74 ArrowOrientation (me) returns DimensionArrowOrientation from Prs3d;
75 --- Purpose: Gets orientation of arrows (external or internal).
76
77 SetTextVerticalPosition (me: mutable; thePosition : DimensionTextVerticalPosition from Prs3d);
78 --- Purpose: Sets vertical text alignment for text label.
79
80 TextVerticalPosition (me) returns DimensionTextVerticalPosition from Prs3d;
81 --- Purpose: Gets vertical text alignment for text label.
82
83 SetTextHorizontalPosition (me: mutable; thePosition: DimensionTextHorizontalPosition from Prs3d);
84 --- Purpose: Sets horizontal text alignment for text label.
85
86 TextHorizontalPosition (me) returns DimensionTextHorizontalPosition from Prs3d;
87 --- Purpose: Gets horizontal text alignment for text label.
88
89 ArrowAspect(me) returns mutable ArrowAspect from Prs3d is static;
90 --- Purpose: Returns the settings for displaying arrows.
91
92 SetArrowAspect(me: mutable; theAspect: ArrowAspect from Prs3d) is static;
93 ---Purpose: Sets the display attributes of arrows used in presentation of dimensions.
94
95 SetCommonColor(me:mutable; theColor: Color from Quantity) is static;
96 ---Purpose: Sets the same color for all parts of dimension: lines, arrows and text.
97
98 SetExtensionSize (me : mutable; theSize : Real from Standard) is static;
99 ---Purpose: Sets extension size.
100
101 ExtensionSize (me) returns Real from Standard;
102 ---Purpose: Returns extension size.
103
104fields
105
106 myLineAspect: LineAspect from Prs3d;
107 ---Purpose: Text style. The size for 3d (or 2d) text is also inside here.
108
109 myTextAspect: TextAspect from Prs3d;
110 myArrowAspect : ArrowAspect from Prs3d;
111 myIsText3d : Boolean from Standard;
112 myIsTextShaded : Boolean from Standard;
113 myIsArrows3d: Boolean from Standard;
114
115 myArrowOrientation : DimensionArrowOrientation from Prs3d;
116 ---Purpose: Dimension arrow orientation.
117 -- By default, it is computed automatically. Its value depends on the text
118 -- bouning rectangle size and distance between two flyouts.
119 -- By default, it is "fit" one.
120
121 myTextHPosition : DimensionTextHorizontalPosition from Prs3d;
122 ---Purpose: Defines horizontal position of text value label, by default it is
123 -- "fit" - selected automatically depending on label-to-dimension size relation.
124
125 myTextVPosition : DimensionTextVerticalPosition from Prs3d;
126 ---Purpose: Defines vertical position of text value label, by default it is center.
127
128 myExtensionSize : Real from Standard;
129 ---Purpose: Size of arrow extensions.
130 -- The length of arrow tails if arrows are located outside dimension line.
131
132end DimensionAspect from Prs3d;