a34e294f2627b93e955c89462231cfa47c4a4b3d
[occt.git] / src / Bnd / Bnd.cdl
1 -- File:        Bnd.cdl
2 -- Created:     Tue Jan  8 09:53:22 1991
3 -- Author:      Didier Piffault
4 --              <rle@topsn3>
5 ---Copyright:    Matra Datavision 1991, 1992
6 --- Modified by  hl1 (juillet 96) : ajout de SeqOfBox
7
8
9
10
11        --------------------------------------------------------
12        ---              I n f o r m a t i o n               ---
13        ---                                                  ---
14        ---  The Bnd_Tool class is now in the package Intf.  ---
15        --------------------------------------------------------
16
17
18
19
20
21 package Bnd 
22
23         ---Purpose: Supports the Boundings Volumes.  A Bounding Volume
24         --          is used to bound a shape to optimising algorithms.
25         --          If  a point is  outside the Bounding   Volume of a
26         --          shape it is also  outside the shape.  The contrary
27         --          is not necessarily true.
28         --          
29         --          Various classes are  then implemented to  describe
30         --          the usual  Bounding volumes. Not  all  classes are
31         --          implemented.
32         --          
33         --          in 3D :
34         --          Box                -- Implemented
35         --          BoundSortBox       -- Implemented
36         --          
37         --          in 2D :
38         --          Box2d              -- Implemented
39         --          BoundSortBox2d     -- Implemented
40         --          
41         --          
42
43         ---Level : Public. 
44         --  All methods of all  classes will be public.
45
46         
47 uses    Standard,
48         TCollection,
49         TColStd,
50         gp
51
52
53 is  class Box;
54         ---Purpose: A box parallel to the main axes.
55         --          A 3D Bounding.
56     class Array1OfBox instantiates Array1 from TCollection
57                                    (Box from Bnd);
58     class HArray1OfBox instantiates HArray1 from TCollection
59                                    (Box from Bnd,
60                                     Array1OfBox from Bnd);
61
62
63     class Box2d;
64         ---Purpose: A rectangle parallel to the main axes.
65         --          A 2D Bounding.
66     class Array1OfBox2d instantiates Array1 from TCollection
67                                    (Box2d from Bnd);
68     class HArray1OfBox2d instantiates HArray1 from TCollection
69                                    (Box2d from Bnd,
70                                     Array1OfBox2d from Bnd);
71
72
73     class BoundSortBox2d;
74         ---Purpose: A tool to sort a set of Box2d  and compare with an
75         --          other Box2d to find the list of touched items.
76
77
78     class BoundSortBox;
79         ---Purpose: A tool to sort a  set of Box  and compare with  an
80         --          other Box to find the list of touched items.
81
82
83     class SeqOfBox instantiates Sequence from TCollection (Box from Bnd);
84         ---Purpose: This sequence used to store the bounding boxes of sub-Shapes.
85     
86     --- Optimized boxes (no Gap, no infinity supported)
87     generic class B2x;
88     generic class B3x;
89
90     class B2d instantiates B2x from Bnd (Real from Standard);
91     -- 2D box with double-precision coordinates
92
93     class B2f instantiates B2x from Bnd (ShortReal from Standard);
94     -- 2D box with single-precision coordinates
95
96     class B3d instantiates B3x from Bnd (Real from Standard);
97     -- 3D box with double-precision coordinates
98
99     class B3f instantiates B3x from Bnd (ShortReal from Standard);
100     -- 3D box with single-precision coordinates
101
102 end Bnd;