Basic Image AlgorithmS Library  2.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BIAS::NurbsSurface Class Reference

#include <MathAlgo/NurbsSurface.hh>

+ Collaboration diagram for BIAS::NurbsSurface:

Public Member Functions

HomgPoint3D GetCtrlPoint (int i, int j)
 
int GetDegree () const
 
int GetDimU () const
 
int GetDimV () const
 
bool GetInitialized () const
 
std::vector< double > GetKnotsU () const
 
std::vector< double > GetKnotsV () const
 
double GetKnotU (int i)
 
double GetKnotV (int i)
 
Vector3< double > GetSurfacePoint (double u, double v)
 
double GetWeight (int i, int j)
 
void Init (int dimu, int dimv, int degree)
 
int LoadFromXML (std::string xmlfile)
 
void LoadFromXMLWeighted (std::string xmlfile, float weight)
 
 NurbsSurface ()
 
void SaveToXML (std::string xmlfile)
 
void SetCtrlPoint (int i, int j, HomgPoint3D val)
 
void SetCTRLPointsToRandom (Vector2< double > start, Vector2< double > ende)
 
void SetDegree (int degree)
 
void SetDimU (int dimu)
 
void SetDimV (int dimv)
 
void SetInitialized (bool initialized)
 
void SetKnotsToDefault ()
 
void SetKnotU (int i, double val)
 
void SetKnotV (int i, double val)
 
void SetWeight (int i, int j, double val)
 
virtual ~NurbsSurface ()
 

Protected Member Functions

std::vector< double > BasisFuns (int i, double u, int p, std::vector< double > U)
 
int FindSpan (int n, int p, double u, std::vector< double > U)
 

Protected Attributes

std::vector< std::vector
< HomgPoint3D > > 
ctrlpoints_
 
int degree_
 
int dimu_
 
int dimv_
 
bool initialized_
 
std::vector< double > knotsu_
 
std::vector< double > knotsv_
 

Detailed Description

Definition at line 17 of file NurbsSurface.hh.

Constructor & Destructor Documentation

NurbsSurface::NurbsSurface ( )

Definition at line 23 of file NurbsSurface.cpp.

NurbsSurface::~NurbsSurface ( )
virtual

Definition at line 27 of file NurbsSurface.cpp.

Member Function Documentation

std::vector< double > NurbsSurface::BasisFuns ( int  i,
double  u,
int  p,
std::vector< double >  U 
)
protected

Definition at line 270 of file NurbsSurface.cpp.

int NurbsSurface::FindSpan ( int  n,
int  p,
double  u,
std::vector< double >  U 
)
protected

Definition at line 255 of file NurbsSurface.cpp.

HomgPoint3D BIAS::NurbsSurface::GetCtrlPoint ( int  i,
int  j 
)
inline

Definition at line 36 of file NurbsSurface.hh.

References ctrlpoints_.

int BIAS::NurbsSurface::GetDegree ( ) const
inline

Definition at line 103 of file NurbsSurface.hh.

References degree_.

int BIAS::NurbsSurface::GetDimU ( ) const
inline

Definition at line 83 of file NurbsSurface.hh.

References dimu_.

int BIAS::NurbsSurface::GetDimV ( ) const
inline

Definition at line 93 of file NurbsSurface.hh.

References dimv_.

bool BIAS::NurbsSurface::GetInitialized ( ) const
inline

Definition at line 113 of file NurbsSurface.hh.

References initialized_.

std::vector<double> BIAS::NurbsSurface::GetKnotsU ( ) const
inline

Definition at line 73 of file NurbsSurface.hh.

References knotsu_.

std::vector<double> BIAS::NurbsSurface::GetKnotsV ( ) const
inline

Definition at line 78 of file NurbsSurface.hh.

References knotsv_.

double BIAS::NurbsSurface::GetKnotU ( int  i)
inline

Definition at line 58 of file NurbsSurface.hh.

References knotsu_.

double BIAS::NurbsSurface::GetKnotV ( int  i)
inline

Definition at line 68 of file NurbsSurface.hh.

References knotsv_.

Vector3< double > NurbsSurface::GetSurfacePoint ( double  u,
double  v 
)
double BIAS::NurbsSurface::GetWeight ( int  i,
int  j 
)
inline

Definition at line 48 of file NurbsSurface.hh.

References ctrlpoints_.

void NurbsSurface::Init ( int  dimu,
int  dimv,
int  degree 
)

Definition at line 31 of file NurbsSurface.cpp.

int NurbsSurface::LoadFromXML ( std::string  xmlfile)
void NurbsSurface::LoadFromXMLWeighted ( std::string  xmlfile,
float  weight 
)

Definition at line 231 of file NurbsSurface.cpp.

void NurbsSurface::SaveToXML ( std::string  xmlfile)
void BIAS::NurbsSurface::SetCtrlPoint ( int  i,
int  j,
HomgPoint3D  val 
)
inline

Definition at line 31 of file NurbsSurface.hh.

References ctrlpoints_.

Referenced by SetWeight().

void NurbsSurface::SetCTRLPointsToRandom ( Vector2< double >  start,
Vector2< double >  ende 
)
void BIAS::NurbsSurface::SetDegree ( int  degree)
inline

Definition at line 108 of file NurbsSurface.hh.

References degree_.

void BIAS::NurbsSurface::SetDimU ( int  dimu)
inline

Definition at line 88 of file NurbsSurface.hh.

References dimu_.

void BIAS::NurbsSurface::SetDimV ( int  dimv)
inline

Definition at line 98 of file NurbsSurface.hh.

References dimv_.

void BIAS::NurbsSurface::SetInitialized ( bool  initialized)
inline

Definition at line 118 of file NurbsSurface.hh.

References initialized_.

void NurbsSurface::SetKnotsToDefault ( )

Definition at line 58 of file NurbsSurface.cpp.

void BIAS::NurbsSurface::SetKnotU ( int  i,
double  val 
)
inline

Definition at line 53 of file NurbsSurface.hh.

References knotsu_.

void BIAS::NurbsSurface::SetKnotV ( int  i,
double  val 
)
inline

Definition at line 63 of file NurbsSurface.hh.

References knotsv_.

void BIAS::NurbsSurface::SetWeight ( int  i,
int  j,
double  val 
)
inline

Definition at line 41 of file NurbsSurface.hh.

References ctrlpoints_, BIAS::HomgPoint3D::Set(), and SetCtrlPoint().

Member Data Documentation

std::vector<std::vector<HomgPoint3D> > BIAS::NurbsSurface::ctrlpoints_
protected

Definition at line 126 of file NurbsSurface.hh.

Referenced by GetCtrlPoint(), GetWeight(), SetCtrlPoint(), and SetWeight().

int BIAS::NurbsSurface::degree_
protected

Definition at line 131 of file NurbsSurface.hh.

Referenced by GetDegree(), and SetDegree().

int BIAS::NurbsSurface::dimu_
protected

Definition at line 129 of file NurbsSurface.hh.

Referenced by GetDimU(), and SetDimU().

int BIAS::NurbsSurface::dimv_
protected

Definition at line 130 of file NurbsSurface.hh.

Referenced by GetDimV(), and SetDimV().

bool BIAS::NurbsSurface::initialized_
protected

Definition at line 132 of file NurbsSurface.hh.

Referenced by GetInitialized(), and SetInitialized().

std::vector<double> BIAS::NurbsSurface::knotsu_
protected

Definition at line 127 of file NurbsSurface.hh.

Referenced by GetKnotsU(), GetKnotU(), and SetKnotU().

std::vector<double> BIAS::NurbsSurface::knotsv_
protected

Definition at line 128 of file NurbsSurface.hh.

Referenced by GetKnotsV(), GetKnotV(), and SetKnotV().


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