blob: 2dbfa7105afcdd7eee2baac58c8c4a761fe528a5 (
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
|
--
-- File : CircArraySubfigure.cdl
-- Created : Mon 11 Jan 1993
-- Author : CKY / Contract Toubro-Larsen ( Niraj RANGWALA )
--
---Copyright : MATRA-DATAVISION 1993
--
class CircArraySubfigure from IGESDraw
inherits IGESEntity
---Purpose: Defines IGES Circular Array Subfigure Instance Entity,
-- Type <414> Form Number <0> in package IGESDraw
--
-- Used to produce copies of object called the base entity,
-- arranging them around the edge of an imaginary circle
-- whose center and radius are specified
uses
HArray1OfInteger from TColStd,
XYZ from gp,
Pnt from gp
raises OutOfRange
is
Create returns mutable CircArraySubfigure;
-- Specific Methods pertaining to the class
Init (me : mutable;
aBase : IGESEntity;
aNumLocs : Integer;
aCenter : XYZ;
aRadius : Real;
aStAngle : Real;
aDelAngle : Real;
aFlag : Integer;
allNumPos : HArray1OfInteger);
---Purpose : This method is used to set the fields of the class
-- CircArraySubfigure
-- - aBase : Base entity
-- - aNumLocs : Total number of possible instance locations
-- - aCenter : Coordinates of Center of imaginary circle
-- - aRadius : Radius of imaginary circle
-- - aStAngle : Start angle in radians
-- - aDelAngle : Delta angle in radians
-- - aFlag : DO-DON'T flag to control which portion to
-- display
-- - allNumPos : All position to be or not to be processed
BaseEntity (me) returns IGESEntity;
---Purpose : returns the base entity, copies of which are produced
NbLocations (me) returns Integer;
---Purpose : returns total number of possible instance locations
CenterPoint (me) returns Pnt;
---Purpose : returns the center of the imaginary circle
TransformedCenterPoint (me) returns Pnt;
---Purpose : returns the Transformed center of the imaginary circle
CircleRadius (me) returns Real;
---Purpose : returns the radius of the imaginary circle
StartAngle (me) returns Real;
---Purpose : returns the start angle in radians
DeltaAngle (me) returns Real;
---Purpose : returns the delta angle in radians
ListCount (me) returns Integer;
---Purpose : returns 0 if all elements to be displayed
DisplayFlag (me) returns Boolean;
---Purpose : returns True if (ListCount = 0) all elements are to be displayed
DoDontFlag (me) returns Boolean;
---Purpose : returns 0 if half or fewer of the elements of the array are defined
-- 1 if half or more of the elements are defined
PositionNum (me; Index : Integer) returns Boolean
raises OutOfRange;
---Purpose : returns whether Index is to be processed (DO)
-- or not to be processed(DON'T)
-- if (ListCount = 0) return theDoDontFlag
-- raises exception if Index <= 0 or Index > ListCount().
ListPosition (me; Index : Integer) returns Integer
raises OutOfRange;
---Purpose : returns the Index'th value position
-- raises exception if Index <= 0 or Index > ListCount().
fields
--
-- Class : IGESDraw_CircArraySubfigure
--
-- Purpose : Declaration of the variables specific to a CircArraySubfigure.
--
-- Reminder : A Circular Array Subfigure Instance is defined by :
-- - a base entity which is replicated
-- - total number of possible instance locations
-- - coordinates of Center of imaginary circle
-- - radius of imaginary circle
-- - start angle to govern the location of first instance
-- - delta angle to govern successive instances' distribution
-- - a DO-DON'T flag to control which portion to display
--
theBaseEntity : IGESEntity;
theNbLocations : Integer;
theCenter : XYZ;
theRadius : Real;
theStartAngle : Real;
theDeltaAngle : Real;
theDoDontFlag : Integer;
thePositions : HArray1OfInteger;
end CircArraySubfigure;
|