929cca5e1c5be6dc46e1b4f46af488ee9155ea28
[occt.git] / src / IntCurve / IntCurve.cdl
1 -- File:        IntCurve.cdl
2 -- Created:     Wed Mar  4 13:52:01 1992
3 -- Author:      Laurent BUCHARD
4 --              <lbr@phobox>
5 ---Copyright:    Matra Datavision 1992
6
7
8
9 package IntCurve
10
11     ---Purpose: This package provides algorithmes to intersect 2D curves,
12     --          with domains.
13     --          
14     --          class IntConicConic : Algorithm used to intersect 2 conics 
15     --                                from gp with domains.
16     --                                
17     --          class IntConicCurveGen : Generic algorithm used to intersect 
18     --                                   a conic from gp, and a parametrised
19     --                                   curve.
20     --                                   The parametrised Curve can 
21     --                                   not be a Composite curve and 
22     --                                   can not be a conic.
23     --                                   
24     --          class IntCurveCurveGen : Generic algorithm used to intersect 2
25     --                                   curves. The resources on a curve are
26     --                                   discribed in the class CurveTool.
27     --
28     --          class UserIntConicCurveGen: Generic algorithm used to  
29     --                                      intersect a Conic from gp 
30     --                                      and a parametrised curve. 
31     --                                      This curve can be either a  
32     --                                      composite curve or a conic. 
33     --
34
35
36     ---Level: Advanced 
37     -- 
38     -- The Classes <PConicTool,
39     --              IConicTool,
40     --              PConic,
41     --              ProjectOnPConicTool,
42     --              IntConicCurveGen, 
43     --              ProjPCurGen,
44     --              UserIntConicCurveGen,
45     --              IntPolyPolyGen,
46     --              ToolPolygon,
47     --              Polygon2dGen,
48     --              DistBetweenPCurvesGen>    are  Internal 
49     --
50     -- The Classe   <IntCurveCurveGen>        is   Advanced 
51     --
52     --
53
54
55
56 uses Standard , math, gp, TColgp, GeomAbs,
57      IntImpParGen, IntRes2d, Extrema,
58      StdFail, Bnd, Intf, TColStd
59      
60
61 is 
62
63     class IntConicConic;
64     ---Purpose: Intersection between 2 conics from gp.
65
66     generic class DistBetweenPCurvesGen;
67     
68     generic class Polygon2dGen;
69
70     generic class ToolPolygon;
71  
72     generic class IntPolyPolyGen,ThePolygon2d,
73                                  ThePolygon2dTool,
74                                  InterferencePoly2d,
75                                  TheDistBetweenPCurves, 
76                                  ExactIntersectionPoint;
77
78     generic class UserIntConicCurveGen;
79
80     generic class ProjPCurGen,TheCurveLocator,TheLocateExtPC;
81     
82     generic class IntConicCurveGen,TheIntersector;
83     ---Purpose: Intersection between a conic from gp and a bounded parametric curve.
84
85     generic class IntCurveCurveGen,TheProjPCur,
86                                    TheIntConicCurve,
87                                    IntConicCurve,
88                                    TheIntPCurvePCurve;
89                                    
90     ---Purpose: Intersection between 2 2d curves.
91     
92     private class ProjectOnPConicTool;
93     
94     class PConic;
95
96     class IConicTool;
97
98     private class PConicTool;
99               
100     private class IntImpConicParConic
101          instantiates Intersector from IntImpParGen
102              (IConicTool           from IntCurve,
103               PConic               from IntCurve,
104               PConicTool           from IntCurve,
105               ProjectOnPConicTool  from IntCurve);
106         
107
108         
109 end IntCurve;    
110