9 #include <dtkCoreSupport/dtkGlobal.h>
13 class axlSurfaceRevolutionPrivate
21 QList<axlAbstractCurve *> curves;
52 for(
int i = 0; i<curves.size(); i++)
54 d->curves.append(curves.value(i));
79 this->setParent(other.parent());
81 d->axe = other.d->axe;
83 d->curves = other.d->curves;
86 d->theta1 = other.d->theta1;
88 d->theta2 = other.d->theta2;
100 QString result =
"axlSurfaceRevolution";
102 result.append(
"\nAxe : "+d->axe->description() +
"\nCurves : ");
103 for(
int i = 0; i<d->curves.size(); i++)
105 result.append(
"curve "+ QString::number(i) +
" : " + d->curves.at(i)->identifier());
108 result.append(
"\nStart Angle : "+ QString::number(d->theta1)+
"\nEnd Angle : "+ QString::number(d->theta2) );
120 return "axlSurfaceRevolution";
174 d->axe =
new axlLine(point1,point2);
179 return d->curves.size();
185 for(
int i = 0; i<curves.size() ; i++)
187 d->curves.append(curves.value(i));
193 return d->curves.value(
id);
220 d->theta1 = startAngle;
222 d->theta2 = endAngle;
Class axlPoint defines 3D points.
Class axlLine defines 3D lines.
void setStartAngle(double ang)
axlSurfaceRevolution & operator=(const axlSurfaceRevolution &other)
QList< axlAbstractCurve * > getCurves()
axlSurfaceRevolution(QObject *parent=0)
void setAxe(axlLine *line)
void setEndAngle(double ang)
void setCurves(QList< axlAbstractCurve * > curves)
void setAngle(double startAngle, double endAngle)
virtual QString description(void) const
dtkAbstractData * createaxlSurfaceRevolution(void)
axlAbstractCurve * getCurve(int id)
virtual QString identifier(void) const