1 // Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License.
9 // This library is distributed in the hope that it will be useful
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 -- File: BlockFix_PeriodicSurfaceModifier.cdl
21 -- Created: Wed Dec 15 10:03:50 2004
22 -- Author: Sergey KUUL
23 -- <skl@strelox.nnov.matra-dtv.fr>
24 ---Copyright: Open CASCADE SA 2004
26 class PeriodicSurfaceModifier from BlockFix inherits Modification from BRepTools
40 IndexedMapOfTransient from TColStd,
41 DataMapOfShapeInteger from TopTools
45 Create returns mutable PeriodicSurfaceModifier from BlockFix;
47 SetTolerance(me: mutable; Toler: Real);
48 ---Purpose: Sets the tolerance for recognition of geometry
50 NewSurface(me: mutable; F : Face from TopoDS;
51 S : out Surface from Geom;
52 L : out Location from TopLoc;
53 Tol: out Real from Standard;
54 RevWires : out Boolean from Standard;
55 RevFace : out Boolean from Standard)
56 returns Boolean from Standard;
57 ---Purpose: Returns Standard_True if the face <F> has been
58 -- modified. In this case, <S> is the new geometric
59 -- support of the face, <L> the new location, <Tol>
60 -- the new tolerance. Otherwise, returns
61 -- Standard_False, and <S>, <L>, <Tol> are not
64 NewCurve(me: mutable; E : Edge from TopoDS;
65 C : out Curve from Geom;
66 L : out Location from TopLoc;
67 Tol: out Real from Standard)
68 returns Boolean from Standard;
69 ---Purpose: Returns Standard_True if the edge <E> has been
70 -- modified. In this case, <C> is the new geometric
71 -- support of the edge, <L> the new location, <Tol>
72 -- the new tolerance. Otherwise, returns
73 -- Standard_False, and <C>, <L>, <Tol> are not
76 NewPoint(me: mutable; V : Vertex from TopoDS;
78 Tol: out Real from Standard)
79 returns Boolean from Standard;
80 ---Purpose: Returns Standard_True if the vertex <V> has been
81 -- modified. In this case, <P> is the new geometric
82 -- support of the vertex, <Tol> the new tolerance.
83 -- Otherwise, returns Standard_False, and <P>, <Tol>
84 -- are not significant.
86 NewCurve2d(me: mutable; E : Edge from TopoDS;
88 NewE : Edge from TopoDS;
89 NewF : Face from TopoDS;
90 C : out Curve from Geom2d;
91 Tol : out Real from Standard)
92 returns Boolean from Standard;
93 ---Purpose: Returns Standard_True if the edge <E> has a new
94 -- curve on surface on the face <F>.In this case, <C>
95 -- is the new geometric support of the edge, <L> the
96 -- new location, <Tol> the new tolerance.
98 -- Otherwise, returns Standard_False, and <C>, <L>,
99 -- <Tol> are not significant.
101 -- <NewE> is the new edge created from <E>. <NewF>
102 -- is the new face created from <F>. They may be usefull.
104 NewParameter(me: mutable; V : Vertex from TopoDS;
105 E : Edge from TopoDS;
106 P : out Real from Standard;
107 Tol: out Real from Standard)
108 returns Boolean from Standard;
109 ---Purpose: Returns Standard_True if the Vertex <V> has a new
110 -- parameter on the edge <E>. In this case, <P> is
111 -- the parameter, <Tol> the new tolerance.
112 -- Otherwise, returns Standard_False, and <P>, <Tol>
113 -- are not significant.
115 Continuity(me: mutable; E : Edge from TopoDS;
116 F1,F2 : Face from TopoDS;
117 NewE : Edge from TopoDS;
118 NewF1,NewF2: Face from TopoDS)
119 returns Shape from GeomAbs;
120 ---Purpose: Returns the continuity of <NewE> between <NewF1>
123 -- <NewE> is the new edge created from <E>. <NewF1>
124 -- (resp. <NewF2>) is the new face created from <F1>
131 myMapOfFaces : DataMapOfShapeInteger from TopTools;
132 myMapOfSurfaces: IndexedMapOfTransient from TColStd;
134 end PeriodicSurfaceModifier;