Integration of OCCT 6.5.0 from SVN
[occt.git] / src / Bnd / Bnd_B2x.cdl
CommitLineData
7fd59977 1-- File: Bnd_B2x.cdl
2-- Created: Thu Sep 8 17:39:16 2005
3-- Author: Alexander GRIGORIEV
4-- <agv@opencascade.com>
5---Copyright: Open Cascade 2005
6
7generic class B2x from Bnd (RealType as any)
8
9uses XY from gp,
10 Ax2d from gp,
11 Pnt2d from gp,
12 Trsf2d from gp
13
14is
15
16 Create returns B2x from Bnd;
17 ---Purpose: Empty constructor.
18 ---C++: inline
19
20 Create (theCenter: XY from gp; theHSize : XY from gp)
21 returns B2x from Bnd;
22 ---Purpose: Constructor.
23 ---C++: inline
24
25 IsVoid (me)
26 returns Boolean from Standard;
27 ---Purpose: Returns True if the box is void (non-initialized).
28 ---C++: inline
29
30 Clear (me:in out);
31 ---Purpose: Reset the box data.
32 ---C++: inline
33
34 Add (me:in out; thePnt: XY from gp);
35 ---Purpose: Update the box by a point.
36
37 Add (me:in out; thePnt: Pnt2d from gp);
38 ---Purpose: Update the box by a point.
39
40 Add (me:in out; theBox: B2x from Bnd);
41 ---Purpose: Update the box by another box.
42 ---C++: inline
43
44 CornerMin (me)
45 returns XY from gp;
46 ---Purpose: Query a box corner: (Center - HSize). You must make sure that
47 -- the box is NOT VOID (see IsVoid()), otherwise the method returns
48 -- irrelevant result.
49 ---C++: inline
50
51 CornerMax (me)
52 returns XY from gp;
53 ---Purpose: Query a box corner: (Center + HSize). You must make sure that
54 -- the box is NOT VOID (see IsVoid()), otherwise the method returns
55 -- irrelevant result.
56 ---C++: inline
57
58 SquareExtent(me)
59 returns Real from Standard;
60 ---Purpose: Query the square diagonal. If the box is VOID (see method IsVoid())
61 -- then a very big real value is returned.
62 ---C++: inline
63
64 Enlarge (me:in out; theDiff: Real from Standard);
65 ---Purpose: Extend the Box by the absolute value of theDiff.
66 ---C++: inline
67
68 Limit (me:in out; theOtherBox: B2x from Bnd)
69 returns Boolean from Standard;
70 ---Purpose: Limit the Box by the internals of theOtherBox.
71 -- Returns True if the limitation takes place, otherwise False
72 -- indicating that the boxes do not intersect.
73
74 Transformed (me; theTrsf: Trsf2d from gp)
75 returns B2x from Bnd;
76 ---Purpose: Transform the bounding box with the given transformation.
77 -- The resulting box will be larger if theTrsf contains rotation.
78
79 IsOut (me; thePnt: XY from gp)
80 returns Boolean from Standard;
81 ---Purpose: Check the given point for the inclusion in the Box.
82 -- Returns True if the point is outside.
83 ---C++: inline
84
85 IsOut (me; theCenter : XY from gp;
86 theRadius : Real from Standard;
87 isCircleHollow: Boolean from Standard = Standard_False)
88 returns Boolean from Standard;
89 ---Purpose: Check a circle for the intersection with the current box.
90 -- Returns True if there is no intersection between boxes.
91
92 IsOut (me; theOtherBox: B2x from Bnd)
93 returns Boolean from Standard;
94 ---Purpose: Check the given box for the intersection with the current box.
95 -- Returns True if there is no intersection between boxes.
96 ---C++: inline
97
98 IsOut (me; theOtherBox: B2x from Bnd; theTrsf: Trsf2d from gp)
99 returns Boolean from Standard;
100 ---Purpose: Check the given box oriented by the given transformation
101 -- for the intersection with the current box.
102 -- Returns True if there is no intersection between boxes.
103
104 IsOut (me; theLine: Ax2d from gp)
105 returns Boolean from Standard;
106 ---Purpose: Check the given Line for the intersection with the current box.
107 -- Returns True if there is no intersection.
108
109 IsOut (me; theP0, theP1: XY from gp)
110 returns Boolean from Standard;
111 ---Purpose: Check the Segment defined by the couple of input points
112 -- for the intersection with the current box.
113 -- Returns True if there is no intersection.
114
115 IsIn (me; theBox: B2x from Bnd)
116 returns Boolean from Standard;
117 ---Purpose: Check that the box 'this' is inside the given box 'theBox'. Returns
118 -- True if 'this' box is fully inside 'theBox'.
119 ---C++: inline
120
121 IsIn (me; theBox: B2x from Bnd; theTrsf: Trsf2d from gp)
122 returns Boolean from Standard;
123 ---Purpose: Check that the box 'this' is inside the given box 'theBox'
124 -- transformed by 'theTrsf'. Returns True if 'this' box is fully
125 -- inside the transformed 'theBox'.
126
127 SetCenter (me: in out; theCenter: XY from gp);
128 ---Purpose: Set the Center coordinates
129 ---C++: inline
130
131 SetHSize (me: in out; theHSize: XY from gp);
132 ---Purpose: Set the HSize (half-diagonal) coordinates.
133 -- All components of theHSize must be non-negative.
134 ---C++: inline
135
136
137fields
138
139 myCenter : RealType[2] is protected;
140 myHSize : RealType[2] is protected;
141
142end B2x from Bnd;