2 class Loop3d from NMTAlgo
4 ---Purpose: Builds the shells from a set of faces.
5 -- Provides methods for comparing faces mutual
10 MapOfOrientedShape from TopTools,
11 IndexedDataMapOfShapeListOfShape from TopTools,
14 ListOfShape from TopTools,
20 returns Loop3d from NMTAlgo ;
22 AddConstFaces (me:out;
23 S : Shape from TopoDS)
24 ---Purpose: Add faces of <S> as unique faces in the result.
27 AddSectionFaces (me:out;
28 S : Shape from TopoDS)
29 ---Purpose: Add faces of <S> as double faces in the result.
33 AvoidFacesMap : MapOfOrientedShape from TopTools)
34 returns ListOfShape from TopTools is static;
35 ---Purpose: Make and return shells.
36 -- <AvoidFacesMap> can contain faces that must not be
37 -- added to result shells.
38 ---C++: return const &
41 ---Category: class methods
43 IsInside (myclass; E : Edge from TopoDS;
44 F1, F2 : Face from TopoDS;
45 CountDot : Boolean from Standard;
46 Dot : in out Real from Standard;
47 GoodOri : in out Boolean from Standard)
48 returns Boolean from Standard;
49 ---Purpose: check if <F2> is inside <F1> by edge <E>.
50 -- if <CountDot>, compute <Dot>: scalar production of
51 -- normalized vectors pointing inside faces, and
52 -- check if faces are oriented well for sewing
54 Normal (myclass; E : Edge from TopoDS;
61 myNewShells : ListOfShape from TopTools; -- result
63 myFaces : ListOfShape from TopTools;
64 myEFMap : IndexedDataMapOfShapeListOfShape from TopTools;