GeometricObjects 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(CATCrvParam&,CATCrvEvalCommand&,CATCrvEvalLocal&)
Evaluates a CATIForeignCurve and its derivatives.
o Eval(CATCrvLimits&,CATLONG32,CATCrvEvalCommand&,CATCrvEvalResult&)
Evaluates this CATCurve and its derivatives inside a domain.
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 CreateLocalEquation( const iIndex,
const oFx,
const oFy,
const oFz)
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 Eval( const iPoint,
const iCommand,
ioResult)
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 Eval
public virtual Eval( const iDomainToEvaluate,
const iNbOfPoints,
const iCommand,
ioResult)
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 GetInternalLimits
public virtual GetInternalLimits( const iArc,
ioInternalLimits)
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 GetInternalMaxLimits( const iArc,
ioInternalMaxLimits)
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 GetKnotVector()
Returns the knot vector associated with a CATIForeignCurve.
Returns:
The knot vector.
o GetLimits
public virtual GetLimits( ioCurrentLimits)
Returns the limitations of a CATIForeignCurve.
Parameters:
ioCurrentLimits
The current limitations.
o GetMathCurve
public virtual GetMathCurve()
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 GetMaxLimits( ioMaxLimits)
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 GetParam( const iPoint,
ioParam)
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 GetParam( const iPoint,
ioParam,
const iInside)
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 HasMathCurve()
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 IsConfused( const iTransfo,
const iTCurve,
oTransfo1D)
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 IsInvariant( const iTransfo,
oTransfo1D= NULL)
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 IsPeriodic()
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 SetLimits( const iCurrentLimits)
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 © 1999-2014, Dassault Systèmes. All rights reserved.