GeometricObjects Interface CATGeoFactory

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATGeoFactory

Interface representing the factory of all geometric elements.

Role: The CATGeoFactory creates the geometric elements. It manages the AddRef mechanism. To suppress a geometric element, you must use CATICGMContainer::Remove method, that also takes in charge the AddRef mechanism.
The creation of a container implies the creation of two factories, an explicit one and an implicit one. All the methods described here work on both, except the Next method, that only works on the explicit factory.
At the container creation, 7 implicit objects (called Datums) are created and represent the canonical geometric objects: the space origin CATGeoFactory::O, the infinite lines in the three directions, CATGeoFactory::OI, CATGeoFactory::OJ, CATGeoFactory::OK, and the three infinite planes passing through these lines CATGeoFactory::OIJ, CATGeoFactory::OJK, CATGeoFactory::OKI.
The description and the use of the entities created by the factory are described in each entity class.
Lifecyle rules: a CATGeoFactory is created by using the CATCreateCGMContainer global function or loaded from a stream with the CATLoadCGMContainer global function. It can be saved on a given stream (CATLoadCGMContainer).When you do not need it anymore, you must close it CATCloseCGMContainer. All these global functions can be found in the CATCGMContainerMngt.h file.


Method Index


o CATCreateNurbsCurve(CATKnotVector&,CATLONG32&,CATMathSetOfPoints&,double*,CATParameterizationOption)
Creates a NURBS curve.
o CATCreateNurbsSurface(CATKnotVector&,CATKnotVector&,CATLONG32&,CATMathGridOfPoints&,double*,CATParameterizationOption)
Creates a geometric NURBS surface.
o CATCreatePNurbs(CATKnotVector&,CATLONG32&,double*,double*,CATSurface*,CATParameterizationOption)
Creates a NURBS curve defined in the space of a surface.
o Compare(CATMathPoint&,CATMathPoint&)
Tests the confusion of 2 points.
o CreateBody()
Creates an empty topological body.
o CreateBody(CATBodyMode,char[],char*,int)
Creates an empty topological body.
o CreateCartesianPoint(CATMathPoint&)
Creates a geometric point from a mathematical point.
o CreateCartesianPoint(double,double,double)
Creates a geometric point from its cartesian coordinates.
o CreateCircle(double,CATMathPlane&)
Creates a geometric circle.
o CreateCircle(double,CATMathPlane&,CATAngle,CATAngle)
Creates a geometric circle arc.
o CreateCompositeLaw(CATLONG32,double*,CATMathFunctionX**)
Constructs a composite law.
o CreateCone(CATMathAxis&,double,CATAngle,CATAngle,CATAngle,double,double)
Creates a frustum of a geometric cone.
o CreateConstantLaw(CATConstantLaw*)
Duplicates this law.
o CreateConstantLaw(double,double,double)
Creates a constant law.
o CreateCylinder(CATMathAxis&,double&,double&,double&,CATAngle&,CATAngle&)
Creates a piece of a geometric cylinder.
o CreateEllipse(double,double,CATMathPlane&)
Creates a geometric ellipse.
o CreateEllipse(double,double,CATMathPlane&,CATAngle,CATAngle)
Creates a geometric ellipse arc.
o CreateForeignCurve(CATForeignCurveData*)
Creates a foreign curve.
o CreateForeignPCurve(CATForeignPCurveData*,CATSurface*)
Creates a foreign Pcurve.
o CreateForeignSurface(CATForeignSurfaceData*)
Creates a foreign surface.
o CreateHelix(CATMathLine&,CATMathPoint&,CATAngle,CATAngle,double,CATLONG32,double)
Creates a geometric helix.
o CreateLine(CATPoint*,CATPoint*)
Creates a trimmed geometric line from two geometric points.
o CreateLine(CATMathPoint&,CATMathPoint&)
Creates a trimmed geometric line from two mathematical points.
o CreateLine(CATPoint*,CATPoint*,CATCrvLimits&)
Creates an untrimmed geometric line from 2 geometric points.
o CreateLine(CATMathPoint&,CATMathDirection&)
Creates an untrimmed geometricl line from a mathematical point and a direction.
o CreateLine(CATMathPoint&,CATMathPoint&,CATCrvLimits&)
Creates an untrimmed geometric line from 2 mathematical points.
o CreateLinearLaw(CATLinearLaw*)
Duplicates this law.
o CreateLinearLaw(double,double,double,double)
Creates a linear law.
o CreateMacroPoint()
Creates an empty CATMacroPoint.
o CreateMacroPoint(CATLISTP(CATPoint)&)
Creates a geometric point aggregating several geometric points.
o CreateNurbsCurve(CATKnotVector&,CATLONG32&,CATMathSetOfPoints&,double*,CATParameterizationOption)
o CreateNurbsSurface(CATKnotVector&,CATKnotVector&,CATLONG32&,CATMathGridOfPoints&,double*,CATParameterizationOption)
o CreateOffsetSurface(double,CATSurface*,CATSurLimits&)
Creates a geometric offseted surface.
o CreatePCircle(double,CATSurParam&,CATSurface*)
Creates an untrimmed geometric circle defined in the space of a surface.
o CreatePCircle(double,CATSurParam&,CATAngle,CATAngle,CATSurface*)
Creates a trimmed geometric circle defined in the space of a surface.
o CreatePCircle(CATSurParam&,CATSurParam&,CATSurParam&,CATSurface*)
Creates a trimmed geometric circle defined in the space of a surface from 3 points.
o CreatePEllipse(CATMathAxis2D&,double&,double&,CATSurface*)
Creates an untrimmed ellipse defined in the space of a surface.
o CreatePEllipse(double&,double&,double&,CATSurParam&,CATSurface*)
Creates an untrimmed ellipse defined in the space of a surface.
o CreatePEllipse(CATMathAxis2D&,double&,double&,CATAngle,CATAngle,CATSurface*)
Creates a trimmed ellipse defined in the space of a surface.
o CreatePEllipse(double&,double&,double&,CATSurParam&,CATAngle,CATAngle,CATSurface*)
Creates a trimmed ellipse defined in the space of a surface.
o CreatePHyperbola(CATMathAxis2D&,double,double,CATSurface*)
Creates an untrimmed hyperbola defined in the space of a surface.
o CreatePHyperbola(CATMathAxis2D&,double,double,double,double,CATSurface*)
Creates a trimmed hyperbola defined in the space of a surface.
o CreatePLine(CATSurParam&,CATSurParam&,CATSurface*)
Creates a trimmed geometric line defined in the space of a surface.
o CreatePNurbs(CATKnotVector&,CATLONG32&,double*,double*,CATSurface*,CATParameterizationOption)
o CreatePParabola(CATMathAxis2D&,double,CATSurface*)
Creates an untrimmed parabola defined in the space of a surface.
o CreatePParabola(CATMathAxis2D&,double,double,double,CATSurface*)
Creates a trimmed parabola defined in the space of a surface.
o CreatePSpline(CATMathSetOfPointsND*,CATLONG32&,CATLONG32&,double*,CATSurface*)
Creates a cubic spline curve defined in the space of a surface.
o CreatePSpline(CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATLONG32,CATLONG32,CATSurface*)
Creates a quintic spline curve defined in the space of a surface.
o CreatePlane(CATMathPlane&)
Creates a geometric plane from a mathematical plane.
o CreatePlane(CATMathDirection&,double&)
Creates a geometric plane at a distance to a CATMathPlane.
o CreatePlane(CATMathPoint&,CATMathPoint&,CATMathPoint&)
Creates a geometric plane from 3 mathematical points.
o CreatePointOnCurve(CATCrvParam&,CATCurve*)
Creates a geometric point lying on a geometric curve from its parameter on the curve.
o CreatePointOnEdgeCurve(CATCurve*,CATCrvParam&,CATEdgeCurve*)
Creates a geometric point lying on a CATEdgeCurve from its parameter on one of the aggregated curves.
o CreatePointOnEdgeCurve(CATLONG32,CATCurve*[],CATCrvParam[],CATEdgeCurve*)
Creates a geometric point lying on a CATEdgeCurve from its parameters on a given number of the aggregated curves.
o CreatePointOnEdgeCurve(CATCurve*,CATCrvParam&,CATCurve*,CATCrvParam&,CATEdgeCurve*)
Creates a geometric point lying on a CATEdgeCurve from its parameters on two of the aggregated curves.
o CreatePointOnSurface(CATSurParam&,CATSurface*)
Creates a geometric point lying on a surface.
o CreateRevolutionSurface(CATCurve*,CATMathAxis&,CATAngle&,CATAngle&)
Creates a trimmed geometric revolution surface.
o CreateRevolutionSurface(CATCurve*,CATCrvLimits&,CATMathAxis&,CATAngle&,CATAngle&,CATBoolean&)
Creates a CATRevolutionSurface.
o CreateSimCurve(CATLISTP(CATCurve)&,CATLISTP(CATCrvLimits)&,CATListOfInt&,double)
Creates the curve that aggregates identical curves.
o CreateSphere(CATMathAxis&,double)
Creates a geometric sphere.
o CreateSphere(CATMathAxis&,double,CATAngle,CATAngle,CATAngle,CATAngle)
Creates a piece of a geometric sphere.
o CreateSplineCurve(CATMathSetOfPointsND*,CATLONG32&,CATLONG32&,CATLONG32&,double*)
Creates a cubic Spline curve.
o CreateSplineCurve(CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATMathSetOfPointsND*,CATLONG32,CATLONG32,CATLONG32)
Creates a quintic 3d spline curve.
o CreateSplineLaw(CATSplineLaw*)
Duplicates this law.
o CreateSplineLaw(CATLONG32,double*,double*)
Creates a spline law.
o CreateTabulatedCylinder(CATCurve*,CATMathDirection&,double&,double&)
Creates a trimmed tabulated cylinder.
o CreateTabulatedCylinder(CATCurve*,CATCrvLimits&,CATMathDirection&,double&,double&,CATBoolean&)
Creates a CATTabulatedCylinder.
o CreateTorus(CATMathAxis&,double,CATAngle,CATAngle,double,CATBoolean)
Creates a piece of a geometric self-intersecting torus.
o CreateTorus(CATMathAxis&,double,CATAngle,CATAngle,double,CATAngle,CATAngle)
Creates a piece of a geometric torus.
o GetDatum(CATGeoFactory::CATDatumId)
Returns a constant pointer to a given datum.
o GetImplicitGeoFactory()
Returns a pointer to the implicit geometric factory.
o GetInfinite()
Retrieves the size of the box centered at origin which contains all the objects, including infinite objects.
o GetModelSize()
Returns the model size associated with this CATGeoFactory.
o GetResolution(CATResolutionType)
Returns the minimum length of a valid object.
o GetUnit()
Retrieves the model unit.

Enumerated Type Index


o CATDatumId
The canonical (implicit) objects.

Methods


o CATCreateNurbsCurve
public virtual CATCreateNurbsCurve( const iKnotVector,
const iIsRational,
const iVertices,
const iWeights,
const iParameterizationOption= CatAutomaticParameterization)
Creates a NURBS curve.
Please refer to the enclycopedia to have a detailed description of the NURBS representation.
Parameters:
iKnotVector
The nodal vector.
iIsRational
Legal values: 1 if the NURBS is rational, 0 otherwise.
iVertices
The list of the vertices.
iWeigths
The array of the weights.
iParameterizationOption
The option of parameterization. By default, the parameterization of the NURBS is modified to better fit internal criteria. In this case, you can recover the initial parameterization with the
method.
Returns:
The pointer to the created curve.
o CATCreateNurbsSurface
public virtual CATCreateNurbsSurface( const iKnotVectorU,
const iKnotVectorV,
const iIsRational,
const iVertices,
const iWeights,
const iParameterizationOption= CatAutomaticParameterization )
Creates a geometric NURBS surface. Please refer to the enclycopedia to have a detailed description of the NURBS representation.
Parameters:
iKnotVectorU
The nodal vector in the first direction.
iKnotVectorV
The nodal vector in the second direction.
iIsRational
Legal values: 1 if the NURBS is rational, 0 otherwise.
iVertices
The grid of the vertices.
iWeigths
The array of the weights.
iParameterizationOption
The option of parameterization. By default, the parameterization of the NURBS is modified to better fit internal criteria. In this case, you can recover the initial parameterization with the
method.
Returns:
The pointer to the created surface.
o CATCreatePNurbs
public virtual CATCreatePNurbs( iKnotVector,
const iIsRational,
const iVertices,
const iWeights,
iSupport,
const iParameterizationOption= CatAutomaticParameterization )
Creates a NURBS curve defined in the space of a surface.
Parameters:
iKnotVector
The nodal vector.
iIsRational
Legal values: 1 if the NURBS is rational, 0 otherwise.
iVertices
The list of the vertices. The vertices (control points) coordinates are given as surface parameters in the following order: u1, v1, u2, v2,.... Please refer to the enclycopedia to have a detailed description of the NURBS representation.
iWeigths
The array of the weights.
iSupport
The pointer to the surface on which the nurbs is created.
iParameterizationOption
The option of parameterization. By default, the parameterization of the NURBS is modified to better fit internal criteria. In this case, you can recover the initial parameterization with the
method.
Returns:
The pointer to the created curve.
o Compare
public virtual Compare( const iPoint1,
const iPoint2)
Tests the confusion of 2 points.
Parameters:
iPoint1
The first point to compare.
iPoint2
The second point to compare.
Returns:
FALSE
if the distance between the 2 points is smaller than the resolution.
TRUE
if the distance between the 2 points is larger than the resolution.
o CreateBody
public virtual CreateBody()
Creates an empty topological body.
This object is mainly used by the TopologicalObjects framework.
Returns:
The pointer to the created body.
o CreateBody
public virtual CreateBody( iMode= CatBodyMode_Working ,
const iRole= "Unknown",
const iTracability= NULL ,
const iLine= 0 )
Creates an empty topological body.
This object is mainly used by the TopologicalObjects framework.
Parameters:
iMode
Option for initial working mode (to reconsider only in case of specific PCS smart management case study). By default, data structure are set for best working conditions with core operations (Boolean,Tessellation).
iRole
Helpers for support.
Returns:
The pointer to the created body.
o CreateCartesianPoint
public virtual CreateCartesianPoint( const iMathPointToCopy)
Creates a geometric point from a mathematical point.
Parameters:
iMathPointToCopy
The mathematical point.
Returns:
The pointer to the created point.
o CreateCartesianPoint
public virtual CreateCartesianPoint( const iFirstCoord,
const iSecondCoord,
const iThirdCoord)
Creates a geometric point from its cartesian coordinates.
Parameters:
iFirstCoord
The first coordinate of the point.
iSecondCoord
The second coordinate of the point.
iThirdCoord
The third coordinate of the point.
Returns:
The pointer to the created point.
o CreateCircle
public virtual CreateCircle( const iRadius,
const iMathPlane)
Creates a geometric circle.
Parameters:
iRadius
The radius.
iMathPlane
The plane defining the center and axis of the circle.
Returns:
The pointer to the created circle.
o CreateCircle
public virtual CreateCircle( const iRadius,
const iMathPlane,
const iStart,
const iEnd)
Creates a geometric circle arc.
The circle center is the origin of the plane.
Note 0 <= iStart < CAT2PI, iStart < iEnd <= iStart + CAT2PI
Parameters:
iRadius
The radius.
iMathPlane
The plane defining the center and axis of the circle.
iStart
The first angle limitation (in Radians).
iEnd
The last angle limitation (in Radians).
Returns:
The pointer to the created circle.
o CreateCompositeLaw
public virtual CreateCompositeLaw( const iNbrOfFunctions,
const iBorders,
const iFunctions)
Constructs a composite law.
Parameters:
iNbrOfFunctions
The number of CATMathFunctionX intended to be used in the composite law.
iBorders
The array of the CATMathFunctionX borders.
iFunctions
The array of pointers to the CATMathFunctionX intended to be used in the composite law.
o CreateCone
public virtual CreateCone( const iConeAxis,
const iStartRadius,
const iConeAngle,
const iStartAngle,
const iEndAngle,
const iStartRuleLength,
const iEndRuleLength)
Creates a frustum of a geometric cone.
Parameters:
iConeAxis
The cone axis:
  • The third direction is the rotation axis.
  • The first direction is the angle reference. Start and end angles are counted from this direction.
  • The first and second directions define a plane which supports the base radius.
iStartRadius
The radius on the plane defined by the first and second directions of iConeAxis.
iConeAngle
The external angle of the cone in radians (angle between the cone and the plane supporting the base radius). The validity range of the cone angle is:
0 < ConeAngle < Pi/2.
iStartAngle
The start angle in radians, counted from the first direction of iConeAxis. When standing along the third direction of iConeAxis, on the plane defined by the first and second directions of iConeAxis, positive angles are counter-clockwise(right-hand rule). If angle values are too large or inconsistent, the cone is created around 2*Pi.
iEndAngle
The end angle in radians, counted from the first direction of iConeAxis. When standing along the third direction of iConeAxis, on the plane defined by the first and second directions of iConeAxis, positive angles are counter-clockwise(right-hand rule). If angle values are too large or inconsistent, the cone is created around 2*Pi.
iStartRuleLength
The start limit of the cone slant height (the length is not counted along the third direction of iConeAxis but along the cone surface).
iEndRuleLength
The end limit of the cone slant height (the length is not counted along the third direction of iConeAxis but along the cone surface).
Returns:
The pointer to the created cone.
o CreateConstantLaw
public virtual CreateConstantLaw( iToCopy)
Duplicates this law.
Parameters:
iToCopy
The pointer to the law to copy.
Returns:
The pointer to the created law.
o CreateConstantLaw
public virtual CreateConstantLaw( const iTMin,
const iTMax,
const iConstant)
Creates a constant law.
A law is a function L of one parameter iT on a given 1D interval [iTmin,iTmax]. A constant law is such that L(iT)=iConstant on the definition interval.
Parameters:
iTMin
The lower bound of the definition interval.
iTMax
The upper bound of the definition interval.
iConstant
The constant value on the interval.
Returns:
The pointer to the created law.
o CreateCylinder
public virtual CreateCylinder( const iAxis,
const iRadius,
const iAxisStart,
const iAxisEnd,
const iAngleStart,
const iAngleEnd)
Creates a piece of a geometric cylinder.
Parameters:
iAxis
The axis of the cylinder:
  • The third direction is the rotation axis.
  • The first direction is the angle reference. Start and end angles are counted from this direction.
iRadius
The radius of the cylinder on the plane defined by the first and second directions of iAxis.
iAxisStart
The start limit along the rotation axis (third direction of iAxis).
iAxisEnd
The end limit along the rotation axis (third direction of iAxis)
iAngleStart
The start angle in radians, counted from the first direction of iAxis. When standing along the third direction of iAxis, on the plane defined by the first and second directions of iAxis, positive angles are counter-clockwise (right-hand rule). If angle values are too large or inconsistent, a 2*Pi surface is created.
iAngleEnd
The end angle in radians, counted from the first direction of iAxis. When standing along the third direction of iAxis, on the plane defined by the first and second directions of iAxis, positive angles are counter-clockwise (right-hand rule). If angle values are too large or inconsistent, a 2*Pi surface is created.
Returns:
The pointer to the created cylinder.
o CreateEllipse
public virtual CreateEllipse( const iMajorAxis,
const iMinorAxis,
const iMathPlane)
Creates a geometric ellipse.
Parameters:
iMajorAxis
The half length of the major axis.
iMinorAxis
The half length of the minor axis.
iMathPlane
The origin and axis of the ellipse.
Returns:
The created ellipse.
o CreateEllipse
public virtual CreateEllipse( const iMajorAxis,
const iMinorAxis,
const iMathPlane,
const iStart,
const iEnd)
Creates a geometric ellipse arc.
Refer plese to the encyclopedia for the description of the angle limitations.
Parameters:
iMajorAxis
The half length of the major axis.
iMinorAxis
The half length of the minor axis.
iMathPlane
The origin and axis of the ellipse.
iStart
The first angle limitation (in Radians).
iEnd
The last angle limitation (in Radians).
Returns:
The pointer to the created ellipse.
o CreateForeignCurve
public virtual CreateForeignCurve( iForeignCurveData)
Creates a foreign curve.
Parameters:
iForeignCurveData
The pointer to the data defining the foreign curve.
Returns:
The pointer to the created curve.
o CreateForeignPCurve
public virtual CreateForeignPCurve( iForeignPCurveData,
iSurface)
Creates a foreign Pcurve.
Parameters:
iForeignPCurveData
The pointer to the data defining the foreign Pcurve.
iSurface
The pointer to the surface on which the curve is defined.
Returns:
The pointer to the created Pcurve.
o CreateForeignSurface
public virtual CreateForeignSurface( iForeignSurfaceData)
Creates a foreign surface.
Parameters:
iForeignSurfaceData
The pointer to the data defining the foreign surface.
Returns:
The pointer to the created surface.
o CreateHelix
public virtual CreateHelix( const iAxis,
const iStartingPoint,
const iStart,
const iEnd,
const iPitch,
const iTrigonometricOrientation,
iRadiusEvolution= 0.)
Creates a geometric helix.
Parameters:
iAxis
The helix axis.
iStartingPoint
The origin point of the helix.
iStart
The first limitation of the helix from iStartingPoint. This angle is considered on the helix itself, rotating about iAxis according to the iTrigonometricOrientation parameter.
iEnd
The last limitation of the helix from the origin point. This angle is considered on the helix itself, rotating about iAxis according to the iTrigonometricOrientation parameter.
iPitch
The height between two turns.
iTrigonometricOrientation
The orientation of the rotation about the axis oriented by iHelixAxisOrientation: 1 to turn counterclockwise, -1 to turn clockwise.
iRadiusEvolution
The coefficient of linear variation for the radius.
Returns:
The created helix.
o CreateLine
public virtual CreateLine( const iStart,
const iEnd)
Creates a trimmed geometric line from two geometric points.
Parameters:
iStart
The pointer to the first limiting point.
iEnd
The pointer to the last limiting point.
Returns:
The pointer to the created line.
o CreateLine
public virtual CreateLine( const iStart,
const iEnd)
Creates a trimmed geometric line from two mathematical points.
Parameters:
iStart
The first limiting point.
iEnd
The last limiting point.
Returns:
The pointer to the created line.
o CreateLine
public virtual CreateLine( const iStart,
const iEnd,
ioLimits)
Creates an untrimmed geometric line from 2 geometric points.
Parameters:
iStart
The pointer to the first point
iEnd
The pointer to the second point
oLimits
The parameters of the corresponding points on the line.
Returns:
The pointer to the created line.
o CreateLine
public virtual CreateLine( const iPoint,
const iDirection)
Creates an untrimmed geometricl line from a mathematical point and a direction.
Parameters:
iPoint
The mathematical point
iDirection
The direction
Returns:
The pointer to the created line.
o CreateLine
public virtual CreateLine( const iStart,
const iEnd,
ioLimits)
Creates an untrimmed geometric line from 2 mathematical points.
Parameters:
iStart
The first point
iEnd
The second point
oLimits
The parameters of the corresponding points on the line.
Returns:
The pointer to the created line.
o CreateLinearLaw
public virtual CreateLinearLaw( iToCopy)
Duplicates this law.
Parameters:
iToCopy
The pointer to the law to copy.
Returns:
The pointer to the created law.
o CreateLinearLaw
public virtual CreateLinearLaw( const iTMin,
const iValueAtTMin,
const iTMax,
const iValueAtTMax)
Creates a linear law.
A law is a function L of one parameter iT on a given 1D interval [iTmin,iTmax]. A linear law is line segment between L(iTmin)=iValueAtTMin and L(iTmax)=iValueAtTMax.
Parameters:
iTMin
The lower bound of the definition interval.
iValueAtTMin
The law value on the lower bound of the definition interval.
iTMax
The upper bound of the definition interval.
iValueAtTMax
The law value on the upper bound of the definition interval.
Returns:
The pointer to the created law.
o CreateMacroPoint
public virtual CreateMacroPoint()
Creates an empty CATMacroPoint.
Returns:
The pointer to the created point.
o CreateMacroPoint
public virtual CreateMacroPoint( iPoints)
Creates a geometric point aggregating several geometric points.
Role: A CATMacroPoint is the geometry of a CATVertex and is used in a topological context.
Parameters:
iPoints
The list of points to define the CATMacroPoint.
Returns:
The pointer to the created point.
o CreateNurbsCurve
public virtual CreateNurbsCurve( const iKnotVector,
const iIsRational,
const iVertices,
const iWeights,
const iParameterizationOption= CatAutomaticParameterization)
Deprecated:
V5R14 CATCreateNurbsCurve
o CreateNurbsSurface
public virtual CreateNurbsSurface( const iKnotVectorU,
const iKnotVectorV,
const iIsRational,
const iVertices,
const iWeights,
const iParameterizationOption= CatAutomaticParameterization )
Deprecated:
V5R14 CATCreateNurbsSurface
o CreateOffsetSurface
public virtual CreateOffsetSurface( const iOffset,
iReference,
const iLimits)
Creates a geometric offseted surface.
Parameters:
iOffset
The offset value, relative to the normalized normal to the surface (cross product of the first derivative with respect to the first direction with the first derivative in the second direction).
iReference
The pointeur to the surface to offset.
iLimits
The limits on iReference to take into account in the offset operation.
Returns:
The pointer to the created surface.
o CreatePCircle
public virtual CreatePCircle( const iRadius,
const iCenter,
iSupport)
Creates an untrimmed geometric circle defined in the space of a surface.
Parameters:
iRadius
The radius of the circle.
iCenter
The coordinates of the center
iSupport
The pointer to the surface on which the circle is created.
Returns:
The pointer to the created circle.
o CreatePCircle
public virtual CreatePCircle( const iRadius,
const iCenter,
const iStart,
const iEnd,
iSupport)
Creates a trimmed geometric circle defined in the space of a surface.
Parameters:
iRadius
The radius of the circle.
iCenter
The coordinates of the center
iStart
The first angle limitation (in Radians).
iEnd
The last angle limitation (in Radians).
iSupport
The pointer to the surface on which the circle is created.
Returns:
The pointer to the created circle.
o CreatePCircle
public virtual CreatePCircle( const iStart,
const iMiddle,
const iEnd,
iSupport)
Creates a trimmed geometric circle defined in the space of a surface from 3 points.
Parameters:
iStart
The first point
iMiddle
The second point
iStart
The third point
iSupport
The pointer to the surface on which the circle is created.
Returns:
The pointer to the created circle, oriented as the surface, whatever the points are ordered.
o CreatePEllipse
public virtual CreatePEllipse( const iAxis,
const iMajorAxis,
const iMinorAxis,
iSupport)
Creates an untrimmed ellipse defined in the space of a surface.
Parameters:
iAxis
The ellipse axis system (center, major axis, minor axis), positively oriented.
iMajorAxis
The length of the half major axis.
iMinorAxis
The length of the half minor axis.
iSupport
The pointer to the surface on which the ellipse is created.
Returns:
The pointer to the created ellipse.
o CreatePEllipse
public virtual CreatePEllipse( const iMajorAxis,
const iMinorAxis,
const iOffsetAngle,
const iCenter,
iSupport)
Creates an untrimmed ellipse defined in the space of a surface.
Parameters:
iMajorAxis
The length of the half major axis.
iMinorAxis
The length of the half minor axis.
iOffsetAngle
The angle between the first direction u of the surface and the major axis of the ellipse.
iCenter
The intersection between the minor axis and the major axis.
iSupport
The pointer to the surface on which the ellipse is created.
Returns:
The pointer to the created ellipse.
o CreatePEllipse
public virtual CreatePEllipse( const iAxis,
const iMajorAxis,
const iMinorAxis,
const iStart,
const iEnd,
iSupport)
Creates a trimmed ellipse defined in the space of a surface.
Please refer to the encyclopedia to the detailed definition of the start and end angle.
Parameters:
iAxis
The ellipse axis system (center, major axis, minor axis), positively oriented.
iMajorAxis
The length of the half major axis.
iMinorAxis
The length of the half minor axis.
iStart
The angle low limitation measured from the major axis (in Radians).
iEnd
The angle high limitation measured from the major axis (in Radians).
iSupport
The pointer to the surface on which the ellipse is created.
Returns:
The pointer to the created ellipse.
o CreatePEllipse
public virtual CreatePEllipse( const iMajorAxis,
const iMinorAxis,
const iOffsetAngle,
const iCenter,
const iStart,
const iEnd,
iSupport)
Creates a trimmed ellipse defined in the space of a surface.
Please refer to the encyclopedia to the detailed definition of the start and end angle.
Parameters:
iMajorAxis
The length of the half major axis.
iMinorAxis
The length of the half minor axis.
iOffsetAngle
The angle between the first direction u of the surface and the major axis of the ellipse.
iCenter
The intersection between the minor axis and the major axis.
iStart
The angle low limitation measured from the major axis (in Radians).
iEnd
The angle high limitation measured from the major axis (in Radians).
iSupport
The pointer to the surface on which the ellipse is created.
Returns:
The pointer to the created ellipse.
o CreatePHyperbola
public virtual CreatePHyperbola( const iAxis,
const iA,
const iB,
iSupport)
Creates an untrimmed hyperbola defined in the space of a surface.
Parameters:
iAxis
The system of 2D axis of the hyperbola. In this system, the hyperbola is the branch along the positive X corresponding to the implicit equation X^2/(iA^2) - Y^2/(iB^2) = 1.
iA
The length between the center and the vertex.
iB
The distance between focus and center c = sqrt(iA^2+iB^2); eccentricity e = c/iA > 1.
iSupport
The pointer to the surface on which the parabola is created.
Returns:
The pointer to the created hyperbola.
o CreatePHyperbola
public virtual CreatePHyperbola( const iAxis,
const iA,
const iB,
const iStart,
const iEnd,
iSupport)
Creates a trimmed hyperbola defined in the space of a surface.
Parameters:
iAxis
The system of 2D axis of the hyperbola. In this system, the hyperbola is the branch along the positive X corresponding to the implicit equation X^2/(iA^2) - Y^2/(iB^2) = 1
iA
The length between the center and the vertex.
iB
The distance between focus and center c = sqrt(iA^2+iB^2); eccentricity e = c/iA > 1.
iStart
The first limit.
iEnd
The last limit. These parameters correspond to the current limits of the parabola with respect to the parameterization X(t) = a*cosh(t), Y(t) = b*sinh(t) , where X and Y are relative to iAxis.
Notice that this parameterization is not the internal parameterization.
iSupport
The pointer to the surface on which the parabola is created.
Returns:
The pointer to the created hyperbola.
o CreatePLine
public virtual CreatePLine( const iStart,
const iEnd,
iSupport)
Creates a trimmed geometric line defined in the space of a surface.
Parameters:
iStart
The first limitation of the line.
iEnd
The last limitation of the line.
iSurface
The pointer to the surface on which the line is created.
Returns:
The pointer to the created line.
o CreatePNurbs
public virtual CreatePNurbs( iKnotVector,
const iIsRational,
const iVertices,
const iWeights,
iSupport,
const iParameterizationOption= CatAutomaticParameterization )
Deprecated:
V5R16 CATCreatePNurbs
o CreatePParabola
public virtual CreatePParabola( const iAxis,
const ip,
iSupport)
Creates an untrimmed parabola defined in the space of a surface.
Parameters:
iAxis
The system of 2D axis of the parabola. In this system, the implicit equation is Y^2 = 2*p*X
iP
Twice the length from the vertex of the parabola to its focus .
iSupport
The pointer to the surface on which the parabola is created.
Returns:
The pointer to the created parabola.
o CreatePParabola
public virtual CreatePParabola( const iAxis,
const iP,
const iStart,
const iEnd,
iSupport)
Creates a trimmed parabola defined in the space of a surface.
Parameters:
iAxis
The system of 2D axis of the parabola. In this system, the implicit equation is Y^2 = 2*iP*X.
iP
Twice the length from the vertex of the parabola to its focus.
iStart
The first limit of the parabola.
iEnd
The last limit of the parabola. These parameters correspond to the current limits of the parabola with respect to the parametrization X(t) = t^2/(2*p), Y(t) = t , where X and Y are relative to iAxis.
Notice that this parameterization is not the internal paramaterization.
iSupport
The pointer to the surface on which the parabola is created.
Returns:
The pointer to the created parabola.
o CreatePSpline
public virtual CreatePSpline( const iPoints,
const iFirstCoordIndex,
const iSecondCoordIndex,
const iParameters,
iSupport)
Creates a cubic spline curve defined in the space of a surface.
This is particulary usefull for creating intersection curves.
Parameters:
iPoints
The pointer to a CATMathSetOfPointsND, with N>=2. The points are supposed to belong to the surface.
iFirstCoordIndex
The coordinate index of the ND points to be taken as the first coordinate of the constructing points of the spline.
iSecondCoordIndex
The coordinate index of the ND points to be taken as the second coordinate ofthe constructing points of the spline.
iParameters
The array of parameters defining a user parametrization. If NULL, the parametrization is automatically defined. The size of the array is the number of points of the CATMathSetOfPointsND.
iSupport
The surface to which the curve belongs to.
Returns:
The pointer to the created curve.
o CreatePSpline
public virtual CreatePSpline( const iParams,
const iPoints,
const iTangents,
const iSecondDerivatives,
const iFirstCoordIndex,
const iSecondCoordIndex,
iSupport)
Creates a quintic spline curve defined in the space of a surface.
This enables to create precise intersection curves with a low number of arc.
Parameters:
iParams
The pointer to a CATMathSetOfPointsND of dimension 1 defining a user parameterization.
iPoints
The pointer to a CATMathSetOfPointsND containing points of a PSpline
iTangents
The pointer to a CATMathSetOfPointsND containing tangents of a PSpline
iSecondDerivatives
The pointer to a CATMathSetOfPointsND containing second derivatives of a PSpline
iFirstCoordIndex
This index is such that the points, tangents and second derivatives of the first coordinate of the spline are the values of index iFirstCoordIndex.
iSecondCoordIndex
Same as iFirstCoordIndex but for the second coordinate of the spline.
iSupport
The surface to which the curve belongs to.
Returns:
The pointer to the created curve.
o CreatePlane
public virtual CreatePlane( const iMathPlane)
Creates a geometric plane from a mathematical plane.
Parameters:
iMathPlane
The mathematical point.
Returns:
The pointer to the created plane.
o CreatePlane
public virtual CreatePlane( const iMathPlaneNormal,
const iDistance)
Creates a geometric plane at a distance to a CATMathPlane.
Parameters:
iMathNormal
The normal to the plane.
iDistance
The distance along the normal direction.
Returns:
The created plane.
o CreatePlane
public virtual CreatePlane( const iMathOrigin,
const iFirstDirection,
const iSeconddirection)
Creates a geometric plane from 3 mathematical points.
The directions are ortho-normalized.
o CreatePointOnCurve
public virtual CreatePointOnCurve( const iParam,
iCurve)
Creates a geometric point lying on a geometric curve from its parameter on the curve.
Parameters:
iParam
The parameter on iCurve
iCurve
The pointer to the curve on which the point is created.
Returns:
The pointer to the created point.
o CreatePointOnEdgeCurve
public virtual CreatePointOnEdgeCurve( const iSpecCurve,
const iSpecParam,
const iSupport)
Creates a geometric point lying on a CATEdgeCurve from its parameter on one of the aggregated curves.
Parameters:
iSpecCurve
The pointer on one of the aggregated curves of the CATEdgeCurve iSupport, may be the CATEdgeCurve itself.
iSpecparam
The parameter on iSpecCurve of the PointOnEdgeCurve to create.
iSupport
The CATEdgeCurve pointer.
Returns:
The pointer to the created point.
o CreatePointOnEdgeCurve
public virtual CreatePointOnEdgeCurve( const iNbOfSpecs,
const iSpecCurves,
const iSpecParams,
const iSupport)
Creates a geometric point lying on a CATEdgeCurve from its parameters on a given number of the aggregated curves.
Parameters:
iNbOfSpecs
The number of aggregated curves on which the parameters of the point are given.
iSpecCurve
The array of pointers to iNbOfSpecs aggregated curves of the CATEdgeCurve iSupport. Can contain a pointer to the CATEdgeCurve itself.
iSpecparam
The corresponding parameters on the iSpecCurve aggregated curves of the PointOnEdgeCurve to create.
iSupport
The CATEdgeCurve pointer.
Returns:
The pointer to the created point.
o CreatePointOnEdgeCurve
public virtual CreatePointOnEdgeCurve( const iSpecCurve1,
const iSpecParam1,
const iSpecCurve2,
const iSpecParam2,
const iSupport)
Creates a geometric point lying on a CATEdgeCurve from its parameters on two of the aggregated curves.
Parameters:
iSpecCurve1
The pointer ton one of the aggregated curves of the CATEdgeCurve iSupport, may be the CATEdgeCurve itself.
iSpecparam1
The parameter on iSpecCurve1 of the PointOnEdgeCurve to create.
iSpecCurve2
The pointer to one of the aggregated curves of the CATEdgeCurve iSupport, may be the CATEdgeCurve itself.
iSpecparam2
The parameter on iSpecCurve2 of the PointOnEdgeCurve to create.
iSupport
The CATEdgeCurve pointer.
Returns:
The pointer to the created point.
o CreatePointOnSurface
public virtual CreatePointOnSurface( const iParam,
iSurface)
Creates a geometric point lying on a surface.
Parameters:
iParam
The parameters on iSurface of the point to create.
iSurface
The pointer to the surface on which the point is created.
Returns:
The pointer to the created point.
o CreateRevolutionSurface
public virtual CreateRevolutionSurface( iProfile,
const iRefAxis,
const iStart,
const iEnd)
Creates a trimmed geometric revolution surface.
Parameters:
iProfile
The pointer to the profile.
iRefAxis
The axis sytem. The profile is rotated around the Z axis, and must not intersect this axis, except at it first or last limits.
iStart
The low limitation of the rotation (in Radians).
iEnd
The high limitation of the rotation (in Radians).
Returns:
The pointer to the created revolution surface.
o CreateRevolutionSurface
public virtual CreateRevolutionSurface( iProfile,
const iProfileLimits,
const iRefAxis,
const iStart,
const iEnd,
ioIsOrientationChanged)
Creates a CATRevolutionSurface.
If the input profile is a CATPCurve, this method tries to optimize the resulting surface by replacing as far as possible the PCurve by a 3D Curve.
Parameters:
iProfile
The pointer to the profile.
iProfileLimits
The profile limitations.
iRefAxis
The axis sytem. The profile is rotated around the Z axis, and must not intersect this axis, except at it first or last limits.
iStart
The low limitation of the rotation (in Radians).
iEnd
The high limitation of the rotation (in Radians).
OrientationChanged
In case of the optimization, the relative orientation between iProfile and the generated 3D curve.
Legal values : TRUE for the same orientation, TRUE for the opposite.
Returns:
The pointer to the created revolution surface.
o CreateSimCurve
public virtual CreateSimCurve( iCurves,
iLimits,
iOrns,
const iGap)
Creates the curve that aggregates identical curves.
Parameters:
iCurves
The list of curve pointers.
iLimits
The list of limitations of the curves.
iOrns
The list of relative orientation of the curves.
Legal values:
1
same orientation
-1
opposite orientation
iGap
The maximum allowed gap between the curves.
Returns:
The created curve.
o CreateSphere
public virtual CreateSphere( const iAxis,
const iRadius)
Creates a geometric sphere.
Parameters:
iAxis
The axis of the sphere.
iRadius
The radius of the sphere.
Returns:
The pointer to the created sphere.
o CreateSphere
public virtual CreateSphere( const iAxis,
const iRadius,
const iMeridianStart,
const iMeridianEnd,
const iParallelStart,
const iParallelEnd)
Creates a piece of a geometric sphere. A sphere is defined by an axis and a radius. A piece of the full sphere is defined by limiting the meridian and parallel angles. The meridian planes pass through the axis third direction, the parallel planes are orthogonal to the axis third direction.
Parameters:
iAxis
The sphere axis.
  • The third direction is the rotation axis.
  • The first direction is the angle reference. Start and end meridian angles are counted from this direction.
iRadius
The sphere radius.
iMeridianStart
The low angle value of the meridians. Positive angles are defined by the right-hand rule.
iMeridianStart < iMeridianEnd
If specified angles are too large, the surface is swept around 2*Pi.
iMeridianEnd
The high angle value of the meridians. Positive angles are defined by the right-hand rule. iMeridianStart < iMeridianEnd
If specified angles are too large, the surface is swept around 2*Pi.
iParallelStart
The low angle value of the parallels.
Positive angles are in the direction of the sphere axis. Angles are counted from the radius in the plane defined by the first and second direction of the sphere axis. iParallelStart >= -Pi/2 ; iParallelStart < iParallelEnd
iParallelEnd
The high angle value of the parallels.
Positive angles are in the direction of the sphere axis. Angles are counted from the radius in the plane defined by the first and second direction of the sphere axis. iParallelEnd <= Pi/2 ; iParallelStart < iParallelEnd
Returns:
The created sphere.
o CreateSplineCurve
public virtual CreateSplineCurve( const iPoints,
const iFirstCoordIndex,
const iSecondCoordIndex,
const iThirdCoordIndex,
const iParameters)
Creates a cubic Spline curve.
Parameters:
iPoints
The pointer to a CATMathSetOfPointsND, with N>=3.
iFirstCoordIndex
The coordinate index of the ND points to be taken as the first coordinate of the constructing points of the spline.
iSecondCoordIndex
The coordinate index of the ND points to be taken as the second coordinate ofthe constructing points of the spline.
iThirdCoordIndex
The coordinate index of the ND points to be taken as the third coordinate of the constructing points of the spline.
iParameters
The array of parameters defining a user Parameterization. If NULL, the Parameterization is automatically defined. The size of the array is the number of points of the CATMathSetOfPointsND.
Returns:
The pointer to the created point.
o CreateSplineCurve
public virtual CreateSplineCurve( const iParams,
const iPoints,
const iTangents,
const iSecondDerivatives,
const iFirstCoordIndex,
const iSecondCoordIndex,
const iThirdCoordIndex)
Creates a quintic 3d spline curve.
Parameters:
iParams
The pointer to a CATMathSetOfPointsND of dimension 1 containing a user parameterization.
iPoints
The pointer to a CATMathSetOfPointsND containing points of a 3d Spline
iTangents
The pointer to a CATMathSetOfPointsND containing tangents of a 3d Spline
iSecondDerivatives
The pointer to a CATMathSetOfPointsND containing second derivatives of a 3d Spline
iFirstCoordIndex
This index is such that the points, tangents and second derivatives of the first coordinate of the spline are the values of index iFirstCoordIndex
iSecondCoordIndex
Same as iFirstCoordIndex but for the second coordinate of the spline.
iThirdCoordIndex
Same as iFirstCoordIndex but for the third coordinate of the spline.
Returns:
The pointer to the created curve.
o CreateSplineLaw
public virtual CreateSplineLaw( iToCopy)
Duplicates this law.
Parameters:
iToCopy
The pointer to the law to copy.
Returns:
The pointer to the created law.
o CreateSplineLaw
public virtual CreateSplineLaw( const iNbrOfConstraint,
const iT,
const iValue)
Creates a spline law.
A law is a function L of one parameter iT on a given 1D interval [iTmin,iTmax]. A spline law is a spline interpolation function between points with imposed tangents.
Parameters:
iNbrOfConstraint
The number of interpolation points.
iT
The array of the parameters of the interpolation points.
iTMax
The array of the spline law value at the interpolation points.
Returns:
The pointer to the created law.
o CreateTabulatedCylinder
public virtual CreateTabulatedCylinder( iProfile,
const iDirection,
const iStart,
const iEnd)
Creates a trimmed tabulated cylinder.
Parameters:
iProfile
The pointer to the profile.
iDirection
The direction along which the profile is swept.
iStart
The first limit along iDirection (can be negative ).
iEnd
The end limit along iDirection. It can be negative , but iStart <= iEnd .
Returns:
The pointer to the created tabulated cylinder.
o CreateTabulatedCylinder
public virtual CreateTabulatedCylinder( iProfile,
const iProfileLimits,
const iDirection,
const iStart,
const iEnd,
ioIsOrientationChanged)
Creates a CATTabulatedCylinder.
If the input profile is a CATPCurve, this method tries to optimize the resulting surface by replacing as far as possible the PCurve by a 3D Curve.
Parameters:
iProfile
The pointer to the profile.
iProfileLimits
The profile limitations.
iDirection
The direction along which the profile is swept.
iStart
The first limit along iDirection (can be negative ).
iEnd
The end limit along iDirection. It can be negative , but iStart <= iEnd .
OrientationChanged
In case of the optimization, the relative orientation between iProfile and the generated 3D curve.
Legal values : TRUE for the same orientation, TRUE for the opposite.
Returns:
The pointer to the created tabulated cylinder.
o CreateTorus
public virtual CreateTorus( const iTorusAxis,
iMajorRadius,
const iMajorStartAngle,
const iMajorEndAngle,
iMinorRadius,
const iCoreSide)
Creates a piece of a geometric self-intersecting torus.
Parameters:
iTorusAxis
The axis of the torus.
iMajorRadius
The radius of the major circle, inferior to minor radius.
iMajorStartAngle
The start limit of the major ring in radians, counted from the first direction of iTorusAxis. Positive angles are defined by the right-hand rule around the torus axis. The major start angle must be less than the major end angle.
iMajorEndAngle - iMajorStartAngle must not be greater than 2*Pi.
iMajorEndAngle
The end limit of the major ring in radians, counted from the first direction of iTorusAxis. Positive angles are defined by the right-hand rule around the torus axis. The major start angle must be less than the major end angle.
iMajorEndAngle - iMajorStartAngle must not be greater than 2*Pi.
iMinorRadius
The radius of the minor circle, superior to major radius.
iCorePart
The side to keep.
Legal values: TRUE to keep the internal part of the self-intersecting torus, the result is shaped like a lemon. FALSE to keep the external part, the result is shaped like an apple.
Returns:
The pointer to the created torus.
o CreateTorus
public virtual CreateTorus( const iTorusAxis,
const iMajorRadius,
const iMajorStartAngle,
const iMajorEndAngle,
const iMinorRadius,
const iMinorStartAngle,
const iMinorEndAngle)
Creates a piece of a geometric torus. A torus is defined by an axis and two radii. The major ring sweeps a circle in the plane which is defined by the first and second direction of iTorusAxis. Its radius is iMajorRadius and it is centered at the origin of iTorusAxis. The minor ring sweeps a circle of radius iMinorRadius, centered at some point on the major ring and lying in the plane containing this center point, the origin of iTorusAxis, and the vector defined by the third direction of iTorusAxis. A piece of the full torus is defined by limiting the angles through which the major ring sweeps and those through which every minor ring sweeps.
Parameters:
iTorusAxis
The axis of the torus:
  • The third direction is the rotation axis.
  • The first direction is the major angle reference. Start and end major angles are counted from this direction.
iMajorRadius
The radius of the major ring.
iMajorStartAngle
The start limit of the major ring in radians, counted from the first direction of iTorusAxis. Positive angles are defined by the right-hand rule around the torus axis. The major start angle must be less than the major end angle. iMajorEndAngle - iMajorStartAngle must not be greater than 2*Pi.
iMajorEndAngle
The end limit of the major ring in radians, counted from the first direction of iTorusAxis. Positive angles are defined by the right-hand rule around the torus axis. The major end angle must be greater than the major start angle.
iMajorEndAngle - iMajorStartAngle must not be greater than 2*Pi.
iMinorRadius
The radius of the minor ring.
iMinorStartAngle
The first limit of the minor circle in radians. Positive angles are in the direction of the torus axis. Angles are counted from the external minor radius in the plane defined by the first and second direction of the torus axis. The minor start angle must be less than the minor end angle. iMinorEndAngle - iMinorStartAngle must not be greater than 2*Pi.
iMinorEndAngle
The end limit of the minor circle in radians. Positive angles are in the direction of the torus axis. Angles are counted from the external minor radius in the plane defined by the first and second direction of the torus axis. The minor end angle must be greater than the minor start angle. iMinorEndAngle - iMinorStartAngle must not be greater than 2*Pi.
Returns:
The pointer to the created torus.
o GetDatum
public virtual GetDatum( const iIdent)
Returns a constant pointer to a given datum.
Parameters:
iIdent
The type of datum.
Returns:
The constant pointer to the required datum.
o GetImplicitGeoFactory
public virtual GetImplicitGeoFactory()
Returns a pointer to the implicit geometric factory.
Returns:
The pointer to the implicit CATGeoFactory.
o GetInfinite
public virtual GetInfinite()
Retrieves the size of the box centered at origin which contains all the objects, including infinite objects.
Returns:
The geometric infinity.
o GetModelSize
public virtual GetModelSize()
Returns the model size associated with this CATGeoFactory.
The model size defines a cubic box which contains all the objects you want to create within this factory. According to the model size, the resolution will be more or less accurate.
o GetResolution
public virtual GetResolution( const iResolutionType=CatC0)
Returns the minimum length of a valid object.
Parameters:
iResolutionType
CatC0
To retrieve the minimum length of a valid object.
Any object smaller than the resolution should not be created.
CatC1
To retrieve the minimum angle value defining a sharp angle.
o GetUnit
public virtual GetUnit()
Retrieves the model unit.
Returns:
The unit, that is to say, the dimension in meter of 1. in the model.

Enumerated Types


o CATDatumId
enum CATDatumId {
  O,
  OI,
  OJ,
  OK,
  OIJ,
  OJK,
  OKI
}
The canonical (implicit) objects.
Parameters:
CATGeoFactory::O
The origin point (0,0,0)
CATGeoFactory::OI
The infinite line y=0,z=0
CATGeoFactory::OJ
The infinite line x=0,z=0
CATGeoFactory::OK
The infinite line x=0,y=0
CATGeoFactory::OIJ
The infinite plane z=0
CATGeoFactory::OJK
>The infinite plane x=0
CATGeoFactory::OKI
The infinite plane y=0

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

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.