Salome HOME
NRI : First integration.
[modules/geom.git] / src / PARTITION / Partition_Loop3d.cdl
1 -- File:        Partition_Loop3d.cdl
2 -- Created:     Mon Oct 21 09:47:19 2002
3 ---Copyright:    OPEN CASCADE 2002
4
5 class Loop3d from Partition
6
7         ---Purpose: Builds the shells from a set of faces.
8         --          Provides  methods   for   comparing  faces  mutual
9         --          location.
10         
11 uses
12     Vec                              from gp,
13     MapOfOrientedShape               from TopTools,
14     IndexedDataMapOfShapeListOfShape from TopTools,
15     Face                             from TopoDS,
16     Edge                             from TopoDS,
17     ListOfShape                      from TopTools,
18     Shape                            from TopoDS
19     
20 is
21
22     Create;
23     
24     AddConstFaces  (me : in out; S : Shape from TopoDS)
25         ---Purpose: Add faces of <S> as unique faces in the result.
26     is static;
27
28     AddSectionFaces  (me : in out; S : Shape from TopoDS)
29         ---Purpose: Add faces of <S> as double faces in the result.
30     is static;
31
32     MakeShells (me : in out; AvoidFacesMap : MapOfOrientedShape from TopTools)
33         returns ListOfShape from TopTools is static;
34         ---Purpose: Make and return shells. 
35         --          <AvoidFacesMap> can contain faces that must not be
36         --          added to result shells.
37         ---C++: return const &
38     
39     
40         ---Category: class methods
41     
42     IsInside (myclass; E        : Edge    from TopoDS;
43                        F1, F2   : Face    from TopoDS;
44                        CountDot : Boolean from Standard;
45                        Dot      : in out Real    from Standard;
46                        GoodOri  : in out Boolean from Standard)
47         returns Boolean from Standard;
48         ---Purpose: check if <F2> is inside <F1> by edge <E>.
49         --          if <CountDot>, compute <Dot>: scalar production of
50         --          normalized  vectors  pointing  inside  faces,  and
51         --          check if faces are oriented well for sewing
52     
53     Normal (myclass; E : Edge from TopoDS;
54                      F : Face from TopoDS) returns Vec from gp;
55     
56     
57 fields
58
59     myNewShells : ListOfShape from TopTools; -- result
60     
61     myFaces     : ListOfShape from TopTools;
62     myEFMap     : IndexedDataMapOfShapeListOfShape from TopTools;
63     
64 end Loop3d;