All Frameworks Class Hierarchy This Framework Previous Next Indexes
BasicTopologicalOpe Class CATTopCrvToNurbsCrvOperator
Mathematics.CATCGMVirtual
|
+---GeometricObjects.CATCGMOperator
|
+---NewTopologicalObjects.CATTopOperator
|
+---CATTopCrvToNurbsCrvOperator
Usage: you must use this class as is. You should never derive it.
public class CATTopCrvToNurbsCrvOperator
Class defining a topological operator that converts the geometry of an edge into a NURBS curve.
This operator follows the general scheme of the topological operators
- Create the operator with the global function CATCreateTopCrvToNurbsCrvOperator, which defines
the edge to transform using a wire body
- Set the parameters
- Run
- Get the resulting body
- Delete the operator with the usual C++ delete operator.
Constructor and Destructor Index
- o
~CATTopCrvToNurbsCrvOperator()
-
Method Index
- o
IsExactTransformation(CATLONG32&)
- Retrieves whether the created curve has been approximated.
- o
Set3DOutputDimension(CATBoolean)
- Defines whether the resulting curve must be defined as a PCurve or not.
- o
SetMaxArcs(CATLONG32)
- Defines the maximum number of arcs allowed for the NURBS curve.
- o
SetMaxDegree(CATLONG32)
- Defines the maximum degree for the created NURBS.
- o
SetRationalAbility(CATLONG32)
- Defines whether the resulting curve is rational.
- o
SetSurface(CATSurface*)
- Defines the underlying surface on which the PCurves must be computed.
- o
SetTolerance(double)
- Defines the fitting tolerance.
Constructor and Destructor
o ~CATTopCrvToNurbsCrvOperator
public virtual ~CATTopCrvToNurbsCrvOperator( | ) |
-
Methods
o IsExactTransformation
-
Retrieves whether the created curve has been approximated.
To be called after the Run method.
- Parameters:
-
- ioIsExact
- 0 if there is an approximation, not null otherwise.
- Returns:
- Not null in case of error.
o Set3DOutputDimension
-
Defines whether the resulting curve must be defined as a PCurve or not.
- Parameters:
-
- iOutputDimension
- The dimension of the output curve.
Legal values: TRUE to force the created curve to be a NURBS curve (and not a PNurbsCurve),
FALSE (default value) to force the created curve to be a PNurbs curve.
If the resulting curve must be PCurve, a surface must be defined using the SetSurface method.
- Returns:
- Not null in case of error.
o SetMaxArcs
-
Defines the maximum number of arcs allowed for the NURBS curve.
- Parameters:
-
- iMaxArcs
- The maximum number of arcs allowed for the NURBS curve.
In case of both SetMaxDegree and SetMaxArcs methods are used,
the priority is given to the maximum degree.
Default value is 3.
- Returns:
- Not null in case of error.
o SetMaxDegree
-
Defines the maximum degree for the created NURBS.
- Parameters:
-
- iMaxDegree
- The maximum degree allowed for the created NURBS curve.
In case of both SetMaxDegree and SetMaxArcs methods are used, the
priority is given to the maximum degree.
Default value is 5.
- Returns:
- Not null in case of error.
o SetRationalAbility
-
Defines whether the resulting curve is rational.
- Parameters:
-
- iRationalAbility
-
Legal values:
0 to convert the curve to a non rational curve, 1
to convert the curve to a rational curve.
Some canonic curves are transformed into rational CATNurbsCurve,
but setting iRationalAbility = 0 forces the conversion to a non rational curve.
The default mode is the conversion into rational (equivalent to iRationalAbility = 1).
- Returns:
- Not null in case of error.
o SetSurface
-
Defines the underlying surface on which the PCurves must be computed.
In case of iOutputDimension = FALSE in the Set3DOutputDimension method.
- Parameters:
-
- iSurface
- The pointer to the surface.
- Returns:
- Not null in case of error.
o SetTolerance
public virtual CATLONG32 SetTolerance( | double | iTolerance)=0 |
-
Defines the fitting tolerance.
- Parameters:
-
- iTolerance
- The tolerance value. By default, set to the factory resolution.
- Returns:
- Not null in case of error.
This object is included in the file: CATTopCrvToNurbsCrvOperator.h
If needed, your Imakefile.mk should include the module: CATBasicTopologicalOpe