18 #include <dtkCoreSupport/dtkAbstractProcessFactory.h>
24 class axlPlaneCreatorPrivate{
27 QPair <axlPoint *, axlPoint *> inputs;
51 return d->inputs.first;
53 return d->inputs.second;
59 if(process->output()){
60 d->output =
dynamic_cast<axlPlane *
>(process->output());
75 if(dynamic_cast<axlPoint *>(newData)){
78 d->inputs.first = point;
80 d->inputs.second = point;
88 if(d->output == NULL){
89 if(d->inputs.first && d->inputs.second){
90 d->output =
new axlPlane(d->inputs.first, d->inputs.second);
96 if(d->inputs.first && d->inputs.second){
97 d->output->setValues(d->inputs.first, d->inputs.second);
108 return "create a plane with two points : \n one on the plane and the other one to determine its normal";
113 return "axlPlaneCreator";
118 return dtkAbstractProcessFactory::instance()->registerProcessType(
"axlPlaneCreator",
createaxlPlaneCreator);
Class axlPoint defines 3D points.
void copyProcess(axlAbstractProcess *process)
axlPlaneCreator(QObject *parent=0)
Class axlPlane defines 3D planes.
virtual dtkAbstractData * output(void)
virtual QString identifier(void) const
virtual axlAbstractData * getInput(int channel) const
virtual QString description(void) const
virtual ~axlPlaneCreator(void)
virtual void setInput(dtkAbstractData *newData, int channel)
dtkAbstractProcess * createaxlPlaneCreator(void)
Class axlAbstractData defines an API for all type of axel data.
static bool registered(void)