0024428: Implementation of LGPL license
[occt.git] / src / BRepPrimAPI / BRepPrimAPI.cdl
1 -- Created on: 1993-07-06
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 package BRepPrimAPI 
18
19         ---Purpose: The  BRepBuilderAPI  package   provides  an   Application
20         --          Programming Interface  for the BRep  topology data
21         --          structure.
22         --          
23         --          The API is a set of classes aiming to provide :
24         --          
25         --          * High level and simple calls  for the most common
26         --          operations. 
27         --          
28         --          *    Keeping   an   access  on    the    low-level
29         --          implementation of high-level calls.
30         --          
31         --          * Examples  of programming of high-level operations
32         --          from low-level operations.
33         --          
34         --          * A complete coverage of modelling :
35         --          
36         --             - Creating vertices ,edges, faces, solids.
37         --             
38         --             - Sweeping operations.
39         --             
40         --             - Boolean operations.
41         --             
42         --             - Global properties computation.
43         --
44         --          
45         --          The API provides  classes to  build  objects:
46         --          
47         --          * The  constructors  of the classes  provides  the
48         --          different constructions methods.
49         --          
50         --          * The  class keeps as fields the   different tools
51         --          used to build the object.
52         --          
53         --          *   The class  provides  a  casting  method to get
54         --          automatically the  result  with  a   function-like
55         --          call. 
56         --          
57         --          For example to make a  vertex <V> from a point <P>
58         --          one can writes :
59         --          
60         --          V = BRepBuilderAPI_MakeVertex(P);
61         --          
62         --          or
63         --          
64         --          BRepBuilderAPI_MakeVertex MV(P);
65         --          V = MV.Vertex();
66         --          
67         --          
68         --          For tolerances  a default precision is  used which
69         --          can    be   changed    by    the   packahe  method
70         --          BRepBuilderAPI::Precision. 
71         --          
72         --          For error handling the BRepBuilderAPI commands raise only
73         --          the NotDone error. When Done is false on a command
74         --          the error description can be asked to the command.
75         --          
76         --          In  theory  the  comands can be    called with any
77         --          arguments, argument  checking  is performed by the
78         --          command.
79         
80         
81
82 uses
83     StdFail,
84     gp,
85     TColgp,
86     Geom2d,
87     Geom,
88     GeomAbs,
89     TopAbs,
90     TopoDS,
91     TopTools,
92     TopLoc,
93     BRep,
94     BRepLib,
95     BRepTools,
96     BRepPrim,
97     BRepBuilderAPI, 
98     BRepSweep
99
100 is
101     
102     --
103     --  Primitives
104     --  
105     
106     class MakeHalfSpace;           ---  inherits MakeShape from BRepBuilderAPI
107
108     class MakeBox;                 ---  inherits MakeShape from BRepBuilderAPI
109     
110     class MakeWedge;               ---  inherits MakeShape from BRepBuilderAPI
111     
112     deferred class MakeOneAxis;    ---  inherits MakeShape from BRepBuilderAPI
113         ---Purpose: Root class for rotational primitives.
114     
115     class MakeCylinder;            ---  inherits MakeShape from BRepBuilderAPI
116     
117     class MakeCone;                ---  inherits MakeShape from BRepBuilderAPI
118     
119     class MakeSphere;              ---  inherits MakeOneAxis from BRepPrimAPI 
120     
121     class MakeTorus;               ---  inherits MakeOneAxis from BRepPrimAPI
122     
123     class MakeRevolution;          ---  inherits MakeOneAxis from BRepPrimAPI
124
125     --
126     -- Sweeping
127     -- 
128
129     deferred class MakeSweep;      ---  inherits MakeShape from BRepBuilderAPI
130
131     class MakePrism;               ---  inherits MakeSweep from BRepPrimAPI
132     
133     class MakeRevol;               ---  inherits MakeSweep from BRepPrimAPI
134     
135  
136
137
138 end BRepPrimAPI;