20 #ifndef AXLABSTRACTSURFACEPARAMETRIC_H
21 #define AXLABSTRACTSURFACEPARAMETRIC_H
24 #include "axlCoreExport.h"
27 #include <dtkMathSupport/dtkVector3D.h>
30 class axlAbstractSurfaceParametricPrivate;
36 Q_PROPERTY(
int samples_u READ samples_u WRITE setSamples_u)
37 Q_PROPERTY(
int samples_v READ samples_v WRITE setSamples_v)
43 virtual
axlPoint eval(
double u,
double v);
44 virtual
void eval(
axlPoint *point,
double u,
double v);
45 virtual
void eval(
double&,
double&,
double&,
double u,
double v);
46 virtual
void normal(
axlPoint *normal,
double u,
double v);
48 virtual
axlMesh eval(
double u,
double v,
int derivs,
bool u_from_right = true,
bool v_from_right = true,
double resolution = 1.0e-12);
49 virtual dtkDeprecated::dtkVector3D<
double> eval2(
double u,
double v);
51 virtual
void parameterOf(const
axlPoint& point,
double& um,
double& vm);
54 virtual dtkDeprecated::dtkVector3D<
double> normal(
double u,
double v);
55 virtual
void normal(dtkDeprecated::dtkVector3D<
double> *normal,
double u,
double v);
58 virtual
double area(
double tol);
60 virtual
int numSamples_u(
void);
61 virtual
int numSamples_v(
void);
63 virtual
double startParam_u(
void);
64 virtual
double endParam_u(
void);
65 virtual
double startParam_v(
void);
66 virtual
double endParam_v(
void);
69 virtual
double startParam_u(
int numCell);
70 virtual
double endParam_u(
int numCell);
71 virtual
double startParam_v(
int numCell);
72 virtual
double endParam_v(
int numCell);
73 virtual
void eval(
axlPoint *point,
double u,
double v,
int numCell);
74 virtual
void normal(
axlPoint *normal,
double u,
double v,
int numCell);
75 virtual
bool hasCells(
void);
76 virtual
int countCells(
void);
77 virtual
int numSamples_u(
int numCell);
78 virtual
int numSamples_v(
int numCell);
81 virtual
int stripes(
void);
82 virtual
void setStripes(
int stripes);
84 virtual
void setNumSamples_u(
int numSamples);
85 virtual
void setNumSamples_v(
int numSamples);
88 const
int& samples_u(
void) const;
89 const
int& samples_v(
void) const;
92 void setSamples_u(const
int& color);
93 void setSamples_v(const
int& color);
102 axlAbstractSurfaceParametricPrivate *d;
Class axlPoint defines 3D points.
Class axlMesh defines a piecewise-linear 3D object.