GMOperatorsInterfaces Interface CATICGMFrFSmoothingOper
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATICGMFrFSmoothingOper
Class defining a geometric operator that smoothes a set of iNbrePts points to create a set of curves "SetOfCurves".
The CATICGMFrFSmoothingOper operator follows the global frame of the geometric operators:
- A CATICGMFrFSmoothingOper operator is created with the CATFrFCreateSmoothingOper global method
and must be directly deleted with the usual C++ delete operator after use.
It is is not streamable.
- Options can be precised with the SetXxx methods, before
asking for the computation with the Run method.
- In both cases, the result is accessed with the Getxxx methods.
Method Index
- o
CuttingUntilReachTolerance(CATBoolean)
- Defines automatically the maximum number of arcs of the created curve.
- o
GetAverageDeviation()
- Returns the Average deviation between set of points and the SetOfCurves Result.
- o
GetCurvatureVect(int,double&,CATMathVector&)
- Returns the curvature constraint corresponding to each point of the initial set of points.
- o
GetDeviation(int)
- Returns the deviation at each point of the initial set of points.
- o
GetGeometricCuttingpoints(CATListOfInt&)
- Returns List of indexes corresponding to Vertex of the SetOfCurves result
- o
GetIndexMaxDeviation(double&)
- Returns the maximum deviation between set of points and the SetOfCurves Result.
- o
GetParametricCuttingpoints(CATListOfInt&)
- Returns List of indexes corresponding to internal Arc limit of the SetOfCurves result
- o
GetParametrization(int&,double*&)
- Returns The parametrization.
- o
GetResult(CATCurve**&)
- Returns the SetOfCurves Result.
- o
GetResult(CATLISTP(CATCurve)&)
- Returns the set of result curves.
- o
GetTangentVect(int,CATMathVector&)
- Returns the tangency constraint corresponding to each point of the initial set of points.
- o
ImposedCuttingPoints(CATListOfInt&,CATBoolean)
- Defines List of Parametric Cutting points corresponding to list of points of the initial set of points.
- o
ResetConstraint(int)
- Reset the constraint corresponding to each point of the initial set of points.
- o
ResetTopConstraint(int)
- Resets the Topological constraint corresponding to each point of the initial set of points.
- o
SetConstraint(int,CATFrFContinuity,CATMathVector*,double)
- Defines the PassPoint constraint corresponding to each point of the initial set of points.
- o
SetCuttingByCurvatureAnalysis(double,double,CATFrFInflexionTreatment,CATBoolean)
- Compute automatically the number of Arcs by CurvatureAnalysis.
- o
SetCuttingDefault(CATFrFCuttingOption)
- Defines CuttingDefault Option.
- o
SetDegree(int)
- Defines the degree of the resulting curve.
- o
SetMaxDegree(int)
- Defines the Maxdegree of the resulting curve.
- o
SetMaxNumberOfArcs(int,int)
- Defines the maximum number of arcs of the created curve.
- o
SetParamType(CATFrFSmoothingParamType)
- Defaults Options for parametrisation of set of points.
- o
SetParametrization(int,double*)
- Defines the parameters corresponding to each point of the initial set of points.
- o
SetSlideIterations(int)
- Defines the number of iterations necessary to obtain the best resulting curve.
- o
SetTolerance(double,CATFrFTestOfConvergence)
- Defines the Tolerance of the result.
- o
SetTopConstraint(int,CATFrFContinuity,CATMathVector*,double,CATMathVector*,double)
- Defines the Topological PassPoint constraint corresponding to each internal point of the initial set of points.
Methods
o CuttingUntilReachTolerance
public virtual CuttingUntilReachTolerance( | | iRespectTolerance | = TRUE) |
-
Defines automatically the maximum number of arcs of the created curve.
- Parameters:
-
- iRespectTolerance
- if (TRUE), we imposed automatically cutting points until that tolerance is reached.
o GetAverageDeviation
public virtual GetAverageDeviation( | ) |
-
Returns the Average deviation between set of points and the SetOfCurves Result.
- Returns:
- The Mean deviation value.
o GetCurvatureVect
public virtual GetCurvatureVect( | const | iRankPoint, |
| | oCvt, |
| | oNormale) |
-
Returns the curvature constraint corresponding to each point of the initial set of points.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 <= iRankPoint <= iNbrePts
- Returns:
- the curvature value and Normal vector at the current point, 1 <= iRankPoint <= iNbrePts.
o GetDeviation
public virtual GetDeviation( | const | iRankPoint) |
-
Returns the deviation at each point of the initial set of points.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 <= iRankPoint <= iNbrePts
- Returns:
- The deviation at each point.
o GetGeometricCuttingpoints
public virtual GetGeometricCuttingpoints( | | oGeomList) |
-
Returns List of indexes corresponding to Vertex of the SetOfCurves result
o GetIndexMaxDeviation
public virtual GetIndexMaxDeviation( | | oMaxdeviation) |
-
Returns the maximum deviation between set of points and the SetOfCurves Result.
- Returns:
- The maximum deviation value.
- Returns:
- Index of point with max deviation.
o GetParametricCuttingpoints
public virtual GetParametricCuttingpoints( | | oParamList) |
-
Returns List of indexes corresponding to internal Arc limit of the SetOfCurves result
o GetParametrization
public virtual GetParametrization( | | oNbreOfPts, |
| | oParameters) |
-
Returns The parametrization.
- Returns:
- The array of the parameter values that correspond on the SetOfCurves to
each point of the input set.
o GetResult
public virtual GetResult( | | oResultCurves) |
-
Returns the SetOfCurves Result.
- Returns:
- oNbreOfCurve : The Number of curves of the Result
- Returns:
- Array of oNbreOfCurve curves result according to SetTopConstraint option
o GetResult
public virtual GetResult( | | oResultCurves) |
-
Returns the set of result curves.
- Returns:
- The list of result curves.
o GetTangentVect
public virtual GetTangentVect( | const | iRankPoint, |
| | oTangentVect) |
-
Returns the tangency constraint corresponding to each point of the initial set of points.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 <= iRankPoint <= iNbrePts
- Returns:
- the tangent vector at the current point, 1 <= iRankPoint <= iNbrePts.
o ImposedCuttingPoints
public virtual ImposedCuttingPoints( | | iListOfPoints, |
| | iWithImposedPoint | = FALSE) |
-
Defines List of Parametric Cutting points corresponding to list of points of the initial set of points.
The point iListOfPoints[index] is an Arc limit in the result SetOfCurves .
- Parameters:
-
- iListOfPoints
- List of Parametric Cutting points, 1 < iListOfPoints[index] < iNbrePts
- iWithImposedPoint
- if (TRUE) each cutting point is imposed by passpoint constraint; else No Constraint.
o ResetConstraint
public virtual ResetConstraint( | const | iRankPoint) |
-
Reset the constraint corresponding to each point of the initial set of points.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 <= iRankPoint <= iNbrePts
o ResetTopConstraint
public virtual ResetTopConstraint( | const | iRankPoint) |
-
Resets the Topological constraint corresponding to each point of the initial set of points.
The point iPoints[iRankPoint-1] is not a limitCurve in the result SetOfCurves.
Size of SetOfCurves decrease by one.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 < iRankPoint < iNbrePts
o SetConstraint
public virtual SetConstraint( | const | iRankPoint, |
| | iContinuity | = CATFrFPointCont, |
| | iTangVect | = 0, |
| | iratio | = 1.0) |
-
Defines the PassPoint constraint corresponding to each point of the initial set of points.
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 <= iRankPoint <= iNbrePts
- iContinuity
-
- iContinuity = CATFrFNoCont -> Reset constraint,
- iContinuity = CATFrFPointCont -> PassPoint constraint,
- iContinuity = CATFrFTangentCont -> tangency constraint
- iContinuity = CATFrFCurvatureCont -> curvature constraint
- iTangVect
- The Tangency vector (normalized) corresponding to each point of the initial set of points.
(if 0, a default value is computed)
- iratio
- parameter to increase or decrease the norm of tangency vector (which is computed automatically)
o SetCuttingByCurvatureAnalysis
public virtual SetCuttingByCurvatureAnalysis( | const | iCurvatureVariationThreshold | = 5, |
| const | iCurvatureRatio | = 0.5, |
| | iCase | = CATFrFSurroundingInflexion, |
| | iWithImposedPoint | = FALSE) |
-
Compute automatically the number of Arcs by CurvatureAnalysis.
- Parameters:
-
- iCurvatureVariationThreshold
- Criteria used to decide to insert arc limit is based on a factor of curvature variation
between the beginning and the end of the curve, for example 5.
- iCurvatureRatio
- The position of the arc limit is computed at best using area repartition criteria.
A parameter defining the ratio between the surfaces is then used to compute this position.
- iCase
- : CATFrFInflexionTreatment The type of Inflexion Treatment :
- CATFrFNone = 0
- CATFrFInsertAtInflexion = 1
- CATFrFSurroundingInflexion = 2
- iWithImposedPoint
- if ( TRUE ) each cutting point computed is imposed by passpoint constraint; else No Constraint
o SetCuttingDefault
public virtual SetCuttingDefault( | | iCuttingType) |
-
Defines CuttingDefault Option.
- Parameters:
-
- iCuttingType
- The type of Cutting Option :
- CATFrFCuttingAutoLength = 1
- CATFrFCuttingAutoAreaCurvatr = 2
- CATFrFCuttingAutoLengthCurvatr = 3
o SetDegree
public virtual SetDegree( | const | iDegree | = 5) |
-
Defines the degree of the resulting curve.
- Parameters:
-
- iDegree
- The degree value for each curve .
o SetMaxDegree
public virtual SetMaxDegree( | const | iDegree | = 5) |
-
Defines the Maxdegree of the resulting curve.
- Parameters:
-
- iDegree
- The Max degree value for each curve .
o SetMaxNumberOfArcs
public virtual SetMaxNumberOfArcs( | | iMaxNumberOfArcs | = 64, |
| | iInternalContinuity | = 3) |
-
Defines the maximum number of arcs of the created curve.
- Parameters:
-
- iMaxNumberOfArcs
- The maximum number of arcs of each created curve
- iInternalContinuity
- The Internal continuity of each created curve, iInternalContinuity = 2, 3, 4.
o SetParamType
public virtual SetParamType( | | iParamType | = CATFrFSmoothingParamChordal) |
-
Defaults Options for parametrisation of set of points.
- Parameters:
-
- iParamType
- The type of parametrization. Examples :
- CATFrFSmoothingParamUniform = 0
- CATFrFSmoothingParamChordal = 1
o SetParametrization
public virtual SetParametrization( | | iNbreOfPts, |
| | iParameters) |
-
Defines the parameters corresponding to each point of the initial set of points.
- Parameters:
-
- iNbreOfPts
- Number of initial set of points.
- iParameters
- The array of the parameter values that correspond on the smoothed curve to
each point of the input set.
o SetSlideIterations
public virtual SetSlideIterations( | const | iIterations | = 5) |
-
Defines the number of iterations necessary to obtain the best resulting curve.
Each iteration gives a different result.
- Parameters:
-
- iIterations
- The Iteration value for each curve.
o SetTolerance
public virtual SetTolerance( | const | iTol3d | = 0.001, |
| | iTest | = CATFrFTestByAverageDeviation) |
-
Defines the Tolerance of the result.
- Parameters:
-
- iTol3d
- The maximum distance between the input points and the SetOfCurves.
- iTest
-
- iTest = CATFrFTestByAverageDeviation : Average Deviation is satisfied
- iTest = CATFrFTestByMaxDeviation : Max Deviation is satisfied
o SetTopConstraint
public virtual SetTopConstraint( | const | iRankPoint, |
| | iContinuity | = CATFrFPointCont, |
| | iTangentVect | = 0, |
| | iRatio | = 1., |
| | iCurvatureVect | = 0, |
| const | iCurvatureValue | = 0.0) |
-
Defines the Topological PassPoint constraint corresponding to each internal point of the initial set of points.
The point iPoints[iRankPoint-1] is an Extremity of curve in the SetOfCurves result.
Size of SetOfCurves increase by one.
The final size of SetOfCurves is equal to Number of Internal Topological PassPoint Constraint + 1 .
- Parameters:
-
- iRankPoint
- The Rank of the point in iPoints, 1 < iRankPoint < iNbrePts.
- iContinuity
-
- iContinuity = CATFrFNoCont -> Reset Geometrical constraint,
- iContinuity = CATFrFPointCont -> SetOfCurves is G0 at this point,
- iContinuity = CATFrFTangentCont -> SetOfCurves is G1 at this point,
- iContinuity = CATFrFCurvatureCont -> SetOfCurves is G2 at this point.
- iTangentVect
- The Tangency vector (normalized) corresponding to each point of the initial set of points.
(if 0, a default value is computed)
- iratio
- Parameter to increase or decrease the norm of tangency vector (which is computed automatically).
- iCurvatureVect
- The Normal vector (normalized) corresponding to each point of the initial set of points.
(if 0, a default value is computed)
- iCurvatureValue
- Imposed curvature value at the iRankPoint point.
This object is included in the file: CATICGMFrFSmoothingOper.h
If needed, your Imakefile.mk should include the module: CATGMOperatorsInterfaces
Copyright © 1999-2015, Dassault Systèmes. All rights reserved.