summaryrefslogtreecommitdiff
path: root/src/Prs2d/Prs2d.cdl
blob: e4617a8f3349dde667e6dd592b2bc0f9bcd58067 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
-- File     : Prs2d.cdl
-- Created  : February  2000
-- Author   : Tanya COOL
---Copyright: Matra Datavision 2000

package Prs2d
 
 ---Purpose: package provides the graphic attribute manager Drawer,
 --          the set of aspect classes for storing hte session attributes 
 --          and default attributes for the objects. 

uses

	Graphic2d,
	Aspect,
  	Quantity,
	TShort,
	Standard,
	gp,
	Geom2d,
	TCollection,
	TColgp,
	TColStd,
	TopoDS,
	GCPnts
is
    enumeration AspectName is

        AN_UNKNOWN,
        AN_LINE,
        AN_HIDDENLINE,
        AN_TEXT,
        AN_HIDINGPOLY,
	    AN_HIDINGTEXT,
	    AN_FRAMEDTEXT,
        
    -- For new aspect types
        AN_LAST

    end AspectName;

    enumeration TypeOf2DObject is

		 TOO_UNKNOWN,
		 TOO_ANGLE,
		 TOO_ARROW,
		 TOO_CURVE,
		 TOO_DATUM,
		 TOO_DIAMETER,
		 TOO_ELLIPSERADIUS,
		 TOO_EQUALDISTANCE,
		 TOO_LENGTH
							
	end TypeOf2DObject;
			  
    enumeration ArrowSide is 

        AS_NONE, 
        AS_FIRSTAR, 
        AS_LASTAR, 
        AS_BOTHAR, 
        AS_FIRSTPT, 
        AS_LASTPT, 
        AS_BOTHPT,
        AS_FIRSTAR_LASTPT, 
        AS_FIRSTPT_LASTAR
				
	end ArrowSide;
              
    enumeration TypeOfArrow is 

        TOA_OPENED,
        TOA_CLOSED,
        TOA_FILLED
	
    end TypeOfArrow;

    enumeration TypeOfDist is 
      
	  TOD_AUTOMATIC,
	  TOD_OBLIQUE,
	  TOD_HORIZONTAL,
	  TOD_VERTICAL
	  
    end TypeOfDist;

    enumeration TypeOfAxis is 
    
	  TOAX_Unknown,
	  TOAX_XAxis,
	  TOAX_YAxis

    end TypeOfAxis;

	enumeration TypeOfTolerance is 
	   
	   TOT_TAPER,
	   TOT_SYMTOTAL,
       TOT_SYMCIRCULAR,
       TOT_SYMMETRY,
       TOT_CONCENTRIC,
	   TOT_POSITION,
       TOT_ANGULARITY,
	   TOT_PERPENDIC,
	   TOT_PARALLELISM,
	   TOT_SURFACEPROF,
	   TOT_LINEPROF,
	   TOT_CYLINDRIC,
	   TOT_CIRCULARITY,
	   TOT_FLATNESS,
	   TOT_STRAIGHTNESS,
	   TOT_NONE

	end TypeOfTolerance;
    
    enumeration TypeOfSymbol is 
      
	  TOS_NONE,
	  TOS_DIAMETER,


      TOS_LAST
	  
    end TypeOfSymbol;

    enumeration TypeOfRadius is 
      
	  TOR_STANDARD,
	  TOR_CENTER,
	  TOR_REVARROW,
	  TOR_CENTREV, 
      TOR_NONE
	  
    end TypeOfRadius;

    exception SymbolDefinitionError inherits OutOfRange;
        
    deferred class AspectRoot;
    
    -- Standard aspects

    class AspectLine;
    class AspectText;

    class AspectHidingPoly; 
    class AspectHidingText;
    class AspectFramedText;
	
	-- Standard primitives
	
	class Point;
	class Axis;
	class Arrow;

	-- Dimensions 

    deferred class Dimension;
	class Angle;
	class Length;
    class Radius;
	class Diameter;
	class Repere;
    
    class RadiusIndep;

	class ToleranceFrame;

	deferred class Tolerance;

	class Straightness;
	class Flatness;
	class Circularity;
    class Cylindric;
	class LineProfile;
	class SurfProfile;
	class Parallelism;
    class Perpendicular;
	class Angularity;
	class Position;
	class Concentric;
	class Symmetry;
	class SymTotal;
    class SymCircular;
	class Taper;

    class DrawSymbol;

    class Drawer;
 			
    class DataMapOfAspectRoot instantiates DataMap from TCollection
          ( Integer from Standard,
            AspectRoot from Prs2d,
            MapIntegerHasher from  TColStd );

end Prs2d;