mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-01-15 12:20:37 +05:00
Changes for 0020673 - Implementation of "Auto-correct edges orientation".
This commit is contained in:
parent
f52f3839b7
commit
04da005e39
@ -37,7 +37,7 @@ rather complex cases.
|
|||||||
\n <b>TUI Command:</b> <em>geompy.MakeFilling(Edges, MinDegree, MaxDegree, Tol2D, Tol3D, NbIter)</em>
|
\n <b>TUI Command:</b> <em>geompy.MakeFilling(Edges, MinDegree, MaxDegree, Tol2D, Tol3D, NbIter)</em>
|
||||||
\n <b>Arguments:</b> Name + 1 List of edges + 7 Parameters
|
\n <b>Arguments:</b> Name + 1 List of edges + 7 Parameters
|
||||||
(Min. degree, Max. degree, Number of iterations, 2D tolerance, 3D
|
(Min. degree, Max. degree, Number of iterations, 2D tolerance, 3D
|
||||||
tolerance, Number of iterations, Use orientation, Approximation).
|
tolerance, Number of iterations, Method, Approximation).
|
||||||
|
|
||||||
\image html filling.png
|
\image html filling.png
|
||||||
|
|
||||||
|
@ -1507,10 +1507,13 @@ Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeFilling
|
|||||||
//Make a Python command
|
//Make a Python command
|
||||||
GEOM::TPythonDump pd (aFunction);
|
GEOM::TPythonDump pd (aFunction);
|
||||||
pd << aFilling << " = geompy.MakeFilling("
|
pd << aFilling << " = geompy.MakeFilling("
|
||||||
<< theShape << ", " << theMinDeg << ", " << theMaxDeg << ", "
|
<< theShape << ", " << theMinDeg << ", " << theMaxDeg << ", "
|
||||||
<< theTol2D << ", " << theTol3D << ", " << theNbIter;
|
<< theTol2D << ", " << theTol3D << ", " << theNbIter << ", ";
|
||||||
|
if( theMethod==1 ) pd << "GEOM.FOM_UseOri";
|
||||||
|
else if( theMethod==2 ) pd << "GEOM.FOM_AutoCorrect";
|
||||||
|
else pd << "GEOM.FOM_Default";
|
||||||
if(isApprox)
|
if(isApprox)
|
||||||
pd << ", " << isApprox;
|
pd << ", " << isApprox ;
|
||||||
pd << ")";
|
pd << ")";
|
||||||
|
|
||||||
SetErrorCode(OK);
|
SetErrorCode(OK);
|
||||||
|
@ -1322,7 +1322,14 @@ class geompyDC(GEOM._objref_GEOM_Gen):
|
|||||||
# @param theTol2D a 2d tolerance to be reached
|
# @param theTol2D a 2d tolerance to be reached
|
||||||
# @param theTol3D a 3d tolerance to be reached
|
# @param theTol3D a 3d tolerance to be reached
|
||||||
# @param theNbIter a number of iteration of approximation algorithm
|
# @param theNbIter a number of iteration of approximation algorithm
|
||||||
# @param isUseOri flag for take into account orientation of edges
|
# @param theMethod Kind of method to perform filling operation:
|
||||||
|
# 0 - Default - standard behaviour
|
||||||
|
# 1 - Use edges orientation - orientation of edges are
|
||||||
|
# used: if edge is reversed curve from this edge
|
||||||
|
# is reversed before using in filling algorithm.
|
||||||
|
# 2 - Auto-correct orientation - change orientation
|
||||||
|
# of curves using minimization of sum of distances
|
||||||
|
# between ends points of edges.
|
||||||
# @param isApprox if True, BSpline curves are generated in the process
|
# @param isApprox if True, BSpline curves are generated in the process
|
||||||
# of surface construction. By default it is False, that means
|
# of surface construction. By default it is False, that means
|
||||||
# the surface is created using Besier curves. The usage of
|
# the surface is created using Besier curves. The usage of
|
||||||
@ -1332,13 +1339,12 @@ class geompyDC(GEOM._objref_GEOM_Gen):
|
|||||||
#
|
#
|
||||||
# @ref tui_creation_filling "Example"
|
# @ref tui_creation_filling "Example"
|
||||||
def MakeFilling(self, theShape, theMinDeg, theMaxDeg, theTol2D,
|
def MakeFilling(self, theShape, theMinDeg, theMaxDeg, theTol2D,
|
||||||
theTol3D, theNbIter, isUseOri=0, isApprox=0):
|
theTol3D, theNbIter, theMethod=GEOM.FOM_Default, isApprox=0):
|
||||||
# Example: see GEOM_TestAll.py
|
# Example: see GEOM_TestAll.py
|
||||||
theMinDeg,theMaxDeg,theTol2D,theTol3D,theNbIter,Parameters = ParseParameters(theMinDeg, theMaxDeg,
|
theMinDeg,theMaxDeg,theTol2D,theTol3D,theNbIter,Parameters = ParseParameters(theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter)
|
||||||
theTol2D, theTol3D, theNbIter)
|
|
||||||
anObj = self.PrimOp.MakeFilling(theShape, theMinDeg, theMaxDeg,
|
anObj = self.PrimOp.MakeFilling(theShape, theMinDeg, theMaxDeg,
|
||||||
theTol2D, theTol3D, theNbIter,
|
theTol2D, theTol3D, theNbIter,
|
||||||
isUseOri, isApprox)
|
theMethod, isApprox)
|
||||||
RaiseIfFailed("MakeFilling", self.PrimOp)
|
RaiseIfFailed("MakeFilling", self.PrimOp)
|
||||||
anObj.SetParameters(Parameters)
|
anObj.SetParameters(Parameters)
|
||||||
return anObj
|
return anObj
|
||||||
|
Loading…
Reference in New Issue
Block a user