All Frameworks  Class Hierarchy  This Framework  Previous  Indexes

AdvancedTopologicalOpe Class CATTopologicalMatch

Mathematics.CATCGMVirtual
  |
  +---GeometricObjects.CATCGMOperator
    |
    +---NewTopologicalObjects.CATTopOperator
      |
      +---CATTopologicalMatch
 

Usage: you must use this class as is. You should never derive it.


public class CATTopologicalMatch

Class defining the topological operator that matches parts of skin boundaries.

The skins must be composed of one face, which boundaries are on the surface boundaries. The matching operation is done with respect to continuity criteria along the boundaries. If the G0 continuity is imposed on a boundary, the control points of this boundary are taken into account. If the G1 continuity is imposed, the first rank (on the boundary) and second rank of control points are taken into account. If the G2 continuity is imposed, three ranks of control points are taken into account. It is possible to optimize the modifications of these ranks (SetOptimization), as well as diffuse the modifications on the whole surface (SetDiffusion). The CATTopologicalMatch operator can be used in two different match configurations:

The operator follows the use frame of all operator. It satisfies to the smart mechanism: the input bodies are not modified. New one are created, possibly sharing data with the input ones.


Method Index


o GetConnectionContinuity(CATLONG32)
Returns the continuity criteria for this matching operation (ADVANCED mode).
o GetDiffusion(CATLONG32)
Returns the level of diffusion of the deformation on the whole surface (ADVANCED mode).
o GetGlobalCurvatureParameter(CATLONG32,double&)
Retrieves the stiffness on the matching zone in case of both matching and ADVANCED mode.
o GetGlobalTangentParameter(CATLONG32,double&)
Retrieves the stiffness on the matching zone in case of both matching and ADVANCED mode.
o GetMatchFactor(CATFrFContinuity)
Returns the match factor.
o GetOppositeSideContinuity(CATLONG32,CATLONG32)
Returns the continuity criteria on the boundaries that are not part of the boundaries to match (ADVANCED mode).
o GetResult(CATLONG32)
Returns the result of this operator.
o ReverseRelativeWireOrientation()
Asks for reversing the default relative orientation of the wires to match (ADVANCED mode).
o ReverseTransitionOrientation(CATLONG32)
Asks for reversing the default transition between the surface to match (ADVANCED mode).
o Run()
Runs this operator (ADVANCED mode).
o SetConnectionContinuity(CATLONG32,CATFrFContinuity)
Defines the continuity criteria for this matching operation (ADVANCED mode).
o SetDefaultRelativeWireOrientation()
Asks for the default choice of the relative orientation of the wires to match (ADVANCED mode).
o SetDefaultTransitionOrientation()
Asks for the default choice of the transition between the surface to match (ADVANCED mode).
o SetDiffusion(CATLONG32,CATLONG32)
Defines the diffusion of the deformation on the whole surface (ADVANCED mode).
o SetGlobalCurvatureParameter(CATLONG32,double)
Defines a stiffness on the matching zone in case of both matching and ADVANCED mode.
o SetGlobalTangentParameter(CATLONG32,double)
Defines a stiffness on the matching zone in case of both matching and ADVANCED mode.
o SetMatchFactor(CATFrFContinuity,double)
Sets the match factor in case of both matching and ADVANCED mode.
o SetOppositeSideContinuity(CATLONG32,CATLONG32,CATFrFContinuity)
Defines a continuity criteria on the boundaries that are not part of the boundaries to match (ADVANCED mode).
o SetOptimization(CATLONG32)
Asks fot the optimization of the local deformation (ADVANCED mode).
o UseTheLastRunResult()
Defines a new matching operation (ADVANCED mode).

Methods


o GetConnectionContinuity
public virtual CATFrFContinuity GetConnectionContinuity(CATLONG32 iWireIndex)const=0
Returns the continuity criteria for this matching operation (ADVANCED mode).
Parameters:
iWireIndex
The index (beginning at 0) of the wire on which the continuity criteria is defined.
Returns:
The type of continuity for iWireIndex.
o GetDiffusion
public virtual CATLONG32 GetDiffusion(CATLONG32 iSkinIndex) const = 0
Returns the level of diffusion of the deformation on the whole surface (ADVANCED mode).
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
Returns:
The diffusion.
Legal values: 0 for only deform the control points impacted by the continuity criteria, 1 to diffuse the modifiations on the whole surface.
o GetGlobalCurvatureParameter
public virtual void GetGlobalCurvatureParameter(CATLONG32 iSkinIndex,
double& ioCurvatureRatio) const = 0
Retrieves the stiffness on the matching zone in case of both matching and ADVANCED mode.
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
ioCurvatureRatio
The global curvature parameter ratio. Can be used for connection continuity greater or equal to G2.
Legal values: 0. <= iCurvatureRatio <= 1.. Set by default to 1..
o GetGlobalTangentParameter
public virtual void GetGlobalTangentParameter(CATLONG32 iSkinIndex,
double& ioTangentRatio) const = 0
Retrieves the stiffness on the matching zone in case of both matching and ADVANCED mode.
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
ioTangentRatio
The global tangent parameter. Can be used for connection continuity greater or equal to G1.
Legal values: 0. <= iTangentRatio <= 1..
o GetMatchFactor
public virtual double GetMatchFactor(CATFrFContinuity iContinuity) const = 0
Returns the match factor.
Returns:
The relative influence of each surface.
Legal values: 0 <= iFactor <= 1 , 0<= iFactor <=0.5 to enhance the influence the first surface, 0<= iFactor <=0.5 to enhance the influence of the second surface.
o GetOppositeSideContinuity
public virtual CATFrFContinuity GetOppositeSideContinuity(CATLONG32 iWireIndex,
CATLONG32 iSkinIndex)const=0
Returns the continuity criteria on the boundaries that are not part of the boundaries to match (ADVANCED mode).
In case of conflict with the connection continuity, the priority is given to the connection continuity.
Parameters:
iWireIndex
The index (beginning at 0) of the wire to match. The continuity will be defined on the opposite wire. Remember that the only works on faces with four edges defined on the surface coundaries.
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
Returns:
The type of continuity for iWireIndex. Set to CATFrFPointCont (G0 continuity), in default mode.
o GetResult
public virtual CATBody * GetResult(CATLONG32 iSkinIndex) const = 0
Returns the result of this operator.
The bodies are created by the operator. You must delete them with the CATICGMContainer.Remove method if you do not want to keep them.
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
Returns:
The pointer to the created body corresponding to the deformation of the iSkinIndex surface.
o ReverseRelativeWireOrientation
public virtual void ReverseRelativeWireOrientation()= 0
Asks for reversing the default relative orientation of the wires to match (ADVANCED mode).
This can used to manualy manage the twist.
o ReverseTransitionOrientation
public virtual void ReverseTransitionOrientation(CATLONG32 iSkinIndex) = 0
Asks for reversing the default transition between the surface to match (ADVANCED mode).
o Run
public virtual int Run()=0
Runs this operator (ADVANCED mode).
o SetConnectionContinuity
public virtual void SetConnectionContinuity(CATLONG32 iWireIndex,
CATFrFContinuity iContinuity)=0
Defines the continuity criteria for this matching operation (ADVANCED mode).
Parameters:
iWireIndex
The index (beginning at 0) of the wire on which the continuity criteria is defined.
iContinuity
The type of continuity for iWireIndex. Set to CATFrFPointCont (G0 continuity), in default mode.
o SetDefaultRelativeWireOrientation
public virtual void SetDefaultRelativeWireOrientation()= 0
Asks for the default choice of the relative orientation of the wires to match (ADVANCED mode).
o SetDefaultTransitionOrientation
public virtual void SetDefaultTransitionOrientation()= 0
Asks for the default choice of the transition between the surface to match (ADVANCED mode).
o SetDiffusion
public virtual void SetDiffusion(CATLONG32 iSkinIndex,
CATLONG32 iDiffusion) = 0
Defines the diffusion of the deformation on the whole surface (ADVANCED mode).
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
iDiffusion
The diffusion.
Legal values: 0 for only deform the control points impacted by the continuity criteria (default value), 1 to diffuse the modifiations on the whole surface.
o SetGlobalCurvatureParameter
public virtual void SetGlobalCurvatureParameter(CATLONG32 iSkinIndex,
double iCurvatureRatio) = 0
Defines a stiffness on the matching zone in case of both matching and ADVANCED mode.
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
iCurvatureRatio
The global curvature parameter ratio. Can be used for connection continuity greater or equal to G2.
Legal values: 0. <= iCurvatureRatio <= 1.. Set by default to 1..
o SetGlobalTangentParameter
public virtual void SetGlobalTangentParameter(CATLONG32 iSkinIndex,
double iTangentRatio) = 0
Defines a stiffness on the matching zone in case of both matching and ADVANCED mode.
Parameters:
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
iTangentRatio
The global tangent parameter ratio. Can be used for connection continuity greater or equal to G1.
Legal values: 0. <= iTangentRatio <= 1.. Set by default to 1..
o SetMatchFactor
public virtual void SetMatchFactor(CATFrFContinuity iContinuity,
double iFactor) = 0
Sets the match factor in case of both matching and ADVANCED mode.
Parameters:
iContinuity
The continuity order on the boundary
iFactor
The relative influence of each surface.
Legal values: 0 <= iFactor <= 1 , 0<= iFactor <=0.5 to enhance the influence the first surface, 0<= iFactor <=0.5 to enhance the influence of the second surface. Set to 0.5 by default.
o SetOppositeSideContinuity
public virtual void SetOppositeSideContinuity(CATLONG32 iWireIndex,
CATLONG32 iSkinIndex,
CATFrFContinuity iContinuity)=0
Defines a continuity criteria on the boundaries that are not part of the boundaries to match (ADVANCED mode).
In case of conflict with the connection continuity, the priority is given to the connection continuity.
Parameters:
iWireIndex
The index (beginning at 0) of the wire to match. The continuity will be defined on the opposite wire. Remember that the only works on faces with four edges defined on the surface coundaries.
iSkinIndex
The index of the input surface.
Legal values:
  • In case of multiple sides matching, only the first skin is modified, such that iSkinIndex=0.
  • In case of both matching,iSkinIndex=0 is set for the first input skin, iSkinIndex=1 is set for the second one.
iContinuity
The type of continuity for iWireIndex. Set to CATFrFPointCont (G0 continuity), in default mode.
o SetOptimization
public virtual void SetOptimization(CATLONG32 iOptimization) = 0
Asks fot the optimization of the local deformation (ADVANCED mode).
Parameters:
iOptimization
The optimization is set with 1 (default mode) and unset with 0.
o UseTheLastRunResult
public virtual void UseTheLastRunResult()= 0
Defines a new matching operation (ADVANCED mode).
The result of the preceeding Run is set for the next run. This allows you to refine the continuity criteria of the matching. Use the Setxxx methods to tune the criteria, and Run again the operator. New resulting bodies are created.

This object is included in the file: CATTopologicalMatch.h
If needed, your Imakefile.mk should include the module: CATAdvancedTopologicalOpe

Copyright © 2003, Dassault Systèmes. All rights reserved.