0024624: Lost word in license statement in source files
[occt.git] / src / BRepOffsetAPI / BRepOffsetAPI_MakeEvolved.cdl
1 -- Created on: 1995-09-18
2 -- Created by: Bruno DUMORTIER
3 -- Copyright (c) 1995-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 under
9 -- the terms of the GNU Lesser General Public License 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 class MakeEvolved from BRepOffsetAPI inherits MakeShape from BRepBuilderAPI
18
19         ---Purpose: Describes functions to build evolved shapes.
20         -- An evolved shape is built from a planar spine (face or
21         -- wire) and a profile (wire). The evolved shape is the
22         -- unlooped sweep (pipe) of the profile along the spine.
23         -- Self-intersections are removed.
24         -- A MakeEvolved object provides a framework for:
25         -- - defining the construction of an evolved shape,
26         -- - implementing the construction algorithm, and
27         -- - consulting the result.
28         --        Computes an Evolved by 
29         --             1 - sweeping a profil along a spine.
30         --             2 - removing the self-intersections.
31         --             
32         --  The profile is defined in a Referential R. The position of
33         --  the profile at the current point of the  spine is given by
34         --  confusing R  and the local  referential given by (  D0, D1
35         --  and the normal of the Spine)
36         --  
37         --  If the Boolean <AxeProf> is  true, R is  O,X,Y,Z 
38         --  else R is defined as the local refential at the nearest 
39         --  point of the profil to the spine.
40         --  
41         --   if <Solid> is TRUE the Shape result  is completed to be a
42         --   solid or a compound of solids.
43
44
45
46 uses
47     Evolved     from BRepFill,
48     ListOfShape from TopTools,
49     Shape       from TopoDS,    
50     Face        from TopoDS,
51     Wire        from TopoDS,
52     JoinType    from GeomAbs
53     
54 is
55     Create returns MakeEvolved from BRepOffsetAPI;
56     
57     Create( Spine      : Wire      from TopoDS;
58             Profil     : Wire      from TopoDS;
59             Join       : JoinType  from GeomAbs  = GeomAbs_Arc;
60             AxeProf    : Boolean   from Standard = Standard_True;
61             Solid      : Boolean   from Standard = Standard_False;
62             ProfOnSpine: Boolean   from Standard = Standard_False;
63             Tol        : Real      from Standard = 0.0000001)
64         ---Purpose: 
65         ---Level: Public 
66     returns MakeEvolved from BRepOffsetAPI;
67
68     Create( Spine      : Face      from TopoDS;
69             Profil     : Wire      from TopoDS;
70             Join       : JoinType  from GeomAbs  = GeomAbs_Arc;
71             AxeProf    : Boolean   from Standard = Standard_True;
72             Solid      : Boolean   from Standard = Standard_False;
73             ProfOnSpine: Boolean   from Standard = Standard_False;
74             Tol        : Real      from Standard = 0.0000001)
75         ---Purpose: These constructors construct an evolved shape by sweeping the profile
76         -- Profile along the spine Spine.
77         --      The profile is defined in a coordinate system R.
78         -- The coordinate system is determined by AxeProf:
79         -- - if AxeProf is true, R is the global coordinate system,
80         -- - if AxeProf is false, R is computed so that:
81         --   - its origin is given by the point on the spine which is
82         --    closest to the profile,
83         --   - its "X Axis" is given by the tangent to the spine at this point, and
84         -- - its "Z Axis" is the normal to the plane which contains the spine.
85         --        The position of the profile at the current point of the
86         -- spine is given by making R coincident with the local
87         -- coordinate system given by the current point, the
88         -- tangent vector and the normal to the spine.
89         -- Join defines the type of pipe generated by the salient
90         -- vertices of the spine. The default type is GeomAbs_Arc
91         -- where the vertices generate revolved pipes about the
92         -- axis passing along the vertex and the normal to the
93         -- plane of the spine. At present, this is the only
94         -- construction type implemented.
95     returns MakeEvolved from BRepOffsetAPI;
96
97     Evolved(me) returns Evolved from BRepFill
98         ---C++: return const &
99         ---Level: Advanced
100     is static;
101
102     Build(me : in out)
103     is redefined;
104         ---Purpose: Builds the resulting shape (redefined from MakeShape).
105         ---Level: Public    
106
107     GeneratedShapes (me ;
108                      SpineShape : Shape from TopoDS;
109                      ProfShape  : Shape from TopoDS)
110         ---Purpose: Returns   the  shapes  created  from   a  subshape
111         --          <SpineShape>  of     the  spine   and   a subshape
112         --          <ProfShape> on the profile.
113         ---C++ : return const &          
114     returns ListOfShape from TopTools
115     is static;                   
116
117     Top (me) returns Shape from TopoDS
118        ---Purpose: Return the face Top if <Solid> is True in the constructor.
119        ---C++ : return const &
120     is static;
121
122     Bottom (me) returns Shape from TopoDS
123        ---Purpose: Return the face Bottom  if <Solid> is True in the constructor.
124        ---C++ : return const &
125     is static;
126     
127 fields
128     myEvolved : Evolved from BRepFill;
129     
130 end MakeEvolved;