CNurbsSurfaceData Struct Reference

This structure represents a data description for a NurbsSurface. More...

#include <xsi_nurbsdata.h>

List of all members.

Public Member Functions

  CNurbsSurfaceData ()
bool  operator== (const CNurbsSurfaceData &in_surfaceData) const
bool  operator!= (const CNurbsSurfaceData &in_surfaceData) const

Public Attributes

MATH::CVector4Array  m_aControlPoints
LONG  m_lNbUControlPoints
LONG  m_lNbVControlPoints
CDoubleArray  m_aUKnots
CDoubleArray  m_aVKnots
bool  m_bUClosed
bool  m_bVClosed
LONG  m_lUDegree
LONG  m_lVDegree
siKnotParameterization  m_siUParameterization
siKnotParameterization  m_siVParameterization


Detailed Description

This structure represents a data description for a NurbsSurface.

See also:
CNurbsSurfaceDataArray, X3DObject::AddNurbsSurface, NurbsSurface::Get, NurbsSurface::Set


Constructor & Destructor Documentation

CNurbsSurfaceData (  )  [inline]

Default Constructor.


Member Function Documentation

bool operator== ( const CNurbsSurfaceData in_surfaceData  )  const [inline]

Equality operator.

Parameters:
in_surfaceData  CNurbsSurfaceData to compare with.
Returns:
true if they are equal; false if they are not equal.

bool operator!= ( const CNurbsSurfaceData in_surfaceData  )  const [inline]

Inequality operator.

Parameters:
in_surfaceData  CNurbsSurfaceData to compare with.
Returns:
true if they are not equal; false if they are equal.


Member Data Documentation

MATH::CVector4Array m_aControlPoints

Array of ControlPoint values.

Note:
UV ordering is different for the C++ API than it is for scripting. In scripting, a control point array is ordered U-V like so:

(0,0)...(0,cntV-1), (1,0)....(1,cntV-1),(cntU-1,0)...(cntU-1,cntV-1)

However, the order for the C++ API is V-U:

(0,0)...(cntU-1,0), (0,1)....(cntU-1,1)...(0,cntV-1)...(cntU-1,cntV-1)

Since functions like NurbsSurface::Set and X3DObject::AddNurbsSurface expect the U-V order, you must reorder the array before passing it to these functions. See UV Ordering for a sample conversion function.

LONG m_lNbUControlPoints

Number of ControlPoints in U

LONG m_lNbVControlPoints

Number of ControlPoints in V

CDoubleArray m_aUKnots

U Knot values

CDoubleArray m_aVKnots

V Knot values

bool m_bUClosed

Specify if the surface is closed in U direction.

bool m_bVClosed

Specify if the surface is closed in V direction.

LONG m_lUDegree

Specify if the degree of the nurbs surface in U.

LONG m_lVDegree

Specify if the degree of the nurbs surface in V.

siKnotParameterization m_siUParameterization

Parameterization factor of the nurbs surface in U.

siKnotParameterization m_siVParameterization

Parameterization factor of the nurbs surface in V.


The documentation for this struct was generated from the following file: