19 #include <dtkCoreSupport/dtkGlobal.h>
21 #include <dtkCoreSupport/dtkAbstractDataFactory.h>
22 #include <dtkCoreSupport/dtkAbstractProcessFactory.h>
27 class axlFieldParametricVolumePrivate
123 return d->function->eval(u,v,w).x();
139 return d->function->eval(u,v,w).coordinates();
185 qstr.append(
"axlFieldParametricVolume : \n");
190 qstr.append(
"Type : integer");
193 qstr.append(
"Type : Float");
196 qstr.append(
"Type : Double");
199 qDebug() <<
"Unsupported field type";
205 qstr.append(
";Kind : Scalar");
208 qstr.append(
";Kind : Vector");
211 qstr.append(
";Kind : Tensor");
214 qDebug() <<
";Unsupported field kind";
219 qstr.append(
";Support : Point");
222 qstr.append(
";Support : Cell");
225 qstr.append(
";Support : Custom");
228 qDebug() <<
";No support";
243 return "axlFieldParametricVolume";
251 if(dynamic_cast<axlAbstractVolumeParametric*>(data))
268 if(dynamic_cast<axlAbstractVolumeParametric *>(data))
279 return d->input->startParam_u();
289 return d->input->startParam_v();
298 return d->input->startParam_w();
308 return d->input->endParam_u();
318 return d->input->endParam_v();
328 return d->input->endParam_w();
338 return d->input->numSamples_u();
346 return d->input->numSamples_v();
355 return d->input->numSamples_w();
364 return d->input->numSamples_u() *d->input->numSamples_v() *d->input->numSamples_w();
axlFieldParametricVolume()
double start_v(void)
Returns the first parameter value of the field.
virtual double * vector(double u, double v, double w)
Returns the value of the spatial field at the coordinates point entered.
void setVolume(axlAbstractData *data)
Sets the BSpline on which the BSpline field is applied.
virtual QString identifier(void) const
Returns the identifier of the field "axlFieldParametricVolume".
double start_w(void)
Returns the first parameter value of the field.
void setFunction(axlAbstractData *data)
Sets the Bspline function which determines the values of the parametric field.
double end_u(void)
Returns the last parameter value of the field.
double end_w(void)
Returns the last parameter value of the field.
virtual void update(void)
dtkAbstractData * createaxlFieldParametricVolume(void)
Class axlAbstractFieldParametricVolume defines an API for parametric field.
double numbersample_w(void)
Returns the number of parameters.
virtual double * tensor(double u, double v, double w)
Returns the value of the spatial field at the coordinates point entered.
double start_u(void)
Returns the first parameter value of the field.
double end_v(void)
Returns the last parameter value of the field.
virtual ~axlFieldParametricVolume(void)
Destroys a Bspline field.
double numbersample_u(void)
Returns the number of parameters.
double numbersample_v(void)
Returns the number of parameters.
Class axlFieldParametricVolume defines an API for field which owns a BSpline Volume.
axlAbstractData * getFunction(void)
Returns the Bspline function which determines the values of the parametric field. ...
Class axlAbstractData defines an API for all type of axel data.
virtual double scalar(double u, double v, double w)
Returns the value of the spatial field at the coordinates point entered.
virtual QString description(void) const
Returns the description of the field.
int size(void)
Returns the number of values evaluated for this BSpline field on each samples of the input BSpline...