All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

GeometricObjects Class CATForeignCurveData

Mathematics.CATCGMVirtual
  |
  +---GeometricObjects.CATCGMAttribute
    |
    +---GeometricObjects.CATCGMStreamAttribute
      |
      +---GeometricObjects.CATForeignGeometryData
        |
        +---CATForeignCurveData
 

Usage: you can derive this class.


public class CATForeignCurveData

Base class of the attributes defining the data of a foreign curve.

A foreign curve is introduced into CGM by filling the CATIForeignCurve object data with a CATForeignCurveData. Then, it is automatically integrated into CGM, and can be used as any CATCurve by the operators and the topology. To create your own curve type, you have to derive the CATForeignCurveData class, and re-write the methods that are associated with.


Constructor and Destructor Index


o CATForeignCurveData()
Default constructor.
o ~CATForeignCurveData()

Method Index


o CreateLocalEquation(CATLONG32,CATMathFunctionX*&,CATMathFunctionX*&,CATMathFunctionX*&)
Retrieves the mathematical equation associated with an arc of a CATIForeignCurve.
o Eval(CATCrvLimits&,CATLONG32,CATCrvEvalCommand&,CATCrvEvalResult&)
Evaluates this CATCurve and its derivatives inside a domain.
o Eval(CATCrvParam&,CATCrvEvalCommand&,CATCrvEvalLocal&)
Evaluates a CATIForeignCurve and its derivatives.
o GetInternalLimits(CATLONG32,CATCrvLimits&)
Returns the limitations of an arc of a CATIForeignCurve.
o GetInternalMaxLimits(CATLONG32,CATCrvLimits&)
Returns the limitations of an arc of a CATIForeignCurve.
o GetKnotVector()
Returns the knot vector associated with a CATIForeignCurve.
o GetLimits(CATCrvLimits&)
Returns the limitations of a CATIForeignCurve.
o GetMathCurve()
Returns a pointer to the mathematical representation of this CATCurve.
o GetMaxLimits(CATCrvLimits&)
Returns the maximum limitations of a CATIForeignCurve.
o GetParam(CATMathPoint&,CATCrvParam&)
Retrieves the CATCrvParam on a CATIForeignCurve corresponding to a given CATMathPoint.
o GetParam(CATMathPoint&,CATCrvParam&,CATCrvLimits&)
Retrieves the CATCrvParam on a CATIForeignCurve corresponding to a CATMathPoint inside limitations.
o HasMathCurve()
Tests whether a CATIForeignCurve has a mathematical representation.
o IsConfused(CATMathTransformation&,CATCurve*,CATMathTransformation1D*)
Tests whether a CATIForeignCurve is confused with another curve.
o IsInvariant(CATMathTransformation&,CATMathTransformation1D*)
Tests whether a CATIForeignCurve is invariant.
o IsPeriodic()
Tests whether a CATIForeignCurve is periodic.
o SetLimits(CATCrvLimits&)
Modifies the limitations of a CATIForeignCurve.

Constructor and Destructor


o CATForeignCurveData
public CATForeignCurveData()
Default constructor.
o ~CATForeignCurveData
public virtual ~CATForeignCurveData()

Methods


o CreateLocalEquation
public virtual void CreateLocalEquation( const CATLONG32 iIndex,
const CATMathFunctionX*& oFx,
const CATMathFunctionX*& oFy,
const CATMathFunctionX*& oFz) = 0
Retrieves the mathematical equation associated with an arc of a CATIForeignCurve.
The retrieved equations are created by the method, and must not be deleted, as part of the object.
Parameters:
iIndex
The arc number.
oFx
A pointer to the equation of the first coordinate X=oFx(w).
oFy
A pointer to the equation of the second coordinate Y=oFy(w).
oFz
A pointer to the equation of the third coordinate Z=oFy(w).
o Eval
public virtual void Eval( const CATCrvLimits& iDomainToEvaluate,
const CATLONG32 iNbOfPoints,
const CATCrvEvalCommand& iCommand,
CATCrvEvalResult& ioResult) const
Evaluates this CATCurve and its derivatives inside a domain.
Parameters:
iDomainToEvaluate
The limits inside which the domain is to be evaluated.
iNbOfPoints
The number of equally spaced points of iDomainToEvaluate.
iCommand
The type of evaluation.
ioResult.
The object containing the results.
o Eval
public virtual void Eval( const CATCrvParam& iPoint,
const CATCrvEvalCommand& iCommand,
CATCrvEvalLocal& ioResult) const
Evaluates a CATIForeignCurve and its derivatives.
Parameters:
iPoint
The parameter of the point to evaluate.
iCommand
The type of evaluation.
ioResult.
The object containing the results.
o GetInternalLimits
public virtual void GetInternalLimits( const CATLONG32 iArc,
CATCrvLimits& ioInternalLimits) const = 0
Returns the limitations of an arc of a CATIForeignCurve.
This takes into account the current limitations of the curve.
Parameters:
iArc
The arc number.
ioInternalMaxLimits
The corresponding limitations.
o GetInternalMaxLimits
public virtual void GetInternalMaxLimits( const CATLONG32 iArc,
CATCrvLimits& ioInternalMaxLimits) const = 0
Returns the limitations of an arc of a CATIForeignCurve.
This does not take into account the current limitations of the curve.
Parameters:
iArc
The arc number.
ioInternalMaxLimits
The corresponding limitations.
o GetKnotVector
public virtual const CATKnotVector * GetKnotVector()const = 0
Returns the knot vector associated with a CATIForeignCurve.
Returns:
The knot vector.
o GetLimits
public virtual void GetLimits(CATCrvLimits& ioCurrentLimits) const = 0
Returns the limitations of a CATIForeignCurve.
Parameters:
ioCurrentLimits
The current limitations.
o GetMathCurve
public virtual CATMathCurve* GetMathCurve()const
Returns a pointer to the mathematical representation of this CATCurve.
The CATMathCurve .
Returns:
The associated mathematical curve, that belongs to this CATCurve.If the mathematical representation does not exist, the method returns a NULL pointer.
o GetMaxLimits
public virtual void GetMaxLimits(CATCrvLimits& ioMaxLimits) const = 0
Returns the maximum limitations of a CATIForeignCurve.
This does not take into account the current limitations of the curve. This maximum limits can be the creation limits or the limits that are obtained by extrapolation, depending on the types of geometric objects.
Parameters:
ioMaxLimits
The maximum limits.
o GetParam
public virtual CATCurve::CATSolutionDiagnostic GetParam( const CATMathPoint& iPoint,
CATCrvParam& ioParam) const
Retrieves the CATCrvParam on a CATIForeignCurve corresponding to a given CATMathPoint.
This transformation is only available on canonical objects such as planes, lines, conics.
Parameters:
iPoint
The CATMathPoint which coordinates are to be transformed as CATCrvParam.
ioParam
The first corresponding CATCrvParam on the curve.
Returns:
The diagnosis of the number of parameters that can be evaluated on this point.
o GetParam
public virtual CATCurve::CATSolutionDiagnostic GetParam( const CATMathPoint& iPoint,
CATCrvParam& ioParam,
const CATCrvLimits& iInside)const
Retrieves the CATCrvParam on a CATIForeignCurve corresponding to a CATMathPoint inside limitations.
This transformation is only available on canonical objects such as lines and conics.
Parameters:
iPoint
The CATMathPoint whose coordinates are to be transformed as a CATCrvParam.
ioParam
The first corresponding CATCrvParam on the curve.
iInside
The CATCrvLimits to take into account for trimming the curve.
Returns:
The diagnosis of the number of parameters that can be evaluated on this point.
o HasMathCurve
public virtual CATBoolean HasMathCurve()const
Tests whether a CATIForeignCurve has a mathematical representation.
Returns:
The result of the test.
Legal values::
1
If a CATIForeignCurve has a mathematical representation.
0
Otherwise.
o IsConfused
public virtual CATBoolean IsConfused( const CATMathTransformation& iTransfo,
const CATCurve* iTCurve,
CATMathTransformation1D* oTransfo1D)const = 0
Tests whether a CATIForeignCurve is confused with another curve.
This method does not take into account the current limitations of the curves.
Parameters:
oTransfo1D
The 1D-transformation defining the change of parametrization between the transformation of the CATIForeignCurve and iTCurve. If NULL, this argument is not set.
Returns:
The result of the test.
Legal values::
1
If the transformation of the CATIForeignCurve is geometrically the same as iTCurve.
0
Otherwise.
o IsInvariant
public virtual CATBoolean IsInvariant( const CATMathTransformation& iTransfo,
CATMathTransformation1D* oTransfo1D= NULL) const
Tests whether a CATIForeignCurve is invariant.
This method does not take into account the current limitations of the curve.
Parameters:
oTransfo1D
The 1D-transformation defining the change of parametrization between the CATIForeignCurve and the transformation of this. If NULL, this argument is not set.
Returns:
The result of the test.
Legal values::
1
If the transformation of the CATIForeignCurve is geometrically the same as itself.
0
Otherwise.
o IsPeriodic
public virtual CATBoolean IsPeriodic()const = 0
Tests whether a CATIForeignCurve is periodic.
This method does not take into account the current limitations of the curve.
Returns:
The result of the test.
Legal values::
0
If the CATIForeignCurve is not periodic.
1
If the CATIForeignCurve is periodic.
o SetLimits
public virtual void SetLimits( const CATCrvLimits& iCurrentLimits) = 0
Modifies the limitations of a CATIForeignCurve.
Parameters:
iLimits
The new current limitations.

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

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