All Frameworks Class Hierarchy This Framework Previous Next Indexes
AdvancedTopologicalOpe Class CATTopologicalBlendCurve
Mathematics.CATCGMVirtual
|
+---GeometricObjects.CATCGMOperator
|
+---NewTopologicalObjects.CATTopOperator
|
+---CATTopologicalBlendCurve
Usage: you must use this class as is. You should never derive it.
public class CATTopologicalBlendCurve
Class defining the topological operator that connects two wire bodies.
Continuity criteria can be precised: G0, G1 or G2.
The CATTopologicalBlendCurve operator follows the global frame of the topological operators
and satisfies the smart mechanism:
the input bodies are not modified. A new resulting body is created,
possibly sharing data with the input bodies. The resulting blend can be created
separately from the inputs, or linked to the inputs according to the SetTrimmingMode method.
- A CATTopologicalBlendCurve operator is created with the CATCreateTopologicalBlendCurve global function.
It 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
- The result is accessed with the GetResult method. If you do not want
to keep the resulting body, use the CATICGMContainer.Remove method to remove it from the geometric factory.
Constructor and Destructor Index
- o
~CATTopologicalBlendCurve()
-
Method Index
- o
Run()
- Runs this operator (ADVANCED mode).
- o
SetCurvatureParameter(CATLONG32,double)
- Defines the influence of the curvature constraint (ADVANCED mode).
- o
SetCurve(CATLONG32,CATBody*)
- Defines the topological blend curve limits (ADVANCED mode).
- o
SetCurveParam(CATLONG32,CATBody*)
- Defines the topological blend curve limits (ADVANCED mode).
- o
SetDefaultConfiguration(CATLONG32,CATLONG32&)
- Returns the starting direction keeping the wire of greatest length (ADVANCED mode).
- o
SetSupportTrimmingMode(CATLONG32,CATLONG32)
- Defines whether the input bodies must be trimmed (ADVANCED mode).
- o
SetTangencyParameter(CATLONG32,double)
- Defines the influence of the tangency constraint (ADVANCED mode).
- o
SetTransitionContinuity(CATLONG32,CATLONG32)
- Defines the continuity criteria to take into account for a given wire (ADVANCED mode).
- o
SetTransitionOrientation(CATLONG32,CATLONG32)
- Modifies the starting direction of the connecting wire (ADVANCED mode).
Constructor and Destructor
o ~CATTopologicalBlendCurve
public virtual ~CATTopologicalBlendCurve( | ) |
-
Methods
o Run
public virtual int Run( | )=0 |
-
Runs this operator (ADVANCED mode).
It is possible to Run the operator with different inputs or parameters. Each time,
a new body is created, that you must remove from the geometric factory
CATICGMContainer.Remove if you do not want to keep it.
o SetCurvatureParameter
public virtual void SetCurvatureParameter( | const CATLONG32 | iWhichWire, |
| const double | iCurvatureParameter)=0 |
-
Defines the influence of the curvature constraint (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or the second (2) input wire.
- iCurvatureParameter
- The value to multiply the curvature, in order to increase or decrease its influence.
o SetCurve
-
Defines the topological blend curve limits (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or second (2) wire body.
- iWire
- The pointer to the new first wire.
o SetCurveParam
public virtual void SetCurveParam( | const CATLONG32 | iWhichWire, |
| CATBody* | iWireParam) = 0 |
-
Defines the topological blend curve limits (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or second (2) wire body.
- iWireParam
- The pointer to the new vertex body, defining where the connection must be done.
o SetDefaultConfiguration
public virtual void SetDefaultConfiguration( | const CATLONG32 | iWhichWire, |
| CATLONG32& | oTransitionOrientation)=0 |
-
Returns the starting direction keeping the wire of greatest length (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or the second (2) input wire.
- oTransitionOrientation
- The default orientation of the iWhichWire.
Legal values: 1 if the connecting wire starts in the natural orientation of
iWhichWire, -1
for the opposite orientation.
o SetSupportTrimmingMode
public virtual void SetSupportTrimmingMode( | const CATLONG32 | iWhichWire, |
| const CATLONG32 | iTrimmingMode)=0 |
-
Defines whether the input bodies must be trimmed (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or second (2) wire body.
- iTrimmingMode
- The trimming mode fot iWhichWire.
Legal values: 0 if iWhichWire is not trimmed, 1 if
it is trimmed according to the smart mechanism.
o SetTangencyParameter
public virtual void SetTangencyParameter( | const CATLONG32 | iWhichWire, |
| const double | iTangencyParameter)=0 |
-
Defines the influence of the tangency constraint (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or the second (2) input wire.
- iTangencyParameter
- The value to multiply the tangent, in order to increase or decrease its influence.
o SetTransitionContinuity
public virtual void SetTransitionContinuity( | const CATLONG32 | iWhichWire, |
| const CATLONG32 | iTransitionContinuity)=0 |
-
Defines the continuity criteria to take into account for a given wire (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or the second (2) input wire.
- iTransitionContinuity
- The continuity criteria
Legal values: 0 for G0 continuity, 1 for G1 continuity (default value),
2 for G2 continuity.
o SetTransitionOrientation
public virtual void SetTransitionOrientation( | const CATLONG32 | iWhichWire, |
| const CATLONG32 | iTransitionOrientation)=0 |
-
Modifies the starting direction of the connecting wire (ADVANCED mode).
- Parameters:
-
- iWhichWire
- The first (1) or the second (2) input wire.
- oTransitionOrientation
- The orientation of the starting direction, with regards to the default direction given by
SetDefaultConfiguration.
Legal values: 1 if the connecting wire starts in the default orientation given
by SetDefaultConfiguration, -1
for the opposite orientation.
This object is included in the file: CATTopologicalBlendCurve.h
If needed, your Imakefile.mk should include the module: CATAdvancedTopologicalOpe