12 #include "geometrymod.h" 16 template <
class T>
class Array2D;
24 CubicBezierSurfacePatch(
34 CubicBezierSurfacePatch* clone()
const;
36 Coord3 computePos(
float u,
float v)
const;
37 Coord3 computeNormal(
float u,
float v)
const;
38 Coord3 computeUTangent(
float u,
float v)
const;
39 Coord3 computeVTangent(
float u,
float v)
const;
41 bool intersectWithLine(
const Line3& line,
42 float& u,
float& v,
float eps )
const;
47 static int nrPos() {
return 16; }
60 bool isEmpty()
const {
return !positions; }
67 bool intersectWithLine(
const Line3&,
Coord&)
const;
71 bool insertRow(
int row,
int nrnew=1);
72 bool insertCol(
int col,
int nrnew=1);
73 bool removeRow(
int row,
int stoprow=-1);
74 bool removeCol(
int col,
int stopcol=-1);
76 {
return getKnot(rc,
false); }
77 Coord3 getKnot(
const RowCol&,
bool estimateifundef)
const;
79 Coord3 getRowDirection(
const RowCol&,
bool computeifudf)
const;
80 Coord3 getColDirection(
const RowCol&,
bool computeifudf)
const;
81 float directionInfluence()
const;
82 void setDirectionInfluence(
float);
92 bool checkSelfIntersection(
const RowCol& )
const;
99 void _setKnot(
int idx,
const Coord3& );
#define mExpClass(module)
Definition: commondefs.h:157
Definition: cubicbeziersurface.h:52
A curve that is defined by regularly sampled positions.
Definition: parametriccurve.h:30
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
Array2D< Coord3 > * coldirections
Definition: cubicbeziersurface.h:105
Definition: parametricsurface.h:21
A Line3 is a line in space, with the following equations:
Definition: trigonometry.h:424
bool isEmpty() const
Definition: cubicbeziersurface.h:60
3D point or vector
Definition: commontypes.h:57
Array2D< Coord3 > * positions
Definition: cubicbeziersurface.h:106
Array2D ( Subclass of ArrayND ) is a two dimensional array.
Definition: arraynd.h:127
Class to store ranges in N dimensions.
Definition: ranges.h:208
virtual Coord3 getKnot(const RowCol &rc) const
Definition: cubicbeziersurface.h:75
IdxPair used for its row() and col().
Definition: rowcol.h:23
2D point or vector class.
Definition: commontypes.h:58
Array2D< Coord3 > * rowdirections
Definition: cubicbeziersurface.h:104
float directioninfluence
Definition: cubicbeziersurface.h:108
Definition: arraytesselator.h:19
Definition: cubicbeziersurface.h:21
static int nrPos()
Definition: cubicbeziersurface.h:47