Main Page | Class Hierarchy | Class List | Directories | File List | Class Members

PLib::NurbsCurveSP< T, N > Class Template Reference

A NURBS curve with surface point. More...

#include <nurbs_sp.h>

Inheritance diagram for PLib::NurbsCurveSP< T, N >:

PLib::NurbsCurve< T, N > PLib::ParaCurve< T, N > List of all members.

Public Member Functions

 NurbsCurveSP (const NurbsCurve< T, N > &nurb)
 NurbsCurveSP (const NurbsCurveSP< T, N > &nurb)
 NurbsCurveSP (const Vector< HPoint_nD< T, N > > &P1, const Vector< T > &U1, int degree=3)
 NurbsCurveSP (const Vector< Point_nD< T, N > > &P1, const Vector< T > &W, const Vector< T > &U1, int degree=3)
virtual void reset (const Vector< HPoint_nD< T, N > > &P1, const Vector< T > &U1, int degree)
virtual NurbsCurve< T, N > & operator= (const NurbsCurve< T, N > &a)
NurbsCurveSP< T, N > & operator= (const NurbsCurveSP< T, N > &a)
virtual void modKnot (const Vector< T > &knot)
virtual void removeKnot (int r, int s, int num)
virtual void removeKnotsBound (const Vector< T > &ub, Vector< T > &ek, T E)
virtual void refineKnotVector (const Vector< T > &X)
virtual void mergeKnotVector (const Vector< T > &Um)
virtual void knotInsertion (T u, int r, NurbsCurveSP< T, N > &nc)
virtual void degreeElevate (int t)
int read (ifstream &fin)
void modSurfCPby (int i, const HPoint_nD< T, N > &a)
void modSurfCP (int i, const HPoint_nD< T, N > &a)
void modOnlySurfCPby (int i, const HPoint_nD< T, N > &a)
void modOnlySurfCP (int i, const HPoint_nD< T, N > &a)
maxAt (int i) const
HPoint_nD< T, N > surfP (int i) const
void updateMaxU ()
int okMax ()

Protected Attributes

Vector< T > maxU
Vector< T > maxAt_

Detailed Description

template<class T, int N>
class PLib::NurbsCurveSP< T, N >

A NURBS curve with surface point.

A Nurbs curve with surface point manipulators. This allows someone to modify the point on a curve for which a ControlPoint has maximal influence over it. This might provide a more intuitive method to modify a curve.

Author:
Philippe Lavoie
Date:
7 May, 1998


Member Function Documentation

template<class T, int N>
void PLib::NurbsCurveSP< T, N >::modOnlySurfCPby int  i,
const HPoint_nD< T, N > &  a
 

Move the surface point only.

Moves only the specified surface point. The other surface points normally affected by moving this point are {not} moved.

The point a is in the 4D homogenous space, but only the x,y,z value are used. The weight is not moved by this function.

Parameters:
i the surface point to move
a move that surface point by that amount.
Warning:
The degree of the curve must be of 3 or less.
Author:
Philippe Lavoie
Date:
7 June, 1998

template<class T, int N>
void PLib::NurbsCurveSP< T, N >::updateMaxU  ) 
 

Updates the basis value.

Updates the basis value at which a control point has maximal influence. It also finds where the control point has maximal influence.

Warning:
The degree of the curve must be of 3 or less.
Author:
Philippe Lavoie
Date:
7 May, 1998


The documentation for this class was generated from the following files:
Generated on Sun Jan 23 05:51:37 2005 for NURBS++ by  doxygen 1.4.0