1 -- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 -- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 -- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 -- This library is free software; you can redistribute it and/or
7 -- modify it under the terms of the GNU Lesser General Public
8 -- License as published by the Free Software Foundation; either
9 -- version 2.1 of the License.
11 -- This library is distributed in the hope that it will be useful,
12 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
13 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 -- Lesser General Public License for more details.
16 -- You should have received a copy of the GNU Lesser General Public
17 -- License along with this library; if not, write to the Free Software
18 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 -- File: NMTTools_DEProcessor.cdl
23 -- Created: Wed Sep 12 12:08:37 2001
24 -- Author: Peter KURNEV
27 class DEProcessor from NMTTools
31 -- The Algorithm to compute and store in interferences' pool
32 --- and in the Data Structure the following values
33 --- for degenerated edges
34 --- 1. Paves/Pave set(s)
36 --- 3. States (3D) for split parts
45 PPaveFiller from NMTTools,
46 PaveFiller from NMTTools,
47 --PDSFiller from NMTTools,
48 ListOfPaveBlock from BOPTools,
49 PShapesDataStructure from NMTDS,
50 IndexedDataMapOfIntegerDEInfo from BOPTools
54 --Create (aFiller:out PDSFiller from NMTTools)
55 -- returns DEProcessor from NMTTools;
59 Create (aFiller:out PaveFiller from NMTTools)
60 returns DEProcessor from NMTTools;
66 --- Launches the processor
69 returns Boolean from Standard;
71 --- Returns TRUE if it is Ok
77 FindDegeneratedEdges (me:out)
83 FindPaveBlocks (me:out;
84 nED:Integer from Standard;
85 nVD:Integer from Standard;
86 nFD:Integer from Standard;
87 aLPB:out ListOfPaveBlock from BOPTools)
91 nED:Integer from Standard;
92 nVD:Integer from Standard;
93 nFD:Integer from Standard;
94 aLPB: ListOfPaveBlock from BOPTools)
97 FillSplitEdgesPool(me:out;
98 nED:Integer from Standard)
101 MakeSplitEdges(me:out;
102 nED:Integer from Standard;
103 nFD:Integer from Standard)
106 MakeSplitEdge (me:out;
107 aS1: Edge from TopoDS;
108 aF : Face from TopoDS;
109 aV1: Vertex from TopoDS;
110 aP1: Real from Standard;
111 aV2: Vertex from TopoDS;
112 aP2: Real from Standard;
113 aNewEdge:out Edge from TopoDS)
118 --myDSFiller: PDSFiller from NMTTools is protected;
119 myFiller : PPaveFiller from NMTTools is protected;
120 myDS : PShapesDataStructure from NMTDS is protected;
121 myIsDone : Boolean from Standard is protected;
122 myDEMap : IndexedDataMapOfIntegerDEInfo from BOPTools is protected;