All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

GeometricObjects Interface CATNurbsSurface

System.IUnknown
  |
  +---System.IDispatch
    |
    +---System.CATBaseUnknown
      |
      +---GeometricObjects.CATICGMUnknown
        |
        +---GeometricObjects.CATICGMObject
          |
          +---GeometricObjects.CATGeometry
            |
            +---GeometricObjects.CATSurface
              |
              +---CATNurbsSurface
 

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


interface CATNurbsSurface

Interface representing a Nurbs surface.

The CATNurbsSurface is created by the CreateNurbsSurface method of the CATGeoFactory interface and deleted with the Remove method. It is defined with:
CATKnotVector UKnotVector The knot vector for the polynomial basis definition on the surface first direction
CATKnotVector VKnotVector The knot vector for the polynomial basis definition on the surface second direction
CATMatSetOfPoints Vertices The set of control points
CATBoolean IsRational 1 if the nurbs is rational, else 0
double[] Weigths The weigths array if IsRational


Method Index


o GetOneControlPoint(CATLONG32,CATLONG32,CATMathPoint&)
Returns the mathematical definition of a control point of this CATNurbsSurface.
o GetOneWeight(CATLONG32,CATLONG32)
Returns the weight associated with a control point of this CATNurbsSurface.
o GetOriginalParametrisationDATA(double&,double&,double&,double&)
Retrieves the original parameterization.
o IsRational()
Tests whether this CATNurbsSurface is rational.
o Set(CATKnotVector&,CATKnotVector&,CATLONG32&,CATMathGridOfPoints&,double*,CATParameterizationOption)
o SetData(CATKnotVector&,CATKnotVector&,CATLONG32&,CATMathGridOfPoints&,double*,CATParameterizationOption)
Modifies the characteristics a this CATNurbsSurface.
o SetOneControlPoint(CATLONG32,CATLONG32,CATMathPoint&)
Modifies the mathematical definition of a control point of this CATNurbsSurface.
o SetOneWeight(CATLONG32,CATLONG32,double)
Modifies the weight associated with a control point of this CATNurbsSurface.

Methods


o GetOneControlPoint
public virtual void GetOneControlPoint(CATLONG32 iUNum,
CATLONG32 iVNum,
CATMathPoint& ioPoint) const =0
Returns the mathematical definition of a control point of this CATNurbsSurface.
Parameters:
iUNum
The number (starting at 1) of the control point in the first direction.
iVNum
The number (starting at 1) of the control point in the second direction.
ioPoint
The corresponding mathematical definition.
o GetOneWeight
public virtual double GetOneWeight(CATLONG32 iUNum,
CATLONG32 iVNum) const =0
Returns the weight associated with a control point of this CATNurbsSurface.
Parameters:
iUNum
The number (starting at 1) of the control point in the first direction.
iVNum
The number (starting at 1) of the control point in the second direction.
Returns:
The corresponding weight.
o GetOriginalParametrisationDATA
public virtual void GetOriginalParametrisationDATA(double& ioCoefficientU,
double& ioShiftU,
double& ioCoefficientV,
double& ioShiftV)=0
Retrieves the original parameterization.
If created with the CatAutomaticParameterization default mode by the factory, the Nurbs is internally re-parameterized. This allows you to recover the coefficient and the shift that correspond to your own parameterization:
ParameterAfterCreation = ioCoefficient*ParameterBeforeCreation + ioShift in each direction.
Parameters:
ioCoefficientU
The multiplicative coefficent in the first direction.
ioShiftU
The shift in the first direction.
ioCoefficientV
The multiplicative coefficent in the second direction.
ioShiftV
The shift in the second direction.
o IsRational
public virtual CATBoolean IsRational()const =0
Tests whether this CATNurbsSurface is rational.
Returns:
The result of the test.
Legal values:
0
if it is not rational.
1
if it is rational.
o Set
public virtual void Set( const CATKnotVector& iNewUKnotVector,
const CATKnotVector& iNewVKnotVector,
const CATLONG32& iNewIsRational,
const CATMathGridOfPoints& iNewVertices,
const double* iNewWeights,
const CATParameterizationOption iParameterizationOption= CatAutomaticParameterization) =0
Deprecated:
V5R14 SetData
o SetData
public virtual void SetData( const CATKnotVector& iNewUKnotVector,
const CATKnotVector& iNewVKnotVector,
const CATLONG32& iNewIsRational,
const CATMathGridOfPoints& iNewVertices,
const double* iNewWeights,
const CATParameterizationOption iParameterizationOption= CatAutomaticParameterization) =0
Modifies the characteristics a this CATNurbsSurface.
Parameters:
iNewUKnotVector
The new nodal vector in the first direction.
iNewVKnotVector
The new nodal vector in the second direction.
iNewIsRational
Legal values: 1 if the Nurbs is rational, 0 otherwise.
iNewVertices
The grid of the new vertices.
iNewWeigths
The array of the new 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
CATNurbsSurface.GetOriginalParametrisationDATA method.
o SetOneControlPoint
public virtual void SetOneControlPoint(CATLONG32 iUNum,
CATLONG32 iVNum,
const CATMathPoint& iNewCoord) =0
Modifies the mathematical definition of a control point of this CATNurbsSurface.
Parameters:
iUNum
The number (starting at 1) of the control point in the first direction.
iVNum
The number (starting at 1) of the control point in the second direction.
iNewCoord
The new mathematical definition.
o SetOneWeight
public virtual void SetOneWeight(CATLONG32 iUNum,
CATLONG32 iVNum,
double iNewWeight) =0
Modifies the weight associated with a control point of this CATNurbsSurface.
Parameters:
iUNum
The number (starting at 1) of the control point in the first direction.
iVNum
The number (starting at 1) of the control point in the second direction.
iNewWeight
The new weight.

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

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