Test for 0022778: Bug in BRepMesh
[occt.git] / src / BRepFill / BRepFill_NSections.cdl
1 -- Created on: 1998-12-29
2 -- Created by: Joelle CHAUVET
3 -- Copyright (c) 1998-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 class NSections from BRepFill inherits  SectionLaw  from  BRepFill
24
25         ---Purpose: Build Section Law, with N Sections
26         --          
27         ---Level: Advanced
28        
29 uses 
30  SectionLaw          from  GeomFill,  
31  HArray1OfSectionLaw from  GeomFill,
32  SequenceOfTrsf      from  GeomFill,
33  BSplineSurface      from  Geom, 
34  HArray2OfShape      from  TopTools,  
35  SequenceOfReal      from  TColStd,  
36  SequenceOfShape     from  TopTools,  
37  Shape               from  GeomAbs,
38  Vertex              from  TopoDS, 
39  Wire                from  TopoDS,  
40  Edge                from  TopoDS,  
41  Shape               from  TopoDS, 
42  Function            from  Law
43
44 is  
45   Create (S:SequenceOfShape  from  TopTools;   
46           Build :  Boolean = Standard_True)   
47      ---Purpose: Construct    
48   returns NSections from BRepFill;  
49    
50   Create (S      :  SequenceOfShape from  TopTools; 
51           Trsfs  :  SequenceOfTrsf  from  GeomFill; 
52           P      :  SequenceOfReal  from  TColStd; 
53           VF,VL  :  Real; 
54           Build  :  Boolean = Standard_True)   
55      ---Purpose: Construct    
56   returns NSections from BRepFill;  
57    
58
59   IsVertex(me) 
60     ---Purpose: Say if the input shape is a  vertex. 
61   returns  Boolean   
62   is  redefined; 
63    
64   IsConstant(me) 
65     ---Purpose: Say if the Law is  Constant.        
66   returns  Boolean   
67   is  redefined;        
68
69   ConcatenedLaw(me)  
70    ---Purpose: Give the law build on a concatened section         
71   returns SectionLaw from GeomFill 
72   is  redefined;    
73   
74   Continuity(me; Index  :  Integer; 
75                  TolAngular  :  Real)
76   returns  Shape  from  GeomAbs  
77   is  redefined;  
78    
79   VertexTol(me; Index  :  Integer;   
80                 Param  :  Real) 
81   returns  Real   
82   is  redefined;  
83   
84   Vertex(me;  Index  :  Integer; 
85               Param  :  Real) 
86   returns Vertex  from  TopoDS 
87   is  redefined;            
88    
89   D0(me:mutable;  Param  :  Real;   
90      S  :  out  Shape  from  TopoDS)   
91     is  redefined;  
92    
93   Init(me  :  mutable;  P  : SequenceOfReal  from  TColStd; 
94                         B  : Boolean  from  Standard )  is  private;
95    
96 fields
97   VFirst,  VLast : Real;
98   myShapes:  SequenceOfShape  from  TopTools;
99   myTrsfs:   SequenceOfTrsf   from  GeomFill;
100   myParams:  SequenceOfReal   from  TColStd;   
101   myEdges:  HArray2OfShape from  TopTools;   
102   mySurface:  BSplineSurface from  Geom;   
103 end NSections;