0024428: Implementation of LGPL license
[occt.git] / src / AIS / AIS_Circle.cdl
CommitLineData
b311480e 1-- Created on: 1997-01-21
2-- Created by: Prestataire Christiane ARMAND
3-- Copyright (c) 1997-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
973c2be1 8-- This library is free software; you can redistribute it and / or modify it
9-- under the terms of the GNU Lesser General Public version 2.1 as published
10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
b311480e 16
7fd59977 17-- GG : GER61351 17/11/1999 Change SetColor() with a compatible Quantity_Color instead
18-- the restricted NameOfColor.
7fd59977 19
20class Circle from AIS inherits InteractiveObject from AIS
21
22 ---Purpose: Constructs circle datums to be used in construction of
23 -- composite shapes.
24
25uses
26 Circle from Geom,
27 Point from Geom,
28 Presentation from Prs3d,
29 PresentationManager3d from PrsMgr,
30 NameOfColor from Quantity,
31 Color from Quantity,
32 Selection from SelectMgr,
33 Projector from Prs3d,
34 Transformation from Geom,
7fd59977 35 Line from AIS,
36 KindOfInteractive from AIS
37
38
39is
40 Create(aCircle : Circle from Geom)
41 returns mutable Circle from AIS;
42 ---Purpose: Initializes this algorithm for constructing AIS circle
43 -- datums initializes the circle aCircle
9e8804b6 44 Create(theCircle : Circle from Geom;
45 theUStart : Real from Standard;
46 theUEnd : Real from Standard;
47 theIsFilledCircleSens : Boolean from Standard = Standard_False)
7fd59977 48 returns mutable Circle from AIS;
9e8804b6 49 ---Purpose: Initializes this algorithm for constructing AIS circle datums.
50 -- Initializes the circle theCircle, the arc
51 -- starting point theUStart, the arc ending point theUEnd,
52 -- and the type of sensitivity theIsFilledCircleSens.
7fd59977 53
54 Compute(me : mutable;
55 aPresentationManager: PresentationManager3d from PrsMgr;
56 aPresentation : mutable Presentation from Prs3d;
57 aMode : Integer from Standard = 0)
58 is redefined static private;
59
60 Compute(me:mutable;
61 aProjector: Projector from Prs3d;
62 aPresentation: mutable Presentation from Prs3d)
63 is redefined static private;
64
7fd59977 65 Compute(me : mutable;
66 aProjector : Projector from Prs3d;
67 aTrsf : Transformation from Geom;
68 aPresentation : mutable Presentation from Prs3d)
69 is redefined;
70 ---Purpose: computes the presentation according to a point of view
71 -- given by <aProjector>.
72 -- To be Used when the associated degenerated Presentations
73 -- have been transformed by <aTrsf> which is not a Pure
74 -- Translation. The HLR Prs can't be deducted automatically
75 -- WARNING :<aTrsf> must be applied
76 -- to the object to display before computation !!!
77
78-- Methods from SelectableObject
79
80 ComputeSelection(me : mutable;
81 aSelection : mutable Selection from SelectMgr;
82 aMode : Integer from Standard)is private;
83
84
85-- Methods from InteractiveObject
86
87
88 Signature(me) returns Integer from Standard is redefined;
89 ---C++: inline
90 ---Purpose: Returns index 6 by default.
91
92 Type(me) returns KindOfInteractive from AIS is redefined;
93 ---C++: inline
94 ---Purpose: Indicates that the type of Interactive Object is a datum.
95
96 Circle(me) returns any Circle from Geom;
97 ---C++: inline
98 ---C++: return const &
99 ---Purpose: Returns the circle component defined in SetCircle.
100
101 Parameters(me; u1,u2 : in out Real from Standard);
102 ---C++: inline
103 ---Purpose:
104 -- Constructs instances of the starting point and the end
105 -- point parameters, u1 and u2.
106
107 SetCircle(me:mutable;aCircle : Circle from Geom);
108 ---C++: inline
109 ---Purpose: Allows you to provide settings for the circle datum aCircle.
110
111 SetFirstParam(me:mutable;u:Real);
112 ---C++: inline
113 ---Purpose: Allows you to set the parameter u for the starting point of an arc.
114
115 SetLastParam(me:mutable;u:Real);
116 ---C++: inline
117 ---Purpose: Allows you to provide the parameter u for the end point of an arc.
118
119 SetColor(me :mutable; aColor : NameOfColor from Quantity)
120 is redefined static;
121 --- Purpose: Assigns the color aColor to the solid line boundary of the circle datum.
122 SetColor(me :mutable; aColor : Color from Quantity)
123 is redefined static;
124
125 SetWidth(me:mutable; aValue:Real from Standard)
126 is redefined static;
127 ---Purpose: Assigns the width aValue to the solid line boundary of the circle datum.
128 UnsetColor(me:mutable)
129 is redefined static;
130 ---Purpose: Removes color from the solid line boundary of the circle datum.
131 UnsetWidth(me:mutable)
132 is redefined static;
133 ---Purpose: Removes width settings from the solid line boundary of the circle datum.
134
9e8804b6 135 IsFilledCircleSens (me) returns Boolean from Standard;
136 ---C++: inline
137 ---Purpose: Returns the type of sensitivity for the circle;
138
139 SetFilledCircleSens (me: mutable;
140 theIsFilledCircleSens : Boolean from Standard);
141 ---C++: inline
142 ---Purpose: Sets the type of sensitivity for the circle. If theIsFilledCircleSens set to Standard_True
143 -- then the whole circle will be detectable, otherwise only the boundary of the circle.
7fd59977 144
145 ComputeCircle(me: mutable;
146 aPresentation : mutable Presentation from Prs3d)
147 is private;
148
149 ComputeArc(me: mutable;
150 aPresentation : mutable Presentation from Prs3d)
151 is private;
152
153 ComputeCircleSelection(me: mutable;
154 aSelection : mutable Selection from SelectMgr)
155 is private;
156
157 ComputeArcSelection(me: mutable;
158 aSelection : mutable Selection from SelectMgr)
159 is private;
160
161fields
162
163 myComponent : Circle from Geom;
164 myUStart : Real from Standard;
165 myUEnd : Real from Standard;
166 myCircleIsArc : Boolean from Standard;
9e8804b6 167 myIsFilledCircleSens : Boolean from Standard;
7fd59977 168
169end Circle ;