GMOperatorsInterfaces Interface CATICGMCrvFittingToNurbsCrv
Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.
interface CATICGMCrvFittingToNurbsCrv
Class defining a geometric operator that computes a (possibly approximated) NURBS representation of a CATCurve.
If a curve has no corresponding NURBS representation, the operator uses a fitting operation to
compute the best approximating NURBS representation. Hence, a maximum deviation must be given as input of
the operator.
- An input CATNurbsCurve or CATPNurbs is directly output:
the GetResult method outputs the same pointer.
- By default, a CATPCurve is retrieved as a CATPNurbs. To force the creation of the corresponding CATNurbsCurve,
use the method.
- Some canonic curves/pcurves will be transformed into rational
CATNurbsCurve/CATPNurbs. However, setting iRationalAllowed = 0 at the operator creation
or using the
method, will force the fitting into a non rational curve (default is iRationalAllowed = 1).
- The CATEdgeCurve is converted according to the types of its inside curves.
The CATICGMCrvFittingToNurbsCrv operator follows the global frame of the geometric operators:
- A CATICGMCrvFittingToNurbsCrv operator is created with the CATCGMCreateCrvFittingToNurbsCrv global function
and must be directly released with the Release method after use.
It is is not streamable.
- In case of BASIC
mode, the operation is automatically performed at the operator creation.
In case of ADVANCED
mode, 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.
If a curve does not need to be converted because it already is of the required type, the same pointer
is returned. In this case, using the
method on the result curve will remove the input curve, because they are the same.
Method Index
- o
ComputeNewParameter(CATCrvParam&)
- Maps a parameter on the initial curve to the corresponding parameter on the computed NURBS representation.
- o
ForbidPeriodicity()
- Declares that the result NURBS must not be periodic.
- o
GetMaxDeviation()
- Returns the maximum deviation computed for the result curve.
- o
GetNurbsCurve()
- Returns the result CATNurbsCurve.
- o
GetPNurbs()
- Returns the result CATPNurbs.
- o
ImposeKnotVector(CATKnotVector*)
- Defines the knot vector to be used for the conversion.
- o
ImposeSameParametrization()
- Declares that the result curve must have the same parameterization than the input curve to fit.
- o
IsExactTransformation()
- Returns whether the transformation between the input and output curves is exact.
- o
Run()
- Runs this operator.
- o
Set3DCurveCreation()
- Imposes the conversion of a CATPCurve in a (3D) CATNurbsCurve.
- o
SetInternalMinLength(double)
- Defines the minimal length of an internal arc of the result curve.
- o
SetMaxArcs(CATLONG32)
- Defines the maximum number of arcs of the result curve.
- o
SetMaxDegree(CATLONG32)
- Defines the maximum degree of the result NURBS representation.
- o
SetRationalAllowed(CATLONG32)
- Defines whether the result NURBS representation can be rational.
Methods
o ComputeNewParameter
public virtual ComputeNewParameter( | const | iParamOnCurve) |
-
Maps a parameter on the initial curve to the corresponding parameter on the computed NURBS representation.
To call after the operator ran.
- Parameters:
-
- iParamOnCurve
- The parameter on the initial curve.
- Returns:
- The parameter on the computed NURBS representation.
o ForbidPeriodicity
public virtual ForbidPeriodicity( | ) |
-
Declares that the result NURBS must not be periodic.
To call in ADVANCED mode before the Run method.
o GetMaxDeviation
public virtual GetMaxDeviation( | ) |
-
Returns the maximum deviation computed for the result curve.
To call after the operator ran.
- Returns:
- The maximum deviation value.
o GetNurbsCurve
public virtual GetNurbsCurve( | ) |
-
Returns the result CATNurbsCurve.
- Returns:
- The pointer to the created CATNurbsCurve. Use the
if you do not want to keep it in the geometric factory.
o GetPNurbs
public virtual GetPNurbs( | ) |
-
Returns the result CATPNurbs.
- Returns:
- The pointer to the created CATPNurbs. Use the
if you do not want to keep it in the geometric factory.
o ImposeKnotVector
public virtual ImposeKnotVector( | const | iKnotVector) |
-
Defines the knot vector to be used for the conversion.
- Parameters:
-
- iKnotVector
- The knot vector.
o ImposeSameParametrization
public virtual ImposeSameParametrization( | ) |
-
Declares that the result curve must have the same parameterization than the input curve to fit.
To call in ADVANCED mode before the Run method.
o IsExactTransformation
public virtual IsExactTransformation( | ) |
-
Returns whether the transformation between the input and output curves is exact.
To call after the operator ran.
- Returns:
- 1 if the transformation is exact, 0 otherwise.
o Run
-
Runs this operator.
To call in ADVANCED mode.
o Set3DCurveCreation
public virtual Set3DCurveCreation( | ) |
-
Imposes the conversion of a CATPCurve in a (3D) CATNurbsCurve.
To call in ADVANCED mode before the Run method.
By default (if this method is not called), a CATPCurve is transformed into a CATPNurbs.
o SetInternalMinLength
public virtual SetInternalMinLength( | | iInternalMinLength) |
-
Defines the minimal length of an internal arc of the result curve.
To call in ADVANCED mode before the Run method.
- Parameters:
-
- iInternalMinLength
- The minimum length value.
o SetMaxArcs
public virtual SetMaxArcs( | | iMaxArcs) |
-
Defines the maximum number of arcs of the result curve.
To call in ADVANCED mode before the Run method.
- Parameters:
-
- iMaxArcs
- The maximum number of arcs. If SetMaxDegree and SetMaxArcs are both used,
the operator tries to get as few arcs as possible, even with a larger number of arcs with
MaxDegree.
o SetMaxDegree
public virtual SetMaxDegree( | | iMaxDegree) |
-
Defines the maximum degree of the result NURBS representation.
To call in ADVANCED mode before the Run method.
- Parameters:
-
- iMaxDegree
- The degree maximum value.
o SetRationalAllowed
public virtual SetRationalAllowed( | | iAllowRational) |
-
Defines whether the result NURBS representation can be rational.
To call in ADVANCED mode before the Run method.
- Parameters:
-
- iAllowRational
- 1 if the result curve can be rational (default value when the method is not called),
0 if the result curve must not be rational.
This object is included in the file: CATICGMCrvFittingToNurbsCrv.h
If needed, your Imakefile.mk should include the module: CATGMOperatorsInterfaces
Copyright © 1999-2015, Dassault Systèmes. All rights reserved.