0023024: Update headers of OCCT files
[occt.git] / src / TopTrans / TopTrans.cdl
1 -- Created on: 1991-10-28
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1991-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22
23 package TopTrans 
24
25         ---Purpose: This   package provides  algorithms  to    compute
26         --          complex transitions. A transition is the status of
27         --          geometry near the boundary of a Shape.  An example
28         --          is  the  intersection of  a  curve  and  a surface
29         --          enclosing a solid   , the transition  tells if the
30         --          parts of the curve just  before and just after the
31         --          intersection  are   inside, outside   or   on  the
32         --          boundary of the solid.
33         --          
34         --          The difficulty with transitions arise when dealing
35         --          with trimmed geometries like edges and faces. When
36         --          the geometric intersections are inside the trimmed
37         --          geometry the transition is usually computed by the
38         --          intersection algorithms   as the  trimming can  be
39         --          safely ignored. If the  intersection  falls on the
40         --          trimming  boundaries   one  must   consider    the
41         --          neighbouring entities. Consider as  an example the
42         --          intersection  of a  curve   and a   solid,  if the
43         --          intersection falls on an edge of the solid it does
44         --          not falls inside  the  two faces  adjacent to  the
45         --          edge, a complex transition occurs.
46         --          
47         --          This package provides two classes :
48         --          
49         --              * CurveTransition is  used to compute  complex
50         --              transitions with an other curve.
51         --              
52         --              * SurfaceTransition is used to compute complex
53         --              transitions in 3D space.
54         --              
55         --         The curves and surfaces are  given   by a first  or
56         --         second order  approximation around the intersection
57         --         point.   For a  curve, the  tangent  vector or  the
58         --         osculating circle. For  a surface the normal vector
59         --         or the osculating quadric.
60
61 uses
62     Standard,
63     TCollection,
64     TColStd,
65     gp,
66     TopAbs
67
68 is
69     
70     class Array2OfOrientation instantiates 
71         Array2 from TCollection (Orientation from TopAbs);
72     
73     class CurveTransition;
74     
75     class SurfaceTransition;
76
77 end TopTrans;