Developer documentation | Axl-2.5.1

axlAbstractSurfaceBSpline Class Reference

#include <axlAbstractSurfaceBSpline.h>

Inheritance diagram for axlAbstractSurfaceBSpline:
axlAbstractSurfaceParametric axlAbstractSurface axlAbstractData axlAbstractSurfaceNurbs axlAbstractSurfaceTrimmed

Signals

void updated (void)
 
void samplingChanged (void)
 
void edgeSelected (int numEdge, int previous, int n)
 
void indexSelected (int i)
 
void modifiedControlPoints (void)
 
- Signals inherited from axlAbstractData
void modifiedGeometry (void)
 
void modifiedStructure (void)
 
void modifiedField (void)
 
void modifiedProperty (void)
 

Public Member Functions

 axlAbstractSurfaceBSpline (void)
 
virtual ~axlAbstractSurfaceBSpline (void)
 
virtual axlAbstractSurfaceBSplinecopy (void) const
 
virtual int countControlPoints (void) const
 
virtual int countControlPoints_u (void) const
 
virtual int countControlPoints_v (void) const
 
virtual int knotVectorSize_u (void) const
 
virtual int knotVectorSize_v (void) const
 
virtual int order_u (void) const
 
virtual int order_v (void) const
 
virtual double getCoord (int n, int m, int v) const
 
virtual axlPoint getCoef (int n, int m) const
 
virtual axlPoint getCoef (int n) const
 
virtual double getWeight (int n, int m) const
 
virtual bool setCoef (int n, int m, int v, double c)
 
virtual bool setCoef (int n, int m, double *controlPoint)
 
virtual bool setCoef (int n, double *controlPoint)
 
virtual double getKnot_u (int n) const
 
virtual double getKnot_v (int n) const
 
virtual void setSurface (int pointsCount_u, int pointsCount_v, int order_u, int order_v, int dimension, double *knots_u, double *knots_v, double *points, bool rational)
 axlAbstractSurfaceBSpline::setSurface More...
 
virtual void updateRcoeff ()
 
virtual void insertKnot_u (double k)
 
virtual void removeKnot_u (double k)
 
virtual void insertKnot_v (double k)
 
virtual void removeKnot_v (double k)
 
virtual bool rational (void) const
 
virtual QVector< axlPoint * > sampling ()
 
virtual void gridEvaluator (int num_u, int num_v, std::vector< double > &points, std::vector< double > &param_u, std::vector< double > &param_v)
 
virtual QString printCoeffs (bool print) const
 
virtual QString printKnotsVector (bool print) const
 
virtual QString description (void) const
 
QVariantList convertDataToQVariant (void) const
 Convert an axlAbstractData into a QVariantList that specifies all properties of the axlAbstractData. More...
 
int convertQVariantToData (const QVariantList &data)
 Modify properties and geometry variables of the axlAbstractData. Return 1 if the modification was sucessfully made. Otherwise return 0. More...
 
double scalarValue (double u, double v)
 
void setScalarValue (double u, double v, double value)
 
virtual bool connectionsAreDefined (void)
 Return true if control points connections were defined by developers. False if there are default connections visualization. More...
 
virtual QList< int > getControlPointConnection (int i)
 The list returned contains all indices of coefficients that are still to be connected to the ith coefficient. More...
 
virtual void defineControlPointConnection (int i, int j)
 Define connection between the ith and the jth coefficient. More...
 
virtual void resetControlPointConnections (void)
 Removes all control point connections. More...
 
virtual void selectIndex (int i)
 
- Public Member Functions inherited from axlAbstractSurfaceParametric
 axlAbstractSurfaceParametric (void)
 
virtual ~axlAbstractSurfaceParametric (void)
 
virtual axlPoint eval (double u, double v)
 
virtual void eval (axlPoint *point, double u, double v)
 
virtual void eval (double &, double &, double &, double u, double v)
 
virtual void normal (axlPoint *normal, double u, double v)
 
virtual axlMesh eval (double u, double v, int derivs, bool u_from_right=true, bool v_from_right=true, double resolution=1.0e-12)
 
virtual dtkDeprecated::dtkVector3D< double > eval2 (double u, double v)
 
virtual void parameterOf (const axlPoint &point, double &um, double &vm)
 
virtual dtkDeprecated::dtkVector3D< double > normal (double u, double v)
 
virtual void normal (dtkDeprecated::dtkVector3D< double > *normal, double u, double v)
 
virtual double area (double tol)
 
virtual int numSamples_u (void)
 
virtual int numSamples_v (void)
 
virtual double startParam_u (void)
 
virtual double endParam_u (void)
 
virtual double startParam_v (void)
 
virtual double endParam_v (void)
 
virtual double startParam_u (int numCell)
 
virtual double endParam_u (int numCell)
 
virtual double startParam_v (int numCell)
 
virtual double endParam_v (int numCell)
 
virtual void eval (axlPoint *point, double u, double v, int numCell)
 
virtual void normal (axlPoint *normal, double u, double v, int numCell)
 
virtual bool hasCells (void)
 
virtual int countCells (void)
 
virtual int numSamples_u (int numCell)
 
virtual int numSamples_v (int numCell)
 
virtual int stripes (void)
 
virtual void setStripes (int stripes)
 
virtual void setNumSamples_u (int numSamples)
 
virtual void setNumSamples_v (int numSamples)
 
const int & samples_u (void) const
 
const int & samples_v (void) const
 
- Public Member Functions inherited from axlAbstractSurface
 axlAbstractSurface (void)
 
virtual ~axlAbstractSurface (void)
 
virtual int dimension (void) const
 
virtual axlMeshtoAxlMesh (void)
 
virtual void * surface (void)
 
- Public Member Functions inherited from axlAbstractData
 axlAbstractData (axlAbstractData *parent=NULL)
 
 axlAbstractData (const axlAbstractData &data)
 
virtual ~axlAbstractData (void)
 
const QColor & color (void) const
 
const double & opacity (void) const
 
const double & size (void) const
 
const QString & shader (void) const
 
const bool & editable (void)
 
const bool & updateView (void)
 
void setColor (double r, double g, double b)
 
void addField (axlAbstractField *field)
 Add a field to the field list of the object. More...
 
bool updateFieldList (QString nameField)
 Check if a field with the same name is already applied on the object. More...
 
QString changeFieldName (QString fieldName)
 
axlMeshmesh (void)
 Return the mesh of that object is computed. More...
 
void setMesh (axlMesh *mesh)
 Set a corresponding mesh for that object. More...
 
void setUpdateView (bool updateView)
 
QList< axlAbstractField * > fields (void)
 

Additional Inherited Members

- Public Slots inherited from axlAbstractSurfaceParametric
void setSamples_u (const int &color)
 
void setSamples_v (const int &color)
 
- Public Slots inherited from axlAbstractData
void touchGeometry (void)
 
void touchProperty (void)
 
void touchStructure (void)
 
virtual void touchField (void)
 
void setColor (const QColor &color)
 
void setOpacity (const double &opacity)
 
void setSize (const double &size)
 
void setShader (const QString &shader)
 
void setEditable (bool edit)
 
- Properties inherited from axlAbstractSurfaceParametric
int samples_u
 
int samples_v
 
- Properties inherited from axlAbstractData
QColor color
 
double opacity
 
double size
 
QString shader
 

Detailed Description

Definition at line 32 of file axlAbstractSurfaceBSpline.h.

Constructor & Destructor Documentation

axlAbstractSurfaceBSpline::axlAbstractSurfaceBSpline ( void  )

Definition at line 34 of file axlAbstractSurfaceBSpline.cpp.

axlAbstractSurfaceBSpline::~axlAbstractSurfaceBSpline ( void  )
virtual

Definition at line 39 of file axlAbstractSurfaceBSpline.cpp.

Member Function Documentation

bool axlAbstractSurfaceBSpline::connectionsAreDefined ( void  )
virtual

Return true if control points connections were defined by developers. False if there are default connections visualization.

Definition at line 252 of file axlAbstractSurfaceBSpline.cpp.

QVariantList axlAbstractSurfaceBSpline::convertDataToQVariant ( void  ) const
virtual

Convert an axlAbstractData into a QVariantList that specifies all properties of the axlAbstractData.

Reimplemented from axlAbstractData.

Definition at line 303 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::convertQVariantToData ( const QVariantList &  data)
virtual

Modify properties and geometry variables of the axlAbstractData. Return 1 if the modification was sucessfully made. Otherwise return 0.

Reimplemented from axlAbstractData.

Definition at line 335 of file axlAbstractSurfaceBSpline.cpp.

axlAbstractSurfaceBSpline * axlAbstractSurfaceBSpline::copy ( void  ) const
virtual

Definition at line 45 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::countControlPoints ( void  ) const
virtual

Definition at line 51 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::countControlPoints_u ( void  ) const
virtual

Definition at line 57 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::countControlPoints_v ( void  ) const
virtual

Definition at line 63 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::defineControlPointConnection ( int  i,
int  j 
)
virtual

Define connection between the ith and the jth coefficient.

Definition at line 278 of file axlAbstractSurfaceBSpline.cpp.

QString axlAbstractSurfaceBSpline::description ( void  ) const
virtual

Reimplemented in axlAbstractSurfaceTrimmed.

Definition at line 232 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::edgeSelected ( int  numEdge,
int  previous,
int  n 
)
signal
axlPoint axlAbstractSurfaceBSpline::getCoef ( int  n,
int  m 
) const
virtual

Definition at line 108 of file axlAbstractSurfaceBSpline.cpp.

axlPoint axlAbstractSurfaceBSpline::getCoef ( int  n) const
virtual

Definition at line 114 of file axlAbstractSurfaceBSpline.cpp.

QList< int > axlAbstractSurfaceBSpline::getControlPointConnection ( int  i)
virtual

The list returned contains all indices of coefficients that are still to be connected to the ith coefficient.

Definition at line 269 of file axlAbstractSurfaceBSpline.cpp.

double axlAbstractSurfaceBSpline::getCoord ( int  n,
int  m,
int  v 
) const
virtual

Definition at line 102 of file axlAbstractSurfaceBSpline.cpp.

double axlAbstractSurfaceBSpline::getKnot_u ( int  n) const
virtual

Definition at line 145 of file axlAbstractSurfaceBSpline.cpp.

double axlAbstractSurfaceBSpline::getKnot_v ( int  n) const
virtual

Definition at line 151 of file axlAbstractSurfaceBSpline.cpp.

double axlAbstractSurfaceBSpline::getWeight ( int  n,
int  m 
) const
virtual

Definition at line 121 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::gridEvaluator ( int  num_u,
int  num_v,
std::vector< double > &  points,
std::vector< double > &  param_u,
std::vector< double > &  param_v 
)
virtual

Definition at line 165 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::indexSelected ( int  i)
signal
void axlAbstractSurfaceBSpline::insertKnot_u ( double  k)
virtual

Definition at line 200 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::insertKnot_v ( double  k)
virtual

Definition at line 210 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::knotVectorSize_u ( void  ) const
virtual

Definition at line 70 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::knotVectorSize_v ( void  ) const
virtual

Definition at line 76 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::modifiedControlPoints ( void  )
signal
int axlAbstractSurfaceBSpline::order_u ( void  ) const
virtual

Definition at line 83 of file axlAbstractSurfaceBSpline.cpp.

int axlAbstractSurfaceBSpline::order_v ( void  ) const
virtual

Definition at line 89 of file axlAbstractSurfaceBSpline.cpp.

QString axlAbstractSurfaceBSpline::printCoeffs ( bool  print) const
virtual

Definition at line 220 of file axlAbstractSurfaceBSpline.cpp.

QString axlAbstractSurfaceBSpline::printKnotsVector ( bool  print) const
virtual

Definition at line 226 of file axlAbstractSurfaceBSpline.cpp.

bool axlAbstractSurfaceBSpline::rational ( void  ) const
virtual

Definition at line 96 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::removeKnot_u ( double  k)
virtual

Definition at line 205 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::removeKnot_v ( double  k)
virtual

Definition at line 215 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::resetControlPointConnections ( void  )
virtual

Removes all control point connections.

Definition at line 260 of file axlAbstractSurfaceBSpline.cpp.

QVector< axlPoint * > axlAbstractSurfaceBSpline::sampling ( )
virtual

Definition at line 158 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::samplingChanged ( void  )
signal
double axlAbstractSurfaceBSpline::scalarValue ( double  u,
double  v 
)

Definition at line 238 of file axlAbstractSurfaceBSpline.cpp.

virtual void axlAbstractSurfaceBSpline::selectIndex ( int  i)
inlinevirtual

Definition at line 106 of file axlAbstractSurfaceBSpline.h.

bool axlAbstractSurfaceBSpline::setCoef ( int  n,
int  m,
int  v,
double  c 
)
virtual

Definition at line 127 of file axlAbstractSurfaceBSpline.cpp.

bool axlAbstractSurfaceBSpline::setCoef ( int  n,
int  m,
double *  controlPoint 
)
virtual

Definition at line 133 of file axlAbstractSurfaceBSpline.cpp.

bool axlAbstractSurfaceBSpline::setCoef ( int  n,
double *  controlPoint 
)
virtual

Definition at line 139 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::setScalarValue ( double  u,
double  v,
double  value 
)

Definition at line 243 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::setSurface ( int  n_u,
int  n_v,
int  order_u,
int  order_v,
int  dimension,
double *  knots_u,
double *  knots_v,
double *  points,
bool  rational 
)
virtual

axlAbstractSurfaceBSpline::setSurface

Parameters
n_unumber of control points in the u direction
n_vnumber of control points in the v direction
order_udegree+1 for the u parameter
order_vdegree+1 for the v parameter
dimensionthe number of coordinates of the control points (usually 3)
knots_uthe sequence of knots in the u direction
knots_vthe sequence of knots in the v direction
pointsthe sequence of coordinates of the control points x0 y0 z0 x1 y1 z1 .... The control points are given row by row as

\[ P_{0,0}, P_{1,0}, \ldots , P_{n_u, n_v}, \]

where $ P_{i,j} $ is represented as dimension doubles. The points of index (0..n_u,0) correspond to the isoparametric curve v=v_min, the points of index (0..n_u,n_v) correspond to the isoparametric curve v=v_max, the points of index (0, 0..n_v) correspond to the isoparametric curve u=u_min, the points of index (n_u, 0..n_v) correspond to the isoparametric curve u=u_max, where u_min,u_max, v_min, v_max are respectively the min and max values of knot_u, knot_v.

Definition at line 188 of file axlAbstractSurfaceBSpline.cpp.

void axlAbstractSurfaceBSpline::updated ( void  )
signal
void axlAbstractSurfaceBSpline::updateRcoeff ( )
virtual

Definition at line 194 of file axlAbstractSurfaceBSpline.cpp.


The documentation for this class was generated from the following files: