1 #ifndef CTL_ABSTRACTGANTRY_H 2 #define CTL_ABSTRACTGANTRY_H 4 #include "mat/matrix_utils.h" 76 QString
info() const override;
398 * mat::rotationMatrix(tiltAngle, Qt::XAxis) * mat::rotationMatrix(rollAngle, Qt::YAxis);
414 QString srcDisplString =
"(" + QString::number(
_sourceDisplacement.position(0,0)) +
" mm, " +
425 "\tSource Displacement: " + srcDisplString +
426 "\t-Rotation:\n" + srcRotString +
427 "\tDetector Displacement: " + detDisplString +
428 "\t-Rotation:\n" + detRotString;
431 ret += (this->
type() == AbstractGantry::Type) ? QLatin1String(
"}\n") : QLatin1String(
"");
441 QVariantMap varMap = variant.toMap();
487 #endif // CTL_ABSTRACTGANTRY_H virtual mat::Location nominalSourceLocation() const =0
const mat::Location & sourceDisplacement() const
Definition: abstractgantry.h:285
Vector3x1 detectorPosition() const
Definition: abstractgantry.h:225
#define DECLARE_ELEMENTAL_TYPE
Definition: systemcomponent.h:148
mat::Location _globalGantryDisplacement
Displacement of the whole gantry.
Definition: abstractgantry.h:122
void setGantryDisplacementPosition(const Vector3x1 &position)
Definition: abstractgantry.h:346
QVariant toVariant() const override
Definition: abstractgantry.h:448
static QString typeInfoString(const std::type_info &type)
Definition: systemcomponent.cpp:52
mat::Location sourceLocation() const
Definition: abstractgantry.h:148
virtual mat::Location nominalDetectorLocation() const =0
QString info() const override
Definition: abstractgantry.h:409
virtual QString info() const
Definition: systemcomponent.cpp:29
Matrix3x3 sourceRotation() const
Definition: abstractgantry.h:182
const QString & name() const
Definition: systemcomponent.cpp:42
QVariant toVariant() const override
Definition: systemcomponent.cpp:64
std::string info(const char *lineModifier="") const
Definition: matrix.tpp:376
mat::Location detectorLocation() const
Definition: abstractgantry.h:204
const mat::Location & detectorDisplacement() const
Definition: abstractgantry.h:259
Base class for gantry components.
Definition: abstractgantry.h:65
Vector3x1 sourcePosition() const
Definition: abstractgantry.h:164
Base class for all system components.
Definition: systemcomponent.h:53
void setDetectorDisplacementAngles(double rollAngle, double tiltAngle, double twistAngle)
Definition: abstractgantry.h:395
Definition: matrix_utils.h:27
mat::Location _sourceDisplacement
Displacement of the source component.
Definition: abstractgantry.h:124
int type() const override
Definition: abstractgantry.h:67
mat::Location _detectorDisplacement
Displacement of the detector component.
Definition: abstractgantry.h:123
#define CTL_TYPE_ID(newIndex)
Definition: serializationinterface.h:189
void setDetectorDisplacement(const mat::Location &displacement)
Definition: abstractgantry.h:295
const mat::Location & gantryDisplacement() const
Definition: abstractgantry.h:272
void fromVariant(const QVariant &variant) override
Definition: systemcomponent.cpp:58
Matrix3x3 detectorRotation() const
Definition: abstractgantry.h:244
void setDetectorDisplacementPosition(const Vector3x1 &position)
Definition: abstractgantry.h:325
void setSourceDisplacement(const mat::Location &displacement)
Definition: abstractgantry.h:315
void setGantryDisplacement(const mat::Location &displacement)
Definition: abstractgantry.h:305
Matrix< Cols, Rows > transposed() const
Definition: matrix.tpp:737
void fromVariant(const QVariant &variant) override
Definition: abstractgantry.h:437
Generic implementation of a gantry component.
Definition: genericgantry.h:25
void setSourceDisplacementPosition(const Vector3x1 &position)
Definition: abstractgantry.h:367