diff --git a/Base/Vector/Transform3D.cpp b/Base/Vector/RotMatrix.cpp similarity index 65% rename from Base/Vector/Transform3D.cpp rename to Base/Vector/RotMatrix.cpp index 57b198977024e3a5cacb8f5b5fe5eb676f12b2ea..194899c7cd4280d834268a8d073a53dc3936f431 100644 --- a/Base/Vector/Transform3D.cpp +++ b/Base/Vector/RotMatrix.cpp @@ -2,8 +2,8 @@ // // BornAgain: simulate and fit reflection and scattering // -//! @file Base/Vector/Transform3D.cpp -//! @brief Implements template class Transform3D. +//! @file Base/Vector/RotMatrix.cpp +//! @brief Implements template class RotMatrix. //! //! @homepage http://www.bornagainproject.org //! @license GNU General Public License v3 or higher (see COPYING) @@ -12,22 +12,22 @@ // // ************************************************************************************************ -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include <Eigen/LU> #include <utility> -Transform3D::Transform3D() +RotMatrix::RotMatrix() { m_matrix.setIdentity(); m_inverse_matrix.setIdentity(); } -Transform3D::Transform3D(Eigen::Matrix3d matrix) : m_matrix(std::move(matrix)) +RotMatrix::RotMatrix(Eigen::Matrix3d matrix) : m_matrix(std::move(matrix)) { m_inverse_matrix = m_matrix.inverse(); } -Transform3D Transform3D::createRotateX(double phi) +RotMatrix RotMatrix::createRotateX(double phi) { double cosine = std::cos(phi); double sine = std::sin(phi); @@ -37,10 +37,10 @@ Transform3D Transform3D::createRotateX(double phi) matrix(1, 2) = -sine; matrix(2, 1) = sine; matrix(2, 2) = cosine; - return Transform3D(matrix); + return RotMatrix(matrix); } -Transform3D Transform3D::createRotateY(double phi) +RotMatrix RotMatrix::createRotateY(double phi) { double cosine = std::cos(phi); double sine = std::sin(phi); @@ -50,10 +50,10 @@ Transform3D Transform3D::createRotateY(double phi) matrix(0, 2) = sine; matrix(2, 0) = -sine; matrix(2, 2) = cosine; - return Transform3D(matrix); + return RotMatrix(matrix); } -Transform3D Transform3D::createRotateZ(double phi) +RotMatrix RotMatrix::createRotateZ(double phi) { double cosine = std::cos(phi); double sine = std::sin(phi); @@ -63,18 +63,18 @@ Transform3D Transform3D::createRotateZ(double phi) matrix(0, 1) = -sine; matrix(1, 0) = sine; matrix(1, 1) = cosine; - return Transform3D(matrix); + return RotMatrix(matrix); } -Transform3D Transform3D::createRotateEuler(double alpha, double beta, double gamma) +RotMatrix RotMatrix::createRotateEuler(double alpha, double beta, double gamma) { - Transform3D zrot = createRotateZ(alpha); - Transform3D xrot = createRotateX(beta); - Transform3D zrot2 = createRotateZ(gamma); + RotMatrix zrot = createRotateZ(alpha); + RotMatrix xrot = createRotateX(beta); + RotMatrix zrot2 = createRotateZ(gamma); return zrot * xrot * zrot2; } -void Transform3D::calculateEulerAngles(double* p_alpha, double* p_beta, double* p_gamma) const +void RotMatrix::calculateEulerAngles(double* p_alpha, double* p_beta, double* p_gamma) const { *p_beta = std::acos(m_matrix(2, 2)); // First check if second angle is zero or pi @@ -87,39 +87,39 @@ void Transform3D::calculateEulerAngles(double* p_alpha, double* p_beta, double* } } -double Transform3D::calculateRotateXAngle() const +double RotMatrix::calculateRotateXAngle() const { return std::atan2(m_matrix(2, 1), m_matrix(1, 1)); } -double Transform3D::calculateRotateYAngle() const +double RotMatrix::calculateRotateYAngle() const { return std::atan2(m_matrix(0, 2), m_matrix(2, 2)); } -double Transform3D::calculateRotateZAngle() const +double RotMatrix::calculateRotateZAngle() const { return std::atan2(m_matrix(1, 0), m_matrix(0, 0)); } -Transform3D Transform3D::getInverse() const +RotMatrix RotMatrix::getInverse() const { - Transform3D result(m_inverse_matrix); + RotMatrix result(m_inverse_matrix); return result; } -template <class I3> I3 Transform3D::transformed(const I3& v) const +template <class T> T RotMatrix::transformed(const T& v) const { auto x = m_matrix(0, 0) * v.x() + m_matrix(0, 1) * v.y() + m_matrix(0, 2) * v.z(); auto y = m_matrix(1, 0) * v.x() + m_matrix(1, 1) * v.y() + m_matrix(1, 2) * v.z(); auto z = m_matrix(2, 0) * v.x() + m_matrix(2, 1) * v.y() + m_matrix(2, 2) * v.z(); - return I3(x, y, z); + return T(x, y, z); } -template R3 Transform3D::transformed<R3>(const R3& v) const; -template C3 Transform3D::transformed<C3>(const C3& v) const; +template R3 RotMatrix::transformed<R3>(const R3& v) const; +template C3 RotMatrix::transformed<C3>(const C3& v) const; -template <class I3> I3 Transform3D::transformedInverse(const I3& v) const +template <class T> T RotMatrix::transformedInverse(const T& v) const { auto x = m_inverse_matrix(0, 0) * v.x() + m_inverse_matrix(0, 1) * v.y() + m_inverse_matrix(0, 2) * v.z(); @@ -127,29 +127,29 @@ template <class I3> I3 Transform3D::transformedInverse(const I3& v) const + m_inverse_matrix(1, 2) * v.z(); auto z = m_inverse_matrix(2, 0) * v.x() + m_inverse_matrix(2, 1) * v.y() + m_inverse_matrix(2, 2) * v.z(); - return I3(x, y, z); + return T(x, y, z); } -template R3 Transform3D::transformedInverse<R3>(const R3& v) const; -template C3 Transform3D::transformedInverse<C3>(const C3& v) const; +template R3 RotMatrix::transformedInverse<R3>(const R3& v) const; +template C3 RotMatrix::transformedInverse<C3>(const C3& v) const; -Transform3D* Transform3D::clone() const +RotMatrix* RotMatrix::clone() const { - return new Transform3D(m_matrix); + return new RotMatrix(m_matrix); } -Transform3D Transform3D::operator*(const Transform3D& other) const +RotMatrix RotMatrix::operator*(const RotMatrix& other) const { Eigen::Matrix3d product_matrix = this->m_matrix * other.m_matrix; - return Transform3D(product_matrix); + return RotMatrix(product_matrix); } -bool Transform3D::operator==(const Transform3D& other) const +bool RotMatrix::operator==(const RotMatrix& other) const { return this->m_matrix == other.m_matrix; } -Transform3D::ERotationType Transform3D::getRotationType() const +RotMatrix::ERotationType RotMatrix::getRotationType() const { if (isXRotation()) return XAXIS; @@ -160,19 +160,19 @@ Transform3D::ERotationType Transform3D::getRotationType() const return EULER; } -bool Transform3D::isIdentity() const +bool RotMatrix::isIdentity() const { double alpha, beta, gamma; calculateEulerAngles(&alpha, &beta, &gamma); return (alpha == 0.0 && beta == 0.0 && gamma == 0.0); } -void Transform3D::print(std::ostream& ostr) const +void RotMatrix::print(std::ostream& ostr) const { - ostr << "Transform3D: " << m_matrix; + ostr << "RotMatrix: " << m_matrix; } -bool Transform3D::isXRotation() const +bool RotMatrix::isXRotation() const { if (m_matrix(0, 0) != 1.0) return false; @@ -187,7 +187,7 @@ bool Transform3D::isXRotation() const return true; } -bool Transform3D::isYRotation() const +bool RotMatrix::isYRotation() const { if (m_matrix(1, 1) != 1.0) return false; @@ -202,7 +202,7 @@ bool Transform3D::isYRotation() const return true; } -bool Transform3D::isZRotation() const +bool RotMatrix::isZRotation() const { if (m_matrix(2, 2) != 1.0) return false; diff --git a/Base/Vector/Transform3D.h b/Base/Vector/RotMatrix.h similarity index 70% rename from Base/Vector/Transform3D.h rename to Base/Vector/RotMatrix.h index 2903131eafd00161f6df9b42649162362d18f94c..7c3eb7f3234b5faefa9806457d39b312073e2fa5 100644 --- a/Base/Vector/Transform3D.h +++ b/Base/Vector/RotMatrix.h @@ -2,8 +2,8 @@ // // BornAgain: simulate and fit reflection and scattering // -//! @file Base/Vector/Transform3D.h -//! @brief Declares class Transform3D. +//! @file Base/Vector/RotMatrix.h +//! @brief Declares class RotMatrix. //! //! @homepage http://www.bornagainproject.org //! @license GNU General Public License v3 or higher (see COPYING) @@ -12,45 +12,45 @@ // // ************************************************************************************************ -#ifndef BORNAGAIN_BASE_VECTOR_TRANSFORM3D_H -#define BORNAGAIN_BASE_VECTOR_TRANSFORM3D_H +#ifndef BORNAGAIN_BASE_VECTOR_ROTMATRIX_H +#define BORNAGAIN_BASE_VECTOR_ROTMATRIX_H #include "Base/Vector/EigenCore.h" #include <heinz/Vectors3D.h> #include <vector> -//! Vector transformations in three dimensions. +//! Rotation matrix in three dimensions. -class Transform3D { +class RotMatrix { public: enum ERotationType { EULER, XAXIS, YAXIS, ZAXIS }; //! Constructs unit transformation - Transform3D(); + RotMatrix(); #ifndef SWIG //! Constructor from matrix (no checks if this is an element of SO(3)!) - explicit Transform3D(Eigen::Matrix3d matrix); + explicit RotMatrix(Eigen::Matrix3d matrix); #endif //! Destructor - ~Transform3D() = default; + ~RotMatrix() = default; //! Clones the transformation - Transform3D* clone() const; + RotMatrix* clone() const; //! Creates rotation around x-axis - static Transform3D createRotateX(double phi); + static RotMatrix createRotateX(double phi); //! Creates rotation around y-axis - static Transform3D createRotateY(double phi); + static RotMatrix createRotateY(double phi); //! Creates rotation around z-axis - static Transform3D createRotateZ(double phi); + static RotMatrix createRotateZ(double phi); //! Creates rotation defined by Euler angles - static Transform3D createRotateEuler(double alpha, double beta, double gamma); + static RotMatrix createRotateEuler(double alpha, double beta, double gamma); //! Calculates the Euler angles corresponding to the rotation void calculateEulerAngles(double* p_alpha, double* p_beta, double* p_gamma) const; @@ -68,19 +68,19 @@ public: double calculateRotateZAngle() const; //! Returns the inverse transformation. - Transform3D getInverse() const; + RotMatrix getInverse() const; //! Return transformed vector _v_. - template <class I3> I3 transformed(const I3& v) const; + template <class T> T transformed(const T& v) const; //! Return transformed vector _v_. - template <class I3> I3 transformedInverse(const I3& v) const; + template <class T> T transformedInverse(const T& v) const; //! Composes two transformations - Transform3D operator*(const Transform3D& other) const; + RotMatrix operator*(const RotMatrix& other) const; //! Provides equality operator - bool operator==(const Transform3D& other) const; + bool operator==(const RotMatrix& other) const; //! Retrieve the rotation type (general, around x, y or z-axis) ERotationType getRotationType() const; @@ -88,7 +88,7 @@ public: //! Determine if the transformation is trivial (identity) bool isIdentity() const; - friend std::ostream& operator<<(std::ostream& ostr, const Transform3D& m) + friend std::ostream& operator<<(std::ostream& ostr, const RotMatrix& m) { m.print(ostr); return ostr; @@ -107,4 +107,4 @@ private: #endif }; -#endif // BORNAGAIN_BASE_VECTOR_TRANSFORM3D_H +#endif // BORNAGAIN_BASE_VECTOR_ROTMATRIX_H diff --git a/Base/Vector/WavevectorInfo.cpp b/Base/Vector/WavevectorInfo.cpp index b5f6513c32791b8ad4c390154501c24d159dbbfa..66298ed8ba602690d2d1fa2373fc84fcd610d59f 100644 --- a/Base/Vector/WavevectorInfo.cpp +++ b/Base/Vector/WavevectorInfo.cpp @@ -13,7 +13,7 @@ // ************************************************************************************************ #include "Base/Vector/WavevectorInfo.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" WavevectorInfo::WavevectorInfo(C3 ki, C3 kf, double wavelength) : m_ki(ki), m_kf(kf), m_vacuum_wavelength(wavelength) @@ -32,7 +32,7 @@ WavevectorInfo WavevectorInfo::makeZeroQ() return {R3{1, 0, 0}, R3{1, 0, 0}, 1.0}; } -WavevectorInfo WavevectorInfo::transformed(const Transform3D& transform) const +WavevectorInfo WavevectorInfo::transformed(const RotMatrix& transform) const { return WavevectorInfo(transform.transformed(m_ki), transform.transformed(m_kf), m_vacuum_wavelength); diff --git a/Base/Vector/WavevectorInfo.h b/Base/Vector/WavevectorInfo.h index 81d7df39230d3cd78883489378c724e561a631f6..279c1b5cf0a856715aad552c6631bce528b526f4 100644 --- a/Base/Vector/WavevectorInfo.h +++ b/Base/Vector/WavevectorInfo.h @@ -22,7 +22,7 @@ #include <heinz/Vectors3D.h> -class Transform3D; +class RotMatrix; //! Holds all wavevector information relevant for calculating form factors. @@ -32,7 +32,7 @@ public: WavevectorInfo(C3 ki, C3 kf, double wavelength); WavevectorInfo(R3 ki, R3 kf, double wavelength); - WavevectorInfo transformed(const Transform3D& transform) const; + WavevectorInfo transformed(const RotMatrix& transform) const; C3 getKi() const { return m_ki; } C3 getKf() const { return m_kf; } C3 getQ() const { return m_ki - m_kf; } diff --git a/Core/Export/SampleToPython.cpp b/Core/Export/SampleToPython.cpp index 037d4ea6e30082a96c2fb5d79d377df441994f02..1a4607551ca2f2009dc7862382e8052fbbcb95f0 100644 --- a/Core/Export/SampleToPython.cpp +++ b/Core/Export/SampleToPython.cpp @@ -15,7 +15,7 @@ #include "Core/Export/SampleToPython.h" #include "Base/Util/Assert.h" #include "Base/Util/PyFmt.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Core/Export/ComponentKeyHandler.h" #include "Core/Export/MaterialKeyHandler.h" #include "Core/Export/PyFmt2.h" @@ -44,29 +44,29 @@ namespace { void setRotationInformation(const IParticle* particle, std::string name, std::ostringstream& result) { if (particle->rotation()) { - switch (particle->rotation()->getTransform3D().getRotationType()) { - case Transform3D::EULER: { + switch (particle->rotation()->getRotMatrix().getRotationType()) { + case RotMatrix::EULER: { double alpha, beta, gamma; - particle->rotation()->getTransform3D().calculateEulerAngles(&alpha, &beta, &gamma); + particle->rotation()->getRotMatrix().calculateEulerAngles(&alpha, &beta, &gamma); result << indent() << name << "_rotation = ba.RotationEuler(" << Py::Fmt::printDegrees(alpha) << ", " << Py::Fmt::printDegrees(beta) << ", " << Py::Fmt::printDegrees(gamma) << ")\n"; break; } - case Transform3D::XAXIS: { - double alpha = particle->rotation()->getTransform3D().calculateRotateXAngle(); + case RotMatrix::XAXIS: { + double alpha = particle->rotation()->getRotMatrix().calculateRotateXAngle(); result << indent() << name << "_rotation = ba.RotationX(" << Py::Fmt::printDegrees(alpha) << ")\n"; break; } - case Transform3D::YAXIS: { - double alpha = particle->rotation()->getTransform3D().calculateRotateYAngle(); + case RotMatrix::YAXIS: { + double alpha = particle->rotation()->getRotMatrix().calculateRotateYAngle(); result << indent() << name << "_rotation = ba.RotationY(" << Py::Fmt::printDegrees(alpha) << ")\n"; break; } - case Transform3D::ZAXIS: { - double alpha = particle->rotation()->getTransform3D().calculateRotateZAngle(); + case RotMatrix::ZAXIS: { + double alpha = particle->rotation()->getRotMatrix().calculateRotateZAngle(); result << indent() << name << "_rotation = ba.RotationZ(" << Py::Fmt::printDegrees(alpha) << ")\n"; break; diff --git a/GUI/Model/From/GUISampleBuilder.cpp b/GUI/Model/From/GUISampleBuilder.cpp index 10f31c553279b1408fad965efef161d7ae6aa145..56cd8f585dc89c72b24b3a4a935578afdc2d3a60 100644 --- a/GUI/Model/From/GUISampleBuilder.cpp +++ b/GUI/Model/From/GUISampleBuilder.cpp @@ -149,7 +149,7 @@ void GUISampleBuilder::copyParticle(const IParticle* iparticle, FromDomain::setFormFactor(mesoItem, meso->outerShape()); FromDomain::setRotation(mesoItem, meso->rotation()); - auto lattice = meso->particleStructure().transformedLattice(); + auto lattice = meso->particleStructure().rotatedLattice(); mesoItem->setVectorA(lattice.getBasisVectorA()); mesoItem->setVectorB(lattice.getBasisVectorB()); mesoItem->setVectorC(lattice.getBasisVectorC()); diff --git a/GUI/Model/Sample/ItemWithParticles.cpp b/GUI/Model/Sample/ItemWithParticles.cpp index 6a603293d6551d3d91187dad209d12eaacfc025d..e4cb2ac8133c6d4bc749c298fa22969c905441c0 100644 --- a/GUI/Model/Sample/ItemWithParticles.cpp +++ b/GUI/Model/Sample/ItemWithParticles.cpp @@ -13,7 +13,7 @@ // ************************************************************************************************ #include "GUI/Model/Sample/ItemWithParticles.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "GUI/Model/Session/SessionItemUtils.h" #include "GUI/Model/Session/SessionModel.h" #include "GUI/Model/Trafo/RotationItems.h" @@ -93,10 +93,10 @@ bool ItemWithParticles::isTransformationTagName(const QString& name) return name == T_TRANSFORMATION; } -Transform3D ItemWithParticles::rotation() const +RotMatrix ItemWithParticles::rotation() const { auto* const item = rotationItem(); - return item ? item->rotation() : Transform3D(); + return item ? item->rotation() : RotMatrix(); } SelectionDescriptor<RotationItem*> ItemWithParticles::rotationMethod() @@ -169,7 +169,7 @@ void ItemWithParticles::setDefaultTagTransformation() void ItemWithParticles::setTransformationInfo(IParticle* result) const { result->setParticlePosition(position()); - const Transform3D r = rotation(); + const RotMatrix r = rotation(); if (!r.isIdentity()) { std::unique_ptr<IRotation> rotation(IRotation::createRotation(r)); result->setRotation(*rotation); diff --git a/GUI/Model/Sample/ItemWithParticles.h b/GUI/Model/Sample/ItemWithParticles.h index 7c8081d24db3e546dd529fb1c3dbad324923b4f7..5e243ac849edfa2fd845961b2d994a00443256a0 100644 --- a/GUI/Model/Sample/ItemWithParticles.h +++ b/GUI/Model/Sample/ItemWithParticles.h @@ -23,7 +23,7 @@ class DoubleDescriptor; class IParticle; class IRotation; class RotationItem; -class Transform3D; +class RotMatrix; class TransformationItem; class VectorDescriptor; class VectorItem; @@ -49,7 +49,7 @@ public: static bool isTransformationTagName(const QString& name); //! Returns identity transformation if no rotation is defined at all - Transform3D rotation() const; + RotMatrix rotation() const; //! Returns selection descriptor for rotation methods. SelectionDescriptor<RotationItem*> rotationMethod(); diff --git a/GUI/Model/Trafo/RotationItems.cpp b/GUI/Model/Trafo/RotationItems.cpp index cc4f42e02837cc64be701869cb3561a7eb01954c..fdfaa2b5851f57f41beed566ba1c2e58f0310748 100644 --- a/GUI/Model/Trafo/RotationItems.cpp +++ b/GUI/Model/Trafo/RotationItems.cpp @@ -14,7 +14,7 @@ #include "GUI/Model/Trafo/RotationItems.h" #include "Base/Const/Units.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "GUI/Model/Types/DoubleDescriptor.h" #include "Sample/Scattering/Rotations.h" @@ -24,10 +24,10 @@ using namespace Units; RotationItem::RotationItem(const QString& name) : SessionItem(name) {} -Transform3D RotationItem::rotation() const +RotMatrix RotationItem::rotation() const { auto p = createRotation(); - return (p != nullptr) ? p->getTransform3D() : Transform3D(); + return (p != nullptr) ? p->getRotMatrix() : RotMatrix(); } // ---------------------------------------------------------------------------- diff --git a/GUI/Model/Trafo/RotationItems.h b/GUI/Model/Trafo/RotationItems.h index 64bf0e01cb10d7349083f141c004ca3fadba31da..3ff2fd463611b37138eea8043e119b5065ebe9cc 100644 --- a/GUI/Model/Trafo/RotationItems.h +++ b/GUI/Model/Trafo/RotationItems.h @@ -18,14 +18,14 @@ #include "GUI/Model/Session/SessionItem.h" class IRotation; -class Transform3D; +class RotMatrix; class DoubleDescriptor; using std::unique_ptr; class BA_CORE_API_ RotationItem : public SessionItem { public: - Transform3D rotation() const; + RotMatrix rotation() const; protected: explicit RotationItem(const QString& name); diff --git a/Sample/Lattice/Lattice3D.cpp b/Sample/Lattice/Lattice3D.cpp index aa6eb39f31a4b6b19e205e8ad7b2fec9fa2594a8..ec17a00adf1945a4fcdbaffb3d26653bedd0b4d2 100644 --- a/Sample/Lattice/Lattice3D.cpp +++ b/Sample/Lattice/Lattice3D.cpp @@ -14,7 +14,7 @@ #include "Sample/Lattice/Lattice3D.h" #include "Base/Math/Constants.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Sample/Lattice/ISelectionRule.h" #include <gsl/gsl_linalg.h> @@ -31,11 +31,11 @@ Lattice3D::Lattice3D(const Lattice3D& lattice) : Lattice3D(lattice.m_a, lattice. Lattice3D::~Lattice3D() = default; -Lattice3D Lattice3D::transformed(const Transform3D& transform) const +Lattice3D Lattice3D::rotated(const RotMatrix& rotMatrix) const { - R3 q1 = transform.transformed(m_a); - R3 q2 = transform.transformed(m_b); - R3 q3 = transform.transformed(m_c); + R3 q1 = rotMatrix.transformed(m_a); + R3 q2 = rotMatrix.transformed(m_b); + R3 q3 = rotMatrix.transformed(m_c); Lattice3D result = {q1, q2, q3}; if (m_selection_rule) result.setSelectionRule(*m_selection_rule); diff --git a/Sample/Lattice/Lattice3D.h b/Sample/Lattice/Lattice3D.h index f404ba1e21217bada552908e1c6c47236894d8c3..30db2c1f3c96dbb818de7a0e6edffef292924072 100644 --- a/Sample/Lattice/Lattice3D.h +++ b/Sample/Lattice/Lattice3D.h @@ -21,7 +21,7 @@ #include <vector> class ISelectionRule; -class Transform3D; +class RotMatrix; //! A Bravais lattice, characterized by three basis vectors, and optionally an ISelectionRule. @@ -37,8 +37,8 @@ public: ~Lattice3D() override; Lattice3D& operator=(const Lattice3D&) = delete; - //! Creates transformed lattice - Lattice3D transformed(const Transform3D& transform) const; + //! Creates rotated lattice + Lattice3D rotated(const RotMatrix& rotMatrix) const; //! Returns basis vector a R3 getBasisVectorA() const { return m_a; } diff --git a/Sample/Material/BaseMaterialImpl.h b/Sample/Material/BaseMaterialImpl.h index 0aa837fc944b9ab41f1c06cf267b94abfbfac02a..d24040c607cf61cc619b958d7f7e89155362237e 100644 --- a/Sample/Material/BaseMaterialImpl.h +++ b/Sample/Material/BaseMaterialImpl.h @@ -26,7 +26,7 @@ #include <heinz/Complex.h> #include <heinz/Vectors3D.h> -class Transform3D; +class RotMatrix; class WavevectorInfo; enum class MATERIAL_TYPES { InvalidMaterialType = -1, RefractiveMaterial = 0, MaterialBySLD }; @@ -75,7 +75,7 @@ public: //! Returns (\f$ \pi/\lambda^2 \f$ - sld) matrix with magnetization corrections virtual Eigen::Matrix2cd polarizedSubtrSLD(const WavevectorInfo& wavevectors) const = 0; - virtual BaseMaterialImpl* rotatedMaterial(const Transform3D& transform) const = 0; + virtual BaseMaterialImpl* rotatedMaterial(const RotMatrix& transform) const = 0; //! Prints object data virtual void print(std::ostream& ostr) const = 0; diff --git a/Sample/Material/MagneticMaterialImpl.cpp b/Sample/Material/MagneticMaterialImpl.cpp index 29a8f0d838961ab614a59363c048eb51debc19e4..72495d838736f32ffdd1d751e18eee91e5f8d744 100644 --- a/Sample/Material/MagneticMaterialImpl.cpp +++ b/Sample/Material/MagneticMaterialImpl.cpp @@ -14,7 +14,7 @@ #include "Sample/Material/MagneticMaterialImpl.h" #include "Base/Const/PhysicalConstants.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Base/Vector/WavevectorInfo.h" #include "Sample/Material/MaterialUtils.h" #include <memory> @@ -73,7 +73,7 @@ Eigen::Matrix2cd MagneticMaterialImpl::polarizedSubtrSLD(const WavevectorInfo& w return MaterialUtils::MagnetizationCorrection(unit_factor, magnetization_prefactor, mag_ortho); } -MagneticMaterialImpl* MagneticMaterialImpl::rotatedMaterial(const Transform3D& transform) const +MagneticMaterialImpl* MagneticMaterialImpl::rotatedMaterial(const RotMatrix& transform) const { R3 transformed_field = transform.transformed(m_magnetization); MagneticMaterialImpl* result = this->clone(); diff --git a/Sample/Material/MagneticMaterialImpl.h b/Sample/Material/MagneticMaterialImpl.h index 633830f7107171e5b5527ad44adf8c16a70a594e..eada1790359deecd802367abe86f9ee97ec16ff4 100644 --- a/Sample/Material/MagneticMaterialImpl.h +++ b/Sample/Material/MagneticMaterialImpl.h @@ -22,7 +22,7 @@ #include "Sample/Material/BaseMaterialImpl.h" -class Transform3D; +class RotMatrix; class WavevectorInfo; //! Basic implementation for magnetized material. @@ -55,7 +55,7 @@ public: //! Returns (\f$ \pi/\lambda^2 \f$ - sld) matrix with magnetization corrections Eigen::Matrix2cd polarizedSubtrSLD(const WavevectorInfo& wavevectors) const override; - MagneticMaterialImpl* rotatedMaterial(const Transform3D& transform) const override; + MagneticMaterialImpl* rotatedMaterial(const RotMatrix& transform) const override; private: void setMagnetization(R3 magnetization) { m_magnetization = magnetization; } diff --git a/Sample/Material/Material.cpp b/Sample/Material/Material.cpp index d66861c46a29de025911c82db94e2617b9214e0d..35f15d2c9d1d89d51839499d532798a73ba8975c 100644 --- a/Sample/Material/Material.cpp +++ b/Sample/Material/Material.cpp @@ -14,7 +14,7 @@ #include "Sample/Material/Material.h" #include "Base/Util/Assert.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Base/Vector/WavevectorInfo.h" #include <typeinfo> @@ -99,7 +99,7 @@ Eigen::Matrix2cd Material::polarizedSubtrSLD(const WavevectorInfo& wavevectors) return m_material_impl->polarizedSubtrSLD(wavevectors); } -Material Material::rotatedMaterial(const Transform3D& transform) const // TODO param:=rotation +Material Material::rotatedMaterial(const RotMatrix& transform) const // TODO param:=rotation { std::unique_ptr<BaseMaterialImpl> material_impl(m_material_impl->rotatedMaterial(transform)); return Material(std::move(material_impl)); diff --git a/Sample/Material/Material.h b/Sample/Material/Material.h index 6ec6c56b2b2f9734dfa926ee9ff0104426121e1c..e1e59c53b97b514b9bd9506e808c84bce4041457 100644 --- a/Sample/Material/Material.h +++ b/Sample/Material/Material.h @@ -19,7 +19,7 @@ #include <memory> #include <vector> -class Transform3D; +class RotMatrix; class WavevectorInfo; //! A wrapper for underlying material implementation @@ -86,7 +86,7 @@ public: Eigen::Matrix2cd polarizedSubtrSLD(const WavevectorInfo& wavevectors) const; #endif - Material rotatedMaterial(const Transform3D& transform) const; + Material rotatedMaterial(const RotMatrix& transform) const; friend std::ostream& operator<<(std::ostream& ostr, const Material& mat); diff --git a/Sample/Particle/Crystal.cpp b/Sample/Particle/Crystal.cpp index 8bd08b32437e42bf6d4f1379964136937d3e36a2..20c137052dce9ac20f39621b3638acc172e2570a 100644 --- a/Sample/Particle/Crystal.cpp +++ b/Sample/Particle/Crystal.cpp @@ -13,7 +13,7 @@ // ************************************************************************************************ #include "Sample/Particle/Crystal.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Sample/Particle/FormFactorCrystal.h" #include "Sample/Particle/Particle.h" #include "Sample/Particle/ParticleComposition.h" @@ -42,13 +42,13 @@ Crystal* Crystal::clone() const IFormFactor* Crystal::createTotalFormFactor(const IFormFactor& meso_crystal_form_factor, const IRotation* rotation, const R3& translation) const { - Lattice3D transformed_lattice = transformedLattice(rotation); + Lattice3D rotated_lattice = rotatedLattice(rotation); std::unique_ptr<IParticle> basis_clone{m_basis->clone()}; if (rotation) basis_clone->rotate(*rotation); basis_clone->translate(translation); const std::unique_ptr<IFormFactor> basis_ff(basis_clone->createFormFactor()); - return new FormFactorCrystal(transformed_lattice, *basis_ff, meso_crystal_form_factor, + return new FormFactorCrystal(rotated_lattice, *basis_ff, meso_crystal_form_factor, m_position_variance); } @@ -70,11 +70,11 @@ Admixtures Crystal::admixtures() const return result; } -Lattice3D Crystal::transformedLattice(const IRotation* rotation) const +Lattice3D Crystal::rotatedLattice(const IRotation* rotation) const { if (!rotation) return m_lattice; - return m_lattice.transformed(rotation->getTransform3D()); + return m_lattice.rotated(rotation->getRotMatrix()); } std::vector<const INode*> Crystal::getChildren() const diff --git a/Sample/Particle/Crystal.h b/Sample/Particle/Crystal.h index b33e4d2c6cccb8a12e7a174bbc21c8c2014d0af7..e7926a1f3a1f86a05a89ef1e9cb87dcfc1804349 100644 --- a/Sample/Particle/Crystal.h +++ b/Sample/Particle/Crystal.h @@ -48,7 +48,7 @@ public: Admixtures admixtures() const; - Lattice3D transformedLattice(const IRotation* rotation = nullptr) const; + Lattice3D rotatedLattice(const IRotation* rotation = nullptr) const; // TODO provide Py example std::vector<const INode*> getChildren() const override; const IParticle* basis() const; diff --git a/Sample/Particle/MesoCrystal.cpp b/Sample/Particle/MesoCrystal.cpp index e7074380af42c4811463883b082f33015c9acc29..330bb6413a783bcee9157c6de2e650fa66997a2f 100644 --- a/Sample/Particle/MesoCrystal.cpp +++ b/Sample/Particle/MesoCrystal.cpp @@ -16,8 +16,6 @@ #include "Base/Util/Assert.h" #include "Sample/Particle/Crystal.h" #include "Sample/Particle/SlicedParticle.h" -#include "Sample/Scattering/FormFactorDecoratorPositionFactor.h" -#include "Sample/Scattering/FormFactorDecoratorRotation.h" #include "Sample/Scattering/Rotations.h" MesoCrystal::MesoCrystal(Crystal* particle_structure, IFormFactor* form_factor) diff --git a/Sample/Particle/Particle.cpp b/Sample/Particle/Particle.cpp index e844f4c2248c5c7651ac97ef3d6f92b0cb403434..b6be88d7b4f469c51243c82a9c601b8ca3ef358a 100644 --- a/Sample/Particle/Particle.cpp +++ b/Sample/Particle/Particle.cpp @@ -14,7 +14,7 @@ #include "Sample/Particle/Particle.h" #include "Base/Util/Assert.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Sample/Material/MaterialFactoryFuncs.h" #include "Sample/Particle/SlicedParticle.h" #include "Sample/Scattering/FormFactorDecoratorMaterial.h" @@ -56,7 +56,7 @@ SlicedParticle Particle::createSlicedParticle(const ZLimits& limits) const auto sliced_ff = std::make_unique<FormFactorDecoratorMaterial>(*sliced_raw_ff); double volume = sliced_raw_ff->volume(); Material transformed_material( - m_rotation ? m_material.rotatedMaterial(m_rotation->getTransform3D()) : m_material); + m_rotation ? m_material.rotatedMaterial(m_rotation->getRotMatrix()) : m_material); sliced_ff->setMaterial(transformed_material); return {std::move(sliced_ff), {{{volume, transformed_material}}}}; } diff --git a/Sample/Scattering/FormFactorDecoratorRotation.cpp b/Sample/Scattering/FormFactorDecoratorRotation.cpp index 96402f29399367ac798cb6d138911d8c25a11985..d6a4f5d9f632b8760b4382aa7cb2f7d111f196b8 100644 --- a/Sample/Scattering/FormFactorDecoratorRotation.cpp +++ b/Sample/Scattering/FormFactorDecoratorRotation.cpp @@ -13,48 +13,50 @@ // ************************************************************************************************ #include "Sample/Scattering/FormFactorDecoratorRotation.h" +#include "Base/Vector/RotMatrix.h" #include "Base/Vector/WavevectorInfo.h" #include "Sample/Scattering/Rotations.h" #include <memory> +FormFactorDecoratorRotation::FormFactorDecoratorRotation(const IFormFactor& ff, + const RotMatrix& rotMatrix) + : IFormFactorDecorator(ff), m_rotMatrix(std::make_unique<RotMatrix>(rotMatrix)) +{ +} + FormFactorDecoratorRotation::FormFactorDecoratorRotation(const IFormFactor& ff, const IRotation& rotation) - : IFormFactorDecorator(ff) + : FormFactorDecoratorRotation(ff, rotation.getRotMatrix()) { - m_transform = rotation.getTransform3D(); } +FormFactorDecoratorRotation::~FormFactorDecoratorRotation() = default; + FormFactorDecoratorRotation* FormFactorDecoratorRotation::clone() const { - return new FormFactorDecoratorRotation(*m_ff, m_transform); + return new FormFactorDecoratorRotation(*m_ff, *m_rotMatrix); } double FormFactorDecoratorRotation::bottomZ(const IRotation* rotation) const { - Transform3D transform = rotation ? rotation->getTransform3D() : Transform3D(); - std::unique_ptr<IRotation> total_rotation(IRotation::createRotation(transform * m_transform)); + RotMatrix transform = rotation ? rotation->getRotMatrix() : RotMatrix(); + std::unique_ptr<IRotation> total_rotation(IRotation::createRotation(transform * *m_rotMatrix)); return m_ff->bottomZ(total_rotation.get()); } double FormFactorDecoratorRotation::topZ(const IRotation* rotation) const { - Transform3D transform = rotation ? rotation->getTransform3D() : Transform3D(); - std::unique_ptr<IRotation> total_rotation(IRotation::createRotation(transform * m_transform)); + RotMatrix transform = rotation ? rotation->getRotMatrix() : RotMatrix(); + std::unique_ptr<IRotation> total_rotation(IRotation::createRotation(transform * *m_rotMatrix)); return m_ff->topZ(total_rotation.get()); } complex_t FormFactorDecoratorRotation::theFF(const WavevectorInfo& wavevectors) const { - return m_ff->theFF(wavevectors.transformed(m_transform.getInverse())); + return m_ff->theFF(wavevectors.transformed(m_rotMatrix->getInverse())); } Eigen::Matrix2cd FormFactorDecoratorRotation::thePolFF(const WavevectorInfo& wavevectors) const { - return m_ff->thePolFF(wavevectors.transformed(m_transform.getInverse())); -} - -FormFactorDecoratorRotation::FormFactorDecoratorRotation(const IFormFactor& ff, - const Transform3D& transform) - : IFormFactorDecorator(ff), m_transform(transform) -{ + return m_ff->thePolFF(wavevectors.transformed(m_rotMatrix->getInverse())); } diff --git a/Sample/Scattering/FormFactorDecoratorRotation.h b/Sample/Scattering/FormFactorDecoratorRotation.h index 6efdd73bf57b07a970b14b5fc7ef639b1688b2ce..5297c58a2f345f997672bdaf2abc3d3f13a41439 100644 --- a/Sample/Scattering/FormFactorDecoratorRotation.h +++ b/Sample/Scattering/FormFactorDecoratorRotation.h @@ -20,10 +20,10 @@ #ifndef BORNAGAIN_SAMPLE_SCATTERING_FORMFACTORDECORATORROTATION_H #define BORNAGAIN_SAMPLE_SCATTERING_FORMFACTORDECORATORROTATION_H -#include "Base/Vector/Transform3D.h" #include "Sample/Scattering/IFormFactorDecorator.h" class IRotation; +class RotMatrix; //! Equips a form factor with a rotation. @@ -35,6 +35,8 @@ public: //! Constructor, setting form factor and rotation. FormFactorDecoratorRotation(const IFormFactor& ff, const IRotation& rotation); + ~FormFactorDecoratorRotation(); + FormFactorDecoratorRotation* clone() const override; double bottomZ(const IRotation* rotation) const override; @@ -47,9 +49,9 @@ public: #endif private: - Transform3D m_transform; + std::unique_ptr<RotMatrix> m_rotMatrix; //! Private constructor for cloning. - FormFactorDecoratorRotation(const IFormFactor& ff, const Transform3D& transform); + FormFactorDecoratorRotation(const IFormFactor& ff, const RotMatrix& rotMatrix); }; #endif // BORNAGAIN_SAMPLE_SCATTERING_FORMFACTORDECORATORROTATION_H diff --git a/Sample/Scattering/Rotations.cpp b/Sample/Scattering/Rotations.cpp index ef2b1c5e8d8d083db5e8f019bda3a2412d8568a9..568b5f5893122c72a56561d14d6d4ad0435264e6 100644 --- a/Sample/Scattering/Rotations.cpp +++ b/Sample/Scattering/Rotations.cpp @@ -14,7 +14,7 @@ #include "Sample/Scattering/Rotations.h" #include "Base/Util/Assert.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" // ************************************************************************************************ // interface IRotation @@ -25,23 +25,23 @@ IRotation::IRotation(const NodeMeta& meta, const std::vector<double>& PValues) { } -IRotation* IRotation::createRotation(const Transform3D& transform) +IRotation* IRotation::createRotation(const RotMatrix& transform) { auto rot_type = transform.getRotationType(); switch (rot_type) { - case Transform3D::XAXIS: { + case RotMatrix::XAXIS: { double angle = transform.calculateRotateXAngle(); return new RotationX(angle); } - case Transform3D::YAXIS: { + case RotMatrix::YAXIS: { double angle = transform.calculateRotateYAngle(); return new RotationY(angle); } - case Transform3D::ZAXIS: { + case RotMatrix::ZAXIS: { double angle = transform.calculateRotateZAngle(); return new RotationZ(angle); } - case Transform3D::EULER: { + case RotMatrix::EULER: { double alpha, beta, gamma; transform.calculateEulerAngles(&alpha, &beta, &gamma); return new RotationEuler(alpha, beta, gamma); @@ -52,25 +52,25 @@ IRotation* IRotation::createRotation(const Transform3D& transform) R3 IRotation::transformed(const R3& v) const { - return getTransform3D().transformed(v); + return getRotMatrix().transformed(v); } bool IRotation::isIdentity() const { - return getTransform3D().isIdentity(); + return getRotMatrix().isIdentity(); } bool IRotation::zInvariant() const { - return getTransform3D().isZRotation(); + return getRotMatrix().isZRotation(); } //! Returns concatenated rotation (first right, then left). IRotation* createProduct(const IRotation& left, const IRotation& right) { - Transform3D tr_left = left.getTransform3D(); - Transform3D tr_right = right.getTransform3D(); + RotMatrix tr_left = left.getRotMatrix(); + RotMatrix tr_right = right.getRotMatrix(); IRotation* p_result = IRotation::createRotation(tr_left * tr_right); return p_result; } @@ -84,7 +84,7 @@ IdentityRotation::IdentityRotation() { } -Transform3D IdentityRotation::getTransform3D() const +RotMatrix IdentityRotation::getRotMatrix() const { return {}; } @@ -103,9 +103,9 @@ RotationX::RotationX(const std::vector<double> P) RotationX::RotationX(double angle) : RotationX(std::vector<double>{angle}) {} -Transform3D RotationX::getTransform3D() const +RotMatrix RotationX::getRotMatrix() const { - return Transform3D::createRotateX(m_angle); + return RotMatrix::createRotateX(m_angle); } // ************************************************************************************************ @@ -122,9 +122,9 @@ RotationY::RotationY(const std::vector<double> P) RotationY::RotationY(double angle) : RotationY(std::vector<double>{angle}) {} -Transform3D RotationY::getTransform3D() const +RotMatrix RotationY::getRotMatrix() const { - return Transform3D::createRotateY(m_angle); + return RotMatrix::createRotateY(m_angle); } // ************************************************************************************************ @@ -143,9 +143,9 @@ RotationZ::RotationZ(const std::vector<double> P) RotationZ::RotationZ(double angle) : RotationZ(std::vector<double>{angle}) {} -Transform3D RotationZ::getTransform3D() const +RotMatrix RotationZ::getRotMatrix() const { - return Transform3D::createRotateZ(m_angle); + return RotMatrix::createRotateZ(m_angle); } // ************************************************************************************************ @@ -172,11 +172,11 @@ RotationEuler::RotationEuler(double alpha, double beta, double gamma) IRotation* RotationEuler::createInverse() const { - Transform3D inverse_transform(getTransform3D().getInverse()); + RotMatrix inverse_transform(getRotMatrix().getInverse()); return createRotation(inverse_transform); } -Transform3D RotationEuler::getTransform3D() const +RotMatrix RotationEuler::getRotMatrix() const { - return Transform3D::createRotateEuler(m_alpha, m_beta, m_gamma); + return RotMatrix::createRotateEuler(m_alpha, m_beta, m_gamma); } diff --git a/Sample/Scattering/Rotations.h b/Sample/Scattering/Rotations.h index 026debbfd2a7f27218e082d3ebc24f7e920b3e1b..215e00fe98f0a1cd54d08f1495d3d6d630221df8 100644 --- a/Sample/Scattering/Rotations.h +++ b/Sample/Scattering/Rotations.h @@ -19,7 +19,7 @@ #include "Param/Node/INode.h" #include <heinz/Vectors3D.h> -class Transform3D; +class RotMatrix; #ifndef USER_API @@ -28,7 +28,7 @@ class Transform3D; class IRotation : public ICloneable, public INode { public: - static IRotation* createRotation(const Transform3D& transform); + static IRotation* createRotation(const RotMatrix& transform); IRotation(const NodeMeta& meta, const std::vector<double>& PValues); @@ -38,7 +38,7 @@ public: virtual IRotation* createInverse() const = 0; //! Returns transformation. - virtual Transform3D getTransform3D() const = 0; + virtual RotMatrix getRotMatrix() const = 0; R3 transformed(const R3& v) const; @@ -65,7 +65,7 @@ public: IdentityRotation* clone() const override { return new IdentityRotation(); } IdentityRotation* createInverse() const override { return new IdentityRotation(); } - Transform3D getTransform3D() const override; + RotMatrix getRotMatrix() const override; bool isIdentity() const override { return true; } }; @@ -85,7 +85,7 @@ public: double getAngle() const { return m_angle; } - Transform3D getTransform3D() const override; + RotMatrix getRotMatrix() const override; protected: const double& m_angle; @@ -106,7 +106,7 @@ public: double getAngle() const { return m_angle; } - Transform3D getTransform3D() const override; + RotMatrix getRotMatrix() const override; protected: const double& m_angle; @@ -127,7 +127,7 @@ public: double getAngle() const { return m_angle; } - Transform3D getTransform3D() const override; + RotMatrix getRotMatrix() const override; protected: const double& m_angle; @@ -150,7 +150,7 @@ public: double getBeta() const { return m_beta; } double getGamma() const { return m_gamma; } - Transform3D getTransform3D() const override; + RotMatrix getRotMatrix() const override; protected: double m_alpha, m_beta, m_gamma; diff --git a/Tests/Unit/Base/KVectorTest.cpp b/Tests/Unit/Base/KVectorTest.cpp index 46baa70e70b335651010eb73f7493c198585cab0..9949c441c18095dea2415b0d726b58ec3b57bc13 100644 --- a/Tests/Unit/Base/KVectorTest.cpp +++ b/Tests/Unit/Base/KVectorTest.cpp @@ -1,4 +1,4 @@ -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Tests/GTestWrapper/google_test.h" class KVectorTest : public ::testing::Test { @@ -11,19 +11,19 @@ TEST_F(KVectorTest, BasicTransformation) // rotation via transformation a = R3(std::sqrt(3.) / 2., 2., 0.5); - Transform3D m2 = Transform3D::createRotateY(M_PI / 6.); + RotMatrix m2 = RotMatrix::createRotateY(M_PI / 6.); v = m2.transformed(a); ASSERT_NEAR(v.x(), 1.0, epsilon); EXPECT_DOUBLE_EQ(v.y(), 2.0); ASSERT_NEAR(v.z(), 0.0, epsilon); a = R3(0.5, std::sqrt(3.) / 2., 2.); - Transform3D m3 = Transform3D::createRotateZ(M_PI / 6.); + RotMatrix m3 = RotMatrix::createRotateZ(M_PI / 6.); v = m3.transformed(a); ASSERT_NEAR(v.x(), 0.0, epsilon); ASSERT_NEAR(v.y(), 1.0, epsilon); EXPECT_DOUBLE_EQ(v.z(), 2.0); - Transform3D m4 = m3.getInverse(); + RotMatrix m4 = m3.getInverse(); v = m4.transformed(v); ASSERT_NEAR(v.x(), a.x(), epsilon); ASSERT_NEAR(v.y(), a.y(), epsilon); diff --git a/Tests/Unit/Resample/MaterialTest.cpp b/Tests/Unit/Resample/MaterialTest.cpp index d295b60bb9990732b6f27780b0ba33b4d3048483..0e9437700e59e17a4e980f2047ff730c7e9c5c5a 100644 --- a/Tests/Unit/Resample/MaterialTest.cpp +++ b/Tests/Unit/Resample/MaterialTest.cpp @@ -1,5 +1,5 @@ #include "Base/Const/Units.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Base/Vector/WavevectorInfo.h" #include "Sample/Scattering/Rotations.h" #include "Tests/GTestWrapper/google_test.h" @@ -53,13 +53,13 @@ TEST_F(MaterialTest, MaterialTransform) R3 transformed_mag = transform.transformed(magnetism); Material material = HomogeneousMaterial("Material", refIndex, magnetism); - Material material2 = material.rotatedMaterial(transform.getTransform3D()); + Material material2 = material.rotatedMaterial(transform.getRotMatrix()); EXPECT_EQ(material_data, material2.materialData()); EXPECT_EQ(transformed_mag, material2.magnetization()); Material material3 = MaterialBySLD("Material", material_data.real(), material_data.imag(), magnetism); - Material material4 = material.rotatedMaterial(transform.getTransform3D()); + Material material4 = material.rotatedMaterial(transform.getRotMatrix()); EXPECT_EQ(material_data, material4.materialData()); EXPECT_EQ(transformed_mag, material4.magnetization()); } diff --git a/Tests/Unit/Sample/LatticeTest.cpp b/Tests/Unit/Sample/LatticeTest.cpp index f450a5309ab2044450b116a58f51b4a13bf2e596..2670b84c430b362f8e5ba1c25f871d3004b853e1 100644 --- a/Tests/Unit/Sample/LatticeTest.cpp +++ b/Tests/Unit/Sample/LatticeTest.cpp @@ -1,5 +1,5 @@ #include "Base/Math/Constants.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Sample/Lattice/BakeLattice.h" #include "Sample/Lattice/Lattice3D.h" #include "Tests/GTestWrapper/google_test.h" @@ -42,7 +42,7 @@ TEST_F(LatticeTest, reciprocalTest) EXPECT_EQ(m_rc, b3); } -// tests whether Lattice has been transformed correctly +// tests whether Lattice has been rotated correctly TEST_F(LatticeTest, transformTest) { R3 a1(1, 0, 0); @@ -51,8 +51,8 @@ TEST_F(LatticeTest, transformTest) Lattice3D l1(a1, a2, a3); // use rotation by 90 degrees around z axis as a transformation - Transform3D tr = Transform3D::createRotateZ(M_TWOPI / 4); - Lattice3D ltr = l1.transformed(tr); + RotMatrix tr = RotMatrix::createRotateZ(M_TWOPI / 4); + Lattice3D ltr = l1.rotated(tr); // use EXPECT_NEAR as transform (matrix multiplication) uses double value for rotation angle // e.g. Rotating the vector (1,0,0) by 2*PI about z would give something like (0.99999,0,0) diff --git a/Tests/Unit/Sample/RotationTest.cpp b/Tests/Unit/Sample/RotationTest.cpp index 4d808a8b06b3c06bd76926fc241abd787a0e7038..d2c04434293a99f5158482667187811cc104a604 100644 --- a/Tests/Unit/Sample/RotationTest.cpp +++ b/Tests/Unit/Sample/RotationTest.cpp @@ -1,4 +1,4 @@ -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Sample/Scattering/Rotations.h" #include "Tests/GTestWrapper/google_test.h" @@ -11,7 +11,7 @@ TEST_F(RotationTest, XRotations) { double angle = 1.0; RotationX rot(angle); - auto rot_matrix = rot.getTransform3D(); + auto rot_matrix = rot.getRotMatrix(); auto P_rot = std::unique_ptr<IRotation>(IRotation::createRotation(rot_matrix)); auto* p_rot_cast = dynamic_cast<RotationX*>(P_rot.get()); ASSERT_NE(p_rot_cast, nullptr); @@ -22,7 +22,7 @@ TEST_F(RotationTest, YRotations) { double angle = 1.0; RotationY rot(angle); - auto rot_matrix = rot.getTransform3D(); + auto rot_matrix = rot.getRotMatrix(); auto P_rot = std::unique_ptr<IRotation>(IRotation::createRotation(rot_matrix)); auto* p_rot_cast = dynamic_cast<RotationY*>(P_rot.get()); ASSERT_NE(p_rot_cast, nullptr); @@ -33,7 +33,7 @@ TEST_F(RotationTest, ZRotations) { double angle = 1.0; RotationZ rot(angle); - auto rot_matrix = rot.getTransform3D(); + auto rot_matrix = rot.getRotMatrix(); auto P_rot = std::unique_ptr<IRotation>(IRotation::createRotation(rot_matrix)); auto* p_rot_cast = dynamic_cast<RotationZ*>(P_rot.get()); ASSERT_NE(p_rot_cast, nullptr); @@ -46,7 +46,7 @@ TEST_F(RotationTest, EulerRotations) double beta = 0.2; double gamma = -0.5; RotationEuler rot(alpha, beta, gamma); - auto rot_matrix = rot.getTransform3D(); + auto rot_matrix = rot.getRotMatrix(); auto P_rot = std::unique_ptr<IRotation>(IRotation::createRotation(rot_matrix)); auto* p_rot_cast = dynamic_cast<RotationEuler*>(P_rot.get()); ASSERT_NE(p_rot_cast, nullptr); diff --git a/Wrap/Swig/fromBase.i b/Wrap/Swig/fromBase.i index ce5dac543d356be2447a13677508fef8f4f67bea..50d540a148619b449d3217d6e33316e6924dd041 100644 --- a/Wrap/Swig/fromBase.i +++ b/Wrap/Swig/fromBase.i @@ -1,7 +1,7 @@ %import(module="libBornAgainBase") <heinz/Complex.h> %import(module="libBornAgainBase") <heinz/Vectors3D.h> %import(module="libBornAgainBase") "Base/Types/ICloneable.h" -%import(module="libBornAgainBase") "Base/Vector/Transform3D.h" +%import(module="libBornAgainBase") "Base/Vector/RotMatrix.h" %import(module="libBornAgainBase") "Base/Axis/IAxis.h" %template(R3) Vec3<double>; diff --git a/Wrap/Swig/libBornAgainBase.i b/Wrap/Swig/libBornAgainBase.i index 58e8cb1ee9ab15455a52957cdcb06d7a4b9fd1b6..7a0afa52605e5f6cd177d770b2c9949eaa6e57f1 100644 --- a/Wrap/Swig/libBornAgainBase.i +++ b/Wrap/Swig/libBornAgainBase.i @@ -31,7 +31,7 @@ #include "Base/Axis/CustomBinAxis.h" #include "Base/Axis/FixedBinAxis.h" #include "Base/Axis/VariableBinAxis.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" %} %include "heinz/Complex.h" @@ -43,7 +43,7 @@ %include "heinz/Vectors3D.h" %include "Base/Vector/Direction.h" -%include "Base/Vector/Transform3D.h" +%include "Base/Vector/RotMatrix.h" %include "Base/Axis/Bin.h" %include "Base/Axis/IAxis.h" diff --git a/Wrap/Swig/libBornAgainSample.i b/Wrap/Swig/libBornAgainSample.i index ba44b5857886a24a93a185c7dbd843540427d99d..4c954b913dac2e4eda0270900ed54c7b957c147a 100644 --- a/Wrap/Swig/libBornAgainSample.i +++ b/Wrap/Swig/libBornAgainSample.i @@ -34,7 +34,7 @@ %feature("director") IBornFF; // used in CustomFormFactor.py %{ -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Param/Distrib/ParameterDistribution.h" #include "Sample/Aggregate/Interference1DLattice.h" #include "Sample/Aggregate/Interference2DLattice.h" diff --git a/auto/Wrap/doxygenBase.i b/auto/Wrap/doxygenBase.i index 8c68c8e896e70b6012e37e0c04003bab571f299d..3645d5870ff08cac98ce00620f2053708346f7a7 100644 --- a/auto/Wrap/doxygenBase.i +++ b/auto/Wrap/doxygenBase.i @@ -819,181 +819,181 @@ C++ includes: RectangularPixel.h "; -// File: classSafePointerVector.xml -%feature("docstring") SafePointerVector " - -A vector of pointers, owned by *this, with methods to handle them safely. +// File: classRotMatrix.xml +%feature("docstring") RotMatrix " -The objects pointed to must support the ICloneable interface. +Rotation matrix in three dimensions. -C++ includes: SafePointerVector.h +C++ includes: RotMatrix.h "; -%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector()=default -"; +%feature("docstring") RotMatrix::RotMatrix "RotMatrix::RotMatrix() -%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector(const SafePointerVector &other) +Constructs unit transformation. "; -%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector(SafePointerVector &&other) noexcept -"; +%feature("docstring") RotMatrix::RotMatrix "RotMatrix::RotMatrix(Eigen::Matrix3d matrix) -%feature("docstring") SafePointerVector::~SafePointerVector "SafePointerVector< T >::~SafePointerVector() +Constructor from matrix (no checks if this is an element of SO(3)!) "; -%feature("docstring") SafePointerVector::size "size_t SafePointerVector< T >::size() const -"; +%feature("docstring") RotMatrix::~RotMatrix "RotMatrix::~RotMatrix()=default -%feature("docstring") SafePointerVector::empty "bool SafePointerVector< T >::empty() const +Destructor. "; -%feature("docstring") SafePointerVector::push_back "void SafePointerVector< T >::push_back(T *pointer) -"; +%feature("docstring") RotMatrix::clone "RotMatrix * RotMatrix::clone() const -%feature("docstring") SafePointerVector::begin "iterator SafePointerVector< T >::begin() +Clones the transformation. "; -%feature("docstring") SafePointerVector::begin "const_iterator SafePointerVector< T >::begin() const -"; +%feature("docstring") RotMatrix::calculateEulerAngles "void RotMatrix::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const -%feature("docstring") SafePointerVector::end "iterator SafePointerVector< T >::end() +Calculates the Euler angles corresponding to the rotation. "; -%feature("docstring") SafePointerVector::end "const_iterator SafePointerVector< T >::end() const -"; +%feature("docstring") RotMatrix::calculateRotateXAngle "double RotMatrix::calculateRotateXAngle() const -%feature("docstring") SafePointerVector::back "T* SafePointerVector< T >::back() +Calculates the rotation angle for a rotation around the x-axis alone Only meaningfull if the actual rotation is around the x-axis "; -%feature("docstring") SafePointerVector::back "const T* SafePointerVector< T >::back() const -"; +%feature("docstring") RotMatrix::calculateRotateYAngle "double RotMatrix::calculateRotateYAngle() const -%feature("docstring") SafePointerVector::clear "void SafePointerVector< T >::clear() +Calculates the rotation angle for a rotation around the y-axis alone Only meaningfull if the actual rotation is around the y-axis "; +%feature("docstring") RotMatrix::calculateRotateZAngle "double RotMatrix::calculateRotateZAngle() const -// File: classSphericalPixel.xml -%feature("docstring") SphericalPixel " +Calculates the rotation angle for a rotation around the z-axis alone Only meaningfull if the actual rotation is around the z-axis +"; -A pixel in a SphericalDetector. +%feature("docstring") RotMatrix::getInverse "RotMatrix RotMatrix::getInverse() const -C++ includes: SphericalPixel.h +Returns the inverse transformation. "; -%feature("docstring") SphericalPixel::SphericalPixel "SphericalPixel::SphericalPixel(const Bin1D &alpha_bin, const Bin1D &phi_bin) -"; +%feature("docstring") RotMatrix::transformed "template C3 RotMatrix::transformed< C3 >(const T &v) const -%feature("docstring") SphericalPixel::clone "SphericalPixel * SphericalPixel::clone() const override +Return transformed vector v. "; -%feature("docstring") SphericalPixel::createZeroSizePixel "SphericalPixel * SphericalPixel::createZeroSizePixel(double x, double y) const override -"; +%feature("docstring") RotMatrix::transformedInverse "template C3 RotMatrix::transformedInverse< C3 >(const T &v) const -%feature("docstring") SphericalPixel::getK "R3 SphericalPixel::getK(double x, double y, double wavelength) const override +Return transformed vector v. "; -%feature("docstring") SphericalPixel::integrationFactor "double SphericalPixel::integrationFactor(double x, double y) const override -"; +%feature("docstring") RotMatrix::getRotationType "RotMatrix::ERotationType RotMatrix::getRotationType() const -%feature("docstring") SphericalPixel::solidAngle "double SphericalPixel::solidAngle() const override +Retrieve the rotation type (general, around x, y or z-axis) "; +%feature("docstring") RotMatrix::isIdentity "bool RotMatrix::isIdentity() const -// File: structThreadInfo.xml -%feature("docstring") ThreadInfo " +Determine if the transformation is trivial (identity) +"; -Information to run simulation with dedicated number of threads. +%feature("docstring") RotMatrix::print "void RotMatrix::print(std::ostream &ostr) const +"; -C++ includes: ThreadInfo.h +%feature("docstring") RotMatrix::isXRotation "bool RotMatrix::isXRotation() const "; -%feature("docstring") ThreadInfo::ThreadInfo "ThreadInfo::ThreadInfo() +%feature("docstring") RotMatrix::isYRotation "bool RotMatrix::isYRotation() const "; +%feature("docstring") RotMatrix::isZRotation "bool RotMatrix::isZRotation() const +"; -// File: classTransform3D.xml -%feature("docstring") Transform3D " -Vector transformations in three dimensions. +// File: classSafePointerVector.xml +%feature("docstring") SafePointerVector " -C++ includes: Transform3D.h -"; +A vector of pointers, owned by *this, with methods to handle them safely. -%feature("docstring") Transform3D::Transform3D "Transform3D::Transform3D() +The objects pointed to must support the ICloneable interface. -Constructs unit transformation. +C++ includes: SafePointerVector.h "; -%feature("docstring") Transform3D::Transform3D "Transform3D::Transform3D(Eigen::Matrix3d matrix) - -Constructor from matrix (no checks if this is an element of SO(3)!) +%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector()=default "; -%feature("docstring") Transform3D::~Transform3D "Transform3D::~Transform3D()=default - -Destructor. +%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector(const SafePointerVector &other) "; -%feature("docstring") Transform3D::clone "Transform3D * Transform3D::clone() const +%feature("docstring") SafePointerVector::SafePointerVector "SafePointerVector< T >::SafePointerVector(SafePointerVector &&other) noexcept +"; -Clones the transformation. +%feature("docstring") SafePointerVector::~SafePointerVector "SafePointerVector< T >::~SafePointerVector() "; -%feature("docstring") Transform3D::calculateEulerAngles "void Transform3D::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const +%feature("docstring") SafePointerVector::size "size_t SafePointerVector< T >::size() const +"; -Calculates the Euler angles corresponding to the rotation. +%feature("docstring") SafePointerVector::empty "bool SafePointerVector< T >::empty() const "; -%feature("docstring") Transform3D::calculateRotateXAngle "double Transform3D::calculateRotateXAngle() const +%feature("docstring") SafePointerVector::push_back "void SafePointerVector< T >::push_back(T *pointer) +"; -Calculates the rotation angle for a rotation around the x-axis alone Only meaningfull if the actual rotation is around the x-axis +%feature("docstring") SafePointerVector::begin "iterator SafePointerVector< T >::begin() "; -%feature("docstring") Transform3D::calculateRotateYAngle "double Transform3D::calculateRotateYAngle() const +%feature("docstring") SafePointerVector::begin "const_iterator SafePointerVector< T >::begin() const +"; -Calculates the rotation angle for a rotation around the y-axis alone Only meaningfull if the actual rotation is around the y-axis +%feature("docstring") SafePointerVector::end "iterator SafePointerVector< T >::end() "; -%feature("docstring") Transform3D::calculateRotateZAngle "double Transform3D::calculateRotateZAngle() const +%feature("docstring") SafePointerVector::end "const_iterator SafePointerVector< T >::end() const +"; -Calculates the rotation angle for a rotation around the z-axis alone Only meaningfull if the actual rotation is around the z-axis +%feature("docstring") SafePointerVector::back "T* SafePointerVector< T >::back() "; -%feature("docstring") Transform3D::getInverse "Transform3D Transform3D::getInverse() const +%feature("docstring") SafePointerVector::back "const T* SafePointerVector< T >::back() const +"; -Returns the inverse transformation. +%feature("docstring") SafePointerVector::clear "void SafePointerVector< T >::clear() "; -%feature("docstring") Transform3D::transformed "template C3 Transform3D::transformed< C3 >(const I3 &v) const -Return transformed vector v. -"; +// File: classSphericalPixel.xml +%feature("docstring") SphericalPixel " -%feature("docstring") Transform3D::transformedInverse "template C3 Transform3D::transformedInverse< C3 >(const I3 &v) const +A pixel in a SphericalDetector. -Return transformed vector v. +C++ includes: SphericalPixel.h "; -%feature("docstring") Transform3D::getRotationType "Transform3D::ERotationType Transform3D::getRotationType() const +%feature("docstring") SphericalPixel::SphericalPixel "SphericalPixel::SphericalPixel(const Bin1D &alpha_bin, const Bin1D &phi_bin) +"; -Retrieve the rotation type (general, around x, y or z-axis) +%feature("docstring") SphericalPixel::clone "SphericalPixel * SphericalPixel::clone() const override "; -%feature("docstring") Transform3D::isIdentity "bool Transform3D::isIdentity() const +%feature("docstring") SphericalPixel::createZeroSizePixel "SphericalPixel * SphericalPixel::createZeroSizePixel(double x, double y) const override +"; -Determine if the transformation is trivial (identity) +%feature("docstring") SphericalPixel::getK "R3 SphericalPixel::getK(double x, double y, double wavelength) const override "; -%feature("docstring") Transform3D::print "void Transform3D::print(std::ostream &ostr) const +%feature("docstring") SphericalPixel::integrationFactor "double SphericalPixel::integrationFactor(double x, double y) const override "; -%feature("docstring") Transform3D::isXRotation "bool Transform3D::isXRotation() const +%feature("docstring") SphericalPixel::solidAngle "double SphericalPixel::solidAngle() const override "; -%feature("docstring") Transform3D::isYRotation "bool Transform3D::isYRotation() const + +// File: structThreadInfo.xml +%feature("docstring") ThreadInfo " + +Information to run simulation with dedicated number of threads. + +C++ includes: ThreadInfo.h "; -%feature("docstring") Transform3D::isZRotation "bool Transform3D::isZRotation() const +%feature("docstring") ThreadInfo::ThreadInfo "ThreadInfo::ThreadInfo() "; @@ -1082,7 +1082,7 @@ C++ includes: WavevectorInfo.h %feature("docstring") WavevectorInfo::WavevectorInfo "WavevectorInfo::WavevectorInfo(R3 ki, R3 kf, double wavelength) "; -%feature("docstring") WavevectorInfo::transformed "WavevectorInfo WavevectorInfo::transformed(const Transform3D &transform) const +%feature("docstring") WavevectorInfo::transformed "WavevectorInfo WavevectorInfo::transformed(const RotMatrix &transform) const "; %feature("docstring") WavevectorInfo::getKi "C3 WavevectorInfo::getKi() const @@ -1719,10 +1719,10 @@ This templated function is used in catalogs in form of a function pointer 'creat // File: EigenCore_8h.xml -// File: Transform3D_8cpp.xml +// File: RotMatrix_8cpp.xml -// File: Transform3D_8h.xml +// File: RotMatrix_8h.xml // File: WavevectorInfo_8cpp.xml diff --git a/auto/Wrap/doxygenSample.i b/auto/Wrap/doxygenSample.i index 0af58caae3663a09527824c0ee0b476672a5e8bb..dd400997d6e09d32f3102b32bdcd8e7f8dc4b9a4 100644 --- a/auto/Wrap/doxygenSample.i +++ b/auto/Wrap/doxygenSample.i @@ -87,7 +87,7 @@ Returns ( $ \\\\pi/\\\\lambda^2 $ - sld), sld being the scattering length densi Returns ( $ \\\\pi/\\\\lambda^2 $ - sld) matrix with magnetization corrections. "; -%feature("docstring") BaseMaterialImpl::rotatedMaterial "virtual BaseMaterialImpl* BaseMaterialImpl::rotatedMaterial(const Transform3D &transform) const =0 +%feature("docstring") BaseMaterialImpl::rotatedMaterial "virtual BaseMaterialImpl* BaseMaterialImpl::rotatedMaterial(const RotMatrix &transform) const =0 "; %feature("docstring") BaseMaterialImpl::print "virtual void BaseMaterialImpl::print(std::ostream &ostr) const =0 @@ -175,7 +175,7 @@ Returns a clone of this ISampleNode object. %feature("docstring") Crystal::admixtures "Admixtures Crystal::admixtures() const "; -%feature("docstring") Crystal::transformedLattice "Lattice3D Crystal::transformedLattice(const IRotation *rotation=nullptr) const +%feature("docstring") Crystal::rotatedLattice "Lattice3D Crystal::rotatedLattice(const IRotation *rotation=nullptr) const "; %feature("docstring") Crystal::getChildren "std::vector< const INode * > Crystal::getChildren() const override @@ -880,6 +880,9 @@ C++ includes: FormFactorDecoratorRotation.h Constructor, setting form factor and rotation. "; +%feature("docstring") FormFactorDecoratorRotation::~FormFactorDecoratorRotation "FormFactorDecoratorRotation::~FormFactorDecoratorRotation() +"; + %feature("docstring") FormFactorDecoratorRotation::clone "FormFactorDecoratorRotation * FormFactorDecoratorRotation::clone() const override Returns a clone of this ISampleNode object. @@ -2432,7 +2435,7 @@ C++ includes: Rotations.h Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") IdentityRotation::getTransform3D "Transform3D IdentityRotation::getTransform3D() const override +%feature("docstring") IdentityRotation::getRotMatrix "RotMatrix IdentityRotation::getRotMatrix() const override Returns transformation. "; @@ -3683,7 +3686,7 @@ C++ includes: Rotations.h Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") IRotation::getTransform3D "virtual Transform3D IRotation::getTransform3D() const =0 +%feature("docstring") IRotation::getRotMatrix "virtual RotMatrix IRotation::getRotMatrix() const =0 Returns transformation. "; @@ -3905,9 +3908,9 @@ C++ includes: Lattice3D.h %feature("docstring") Lattice3D::~Lattice3D "Lattice3D::~Lattice3D() override "; -%feature("docstring") Lattice3D::transformed "Lattice3D Lattice3D::transformed(const Transform3D &transform) const +%feature("docstring") Lattice3D::rotated "Lattice3D Lattice3D::rotated(const RotMatrix &rotMatrix) const -Creates transformed lattice. +Creates rotated lattice. "; %feature("docstring") Lattice3D::getBasisVectorA "R3 Lattice3D::getBasisVectorA() const @@ -4224,7 +4227,7 @@ Returns the magnetization (in A/m) Returns ( $ \\\\pi/\\\\lambda^2 $ - sld) matrix with magnetization corrections. "; -%feature("docstring") MagneticMaterialImpl::rotatedMaterial "MagneticMaterialImpl * MagneticMaterialImpl::rotatedMaterial(const Transform3D &transform) const override +%feature("docstring") MagneticMaterialImpl::rotatedMaterial "MagneticMaterialImpl * MagneticMaterialImpl::rotatedMaterial(const RotMatrix &transform) const override "; @@ -4310,7 +4313,7 @@ Returns ( $ \\\\pi/\\\\lambda^2 $ - sld), sld (in $nm^{-2}$) being the scatter Returns ( $ \\\\pi/\\\\lambda^2 $ - sld) matrix with magnetization corrections. "; -%feature("docstring") Material::rotatedMaterial "Material Material::rotatedMaterial(const Transform3D &transform) const +%feature("docstring") Material::rotatedMaterial "Material Material::rotatedMaterial(const RotMatrix &transform) const "; @@ -5064,7 +5067,7 @@ Returns a new IRotation object that is the current object's inverse. %feature("docstring") RotationEuler::getGamma "double RotationEuler::getGamma() const "; -%feature("docstring") RotationEuler::getTransform3D "Transform3D RotationEuler::getTransform3D() const override +%feature("docstring") RotationEuler::getRotMatrix "RotMatrix RotationEuler::getRotMatrix() const override Returns transformation. "; @@ -5100,7 +5103,7 @@ Returns a new IRotation object that is the current object's inverse. %feature("docstring") RotationX::getAngle "double RotationX::getAngle() const "; -%feature("docstring") RotationX::getTransform3D "Transform3D RotationX::getTransform3D() const override +%feature("docstring") RotationX::getRotMatrix "RotMatrix RotationX::getRotMatrix() const override Returns transformation. "; @@ -5136,7 +5139,7 @@ Returns a new IRotation object that is the current object's inverse. %feature("docstring") RotationY::getAngle "double RotationY::getAngle() const "; -%feature("docstring") RotationY::getTransform3D "Transform3D RotationY::getTransform3D() const override +%feature("docstring") RotationY::getRotMatrix "RotMatrix RotationY::getRotMatrix() const override Returns transformation. "; @@ -5172,7 +5175,7 @@ Returns a new IRotation object that is the current object's inverse. %feature("docstring") RotationZ::getAngle "double RotationZ::getAngle() const "; -%feature("docstring") RotationZ::getTransform3D "Transform3D RotationZ::getTransform3D() const override +%feature("docstring") RotationZ::getRotMatrix "RotMatrix RotationZ::getRotMatrix() const override Returns transformation. "; diff --git a/auto/Wrap/libBornAgainBase.py b/auto/Wrap/libBornAgainBase.py index 789add81281aeedb162be1ac13df00fe87de2d37..9f5bae8defedfd68c8ec44ac186cfb9a325661d2 100644 --- a/auto/Wrap/libBornAgainBase.py +++ b/auto/Wrap/libBornAgainBase.py @@ -2058,196 +2058,196 @@ deg = cvar.deg tesla = cvar.tesla gauss = cvar.gauss -class Transform3D(object): +class RotMatrix(object): r""" - Vector transformations in three dimensions. + Rotation matrix in three dimensions. - C++ includes: Transform3D.h + C++ includes: RotMatrix.h """ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr - EULER = _libBornAgainBase.Transform3D_EULER + EULER = _libBornAgainBase.RotMatrix_EULER - XAXIS = _libBornAgainBase.Transform3D_XAXIS + XAXIS = _libBornAgainBase.RotMatrix_XAXIS - YAXIS = _libBornAgainBase.Transform3D_YAXIS + YAXIS = _libBornAgainBase.RotMatrix_YAXIS - ZAXIS = _libBornAgainBase.Transform3D_ZAXIS + ZAXIS = _libBornAgainBase.RotMatrix_ZAXIS def __init__(self): r""" - __init__(Transform3D self) -> Transform3D - Transform3D::Transform3D(Eigen::Matrix3d matrix) + __init__(RotMatrix self) -> RotMatrix + RotMatrix::RotMatrix(Eigen::Matrix3d matrix) Constructor from matrix (no checks if this is an element of SO(3)!) """ - _libBornAgainBase.Transform3D_swiginit(self, _libBornAgainBase.new_Transform3D()) - __swig_destroy__ = _libBornAgainBase.delete_Transform3D + _libBornAgainBase.RotMatrix_swiginit(self, _libBornAgainBase.new_RotMatrix()) + __swig_destroy__ = _libBornAgainBase.delete_RotMatrix def clone(self): r""" - clone(Transform3D self) -> Transform3D - Transform3D * Transform3D::clone() const + clone(RotMatrix self) -> RotMatrix + RotMatrix * RotMatrix::clone() const Clones the transformation. """ - return _libBornAgainBase.Transform3D_clone(self) + return _libBornAgainBase.RotMatrix_clone(self) @staticmethod def createRotateX(phi): - r"""createRotateX(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateX(phi) + r"""createRotateX(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateX(phi) @staticmethod def createRotateY(phi): - r"""createRotateY(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateY(phi) + r"""createRotateY(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateY(phi) @staticmethod def createRotateZ(phi): - r"""createRotateZ(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateZ(phi) + r"""createRotateZ(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateZ(phi) @staticmethod def createRotateEuler(alpha, beta, gamma): - r"""createRotateEuler(double alpha, double beta, double gamma) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateEuler(alpha, beta, gamma) + r"""createRotateEuler(double alpha, double beta, double gamma) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateEuler(alpha, beta, gamma) def calculateEulerAngles(self, p_alpha, p_beta, p_gamma): r""" - calculateEulerAngles(Transform3D self, double * p_alpha, double * p_beta, double * p_gamma) - void Transform3D::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const + calculateEulerAngles(RotMatrix self, double * p_alpha, double * p_beta, double * p_gamma) + void RotMatrix::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const Calculates the Euler angles corresponding to the rotation. """ - return _libBornAgainBase.Transform3D_calculateEulerAngles(self, p_alpha, p_beta, p_gamma) + return _libBornAgainBase.RotMatrix_calculateEulerAngles(self, p_alpha, p_beta, p_gamma) def calculateRotateXAngle(self): r""" - calculateRotateXAngle(Transform3D self) -> double - double Transform3D::calculateRotateXAngle() const + calculateRotateXAngle(RotMatrix self) -> double + double RotMatrix::calculateRotateXAngle() const Calculates the rotation angle for a rotation around the x-axis alone Only meaningfull if the actual rotation is around the x-axis """ - return _libBornAgainBase.Transform3D_calculateRotateXAngle(self) + return _libBornAgainBase.RotMatrix_calculateRotateXAngle(self) def calculateRotateYAngle(self): r""" - calculateRotateYAngle(Transform3D self) -> double - double Transform3D::calculateRotateYAngle() const + calculateRotateYAngle(RotMatrix self) -> double + double RotMatrix::calculateRotateYAngle() const Calculates the rotation angle for a rotation around the y-axis alone Only meaningfull if the actual rotation is around the y-axis """ - return _libBornAgainBase.Transform3D_calculateRotateYAngle(self) + return _libBornAgainBase.RotMatrix_calculateRotateYAngle(self) def calculateRotateZAngle(self): r""" - calculateRotateZAngle(Transform3D self) -> double - double Transform3D::calculateRotateZAngle() const + calculateRotateZAngle(RotMatrix self) -> double + double RotMatrix::calculateRotateZAngle() const Calculates the rotation angle for a rotation around the z-axis alone Only meaningfull if the actual rotation is around the z-axis """ - return _libBornAgainBase.Transform3D_calculateRotateZAngle(self) + return _libBornAgainBase.RotMatrix_calculateRotateZAngle(self) def getInverse(self): r""" - getInverse(Transform3D self) -> Transform3D - Transform3D Transform3D::getInverse() const + getInverse(RotMatrix self) -> RotMatrix + RotMatrix RotMatrix::getInverse() const Returns the inverse transformation. """ - return _libBornAgainBase.Transform3D_getInverse(self) + return _libBornAgainBase.RotMatrix_getInverse(self) def __mul__(self, other): - r"""__mul__(Transform3D self, Transform3D other) -> Transform3D""" - return _libBornAgainBase.Transform3D___mul__(self, other) + r"""__mul__(RotMatrix self, RotMatrix other) -> RotMatrix""" + return _libBornAgainBase.RotMatrix___mul__(self, other) def __eq__(self, other): - r"""__eq__(Transform3D self, Transform3D other) -> bool""" - return _libBornAgainBase.Transform3D___eq__(self, other) + r"""__eq__(RotMatrix self, RotMatrix other) -> bool""" + return _libBornAgainBase.RotMatrix___eq__(self, other) def getRotationType(self): r""" - getRotationType(Transform3D self) -> Transform3D::ERotationType - Transform3D::ERotationType Transform3D::getRotationType() const + getRotationType(RotMatrix self) -> RotMatrix::ERotationType + RotMatrix::ERotationType RotMatrix::getRotationType() const Retrieve the rotation type (general, around x, y or z-axis) """ - return _libBornAgainBase.Transform3D_getRotationType(self) + return _libBornAgainBase.RotMatrix_getRotationType(self) def isIdentity(self): r""" - isIdentity(Transform3D self) -> bool - bool Transform3D::isIdentity() const + isIdentity(RotMatrix self) -> bool + bool RotMatrix::isIdentity() const Determine if the transformation is trivial (identity) """ - return _libBornAgainBase.Transform3D_isIdentity(self) + return _libBornAgainBase.RotMatrix_isIdentity(self) def _print(self, ostr): r""" - _print(Transform3D self, std::ostream & ostr) - void Transform3D::print(std::ostream &ostr) const + _print(RotMatrix self, std::ostream & ostr) + void RotMatrix::print(std::ostream &ostr) const """ - return _libBornAgainBase.Transform3D__print(self, ostr) + return _libBornAgainBase.RotMatrix__print(self, ostr) def isXRotation(self): r""" - isXRotation(Transform3D self) -> bool - bool Transform3D::isXRotation() const + isXRotation(RotMatrix self) -> bool + bool RotMatrix::isXRotation() const """ - return _libBornAgainBase.Transform3D_isXRotation(self) + return _libBornAgainBase.RotMatrix_isXRotation(self) def isYRotation(self): r""" - isYRotation(Transform3D self) -> bool - bool Transform3D::isYRotation() const + isYRotation(RotMatrix self) -> bool + bool RotMatrix::isYRotation() const """ - return _libBornAgainBase.Transform3D_isYRotation(self) + return _libBornAgainBase.RotMatrix_isYRotation(self) def isZRotation(self): r""" - isZRotation(Transform3D self) -> bool - bool Transform3D::isZRotation() const + isZRotation(RotMatrix self) -> bool + bool RotMatrix::isZRotation() const """ - return _libBornAgainBase.Transform3D_isZRotation(self) + return _libBornAgainBase.RotMatrix_isZRotation(self) -# Register Transform3D in _libBornAgainBase: -_libBornAgainBase.Transform3D_swigregister(Transform3D) +# Register RotMatrix in _libBornAgainBase: +_libBornAgainBase.RotMatrix_swigregister(RotMatrix) -def Transform3D_createRotateX(phi): - r"""Transform3D_createRotateX(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateX(phi) +def RotMatrix_createRotateX(phi): + r"""RotMatrix_createRotateX(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateX(phi) -def Transform3D_createRotateY(phi): - r"""Transform3D_createRotateY(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateY(phi) +def RotMatrix_createRotateY(phi): + r"""RotMatrix_createRotateY(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateY(phi) -def Transform3D_createRotateZ(phi): - r"""Transform3D_createRotateZ(double phi) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateZ(phi) +def RotMatrix_createRotateZ(phi): + r"""RotMatrix_createRotateZ(double phi) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateZ(phi) -def Transform3D_createRotateEuler(alpha, beta, gamma): - r"""Transform3D_createRotateEuler(double alpha, double beta, double gamma) -> Transform3D""" - return _libBornAgainBase.Transform3D_createRotateEuler(alpha, beta, gamma) +def RotMatrix_createRotateEuler(alpha, beta, gamma): + r"""RotMatrix_createRotateEuler(double alpha, double beta, double gamma) -> RotMatrix""" + return _libBornAgainBase.RotMatrix_createRotateEuler(alpha, beta, gamma) class Bin1D(object): r"""Proxy of C++ Bin1D class.""" diff --git a/auto/Wrap/libBornAgainBase_wrap.cpp b/auto/Wrap/libBornAgainBase_wrap.cpp index b4d1acfa18494306daa7c063b114c0e432e0ff0a..50212a9143d888aa062b57815f31b34a1474364e 100644 --- a/auto/Wrap/libBornAgainBase_wrap.cpp +++ b/auto/Wrap/libBornAgainBase_wrap.cpp @@ -3106,8 +3106,8 @@ namespace Swig { #define SWIGTYPE_p_FixedBinAxis swig_types[6] #define SWIGTYPE_p_IAxis swig_types[7] #define SWIGTYPE_p_ICloneable swig_types[8] -#define SWIGTYPE_p_ThreadInfo swig_types[9] -#define SWIGTYPE_p_Transform3D swig_types[10] +#define SWIGTYPE_p_RotMatrix swig_types[9] +#define SWIGTYPE_p_ThreadInfo swig_types[10] #define SWIGTYPE_p_VariableBinAxis swig_types[11] #define SWIGTYPE_p_Vec3T_double_t swig_types[12] #define SWIGTYPE_p_Vec3T_int_t swig_types[13] @@ -6921,7 +6921,7 @@ SWIGINTERN void std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_ #include "Base/Axis/CustomBinAxis.h" #include "Base/Axis/FixedBinAxis.h" #include "Base/Axis/VariableBinAxis.h" -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" SWIGINTERN int @@ -27105,33 +27105,33 @@ SWIGINTERN PyObject *Direction_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_new_Transform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_new_RotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *result = 0 ; + RotMatrix *result = 0 ; - if (!SWIG_Python_UnpackTuple(args, "new_Transform3D", 0, 0, 0)) SWIG_fail; - result = (Transform3D *)new Transform3D(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Transform3D, SWIG_POINTER_NEW | 0 ); + if (!SWIG_Python_UnpackTuple(args, "new_RotMatrix", 0, 0, 0)) SWIG_fail; + result = (RotMatrix *)new RotMatrix(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_RotMatrix, SWIG_POINTER_NEW | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_delete_Transform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_delete_RotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, SWIG_POINTER_DISOWN | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, SWIG_POINTER_DISOWN | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_Transform3D" "', argument " "1"" of type '" "Transform3D *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_RotMatrix" "', argument " "1"" of type '" "RotMatrix *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); + arg1 = reinterpret_cast< RotMatrix * >(argp1); delete arg1; resultobj = SWIG_Py_Void(); return resultobj; @@ -27140,99 +27140,99 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D *result = 0 ; + RotMatrix *result = 0 ; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_clone" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_clone" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (Transform3D *)((Transform3D const *)arg1)->clone(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Transform3D, 0 | 0 ); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (RotMatrix *)((RotMatrix const *)arg1)->clone(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_RotMatrix, 0 | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D_createRotateX(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_createRotateX(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; double arg1 ; double val1 ; int ecode1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "Transform3D_createRotateX" "', argument " "1"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "RotMatrix_createRotateX" "', argument " "1"" of type '" "double""'"); } arg1 = static_cast< double >(val1); - result = Transform3D::createRotateX(arg1); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = RotMatrix::createRotateX(arg1); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D_createRotateY(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_createRotateY(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; double arg1 ; double val1 ; int ecode1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "Transform3D_createRotateY" "', argument " "1"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "RotMatrix_createRotateY" "', argument " "1"" of type '" "double""'"); } arg1 = static_cast< double >(val1); - result = Transform3D::createRotateY(arg1); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = RotMatrix::createRotateY(arg1); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D_createRotateZ(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_createRotateZ(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; double arg1 ; double val1 ; int ecode1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "Transform3D_createRotateZ" "', argument " "1"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "RotMatrix_createRotateZ" "', argument " "1"" of type '" "double""'"); } arg1 = static_cast< double >(val1); - result = Transform3D::createRotateZ(arg1); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = RotMatrix::createRotateZ(arg1); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D_createRotateEuler(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_createRotateEuler(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; double arg1 ; double arg2 ; @@ -27244,35 +27244,35 @@ SWIGINTERN PyObject *_wrap_Transform3D_createRotateEuler(PyObject *SWIGUNUSEDPAR double val3 ; int ecode3 = 0 ; PyObject *swig_obj[3] ; - Transform3D result; + RotMatrix result; - if (!SWIG_Python_UnpackTuple(args, "Transform3D_createRotateEuler", 3, 3, swig_obj)) SWIG_fail; + if (!SWIG_Python_UnpackTuple(args, "RotMatrix_createRotateEuler", 3, 3, swig_obj)) SWIG_fail; ecode1 = SWIG_AsVal_double(swig_obj[0], &val1); if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "Transform3D_createRotateEuler" "', argument " "1"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "RotMatrix_createRotateEuler" "', argument " "1"" of type '" "double""'"); } arg1 = static_cast< double >(val1); ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "Transform3D_createRotateEuler" "', argument " "2"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "RotMatrix_createRotateEuler" "', argument " "2"" of type '" "double""'"); } arg2 = static_cast< double >(val2); ecode3 = SWIG_AsVal_double(swig_obj[2], &val3); if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "Transform3D_createRotateEuler" "', argument " "3"" of type '" "double""'"); + SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "RotMatrix_createRotateEuler" "', argument " "3"" of type '" "double""'"); } arg3 = static_cast< double >(val3); - result = Transform3D::createRotateEuler(arg1,arg2,arg3); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = RotMatrix::createRotateEuler(arg1,arg2,arg3); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D_calculateEulerAngles(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_calculateEulerAngles(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; double *arg2 = (double *) 0 ; double *arg3 = (double *) 0 ; double *arg4 = (double *) 0 ; @@ -27286,28 +27286,28 @@ SWIGINTERN PyObject *_wrap_Transform3D_calculateEulerAngles(PyObject *SWIGUNUSED int res4 = 0 ; PyObject *swig_obj[4] ; - if (!SWIG_Python_UnpackTuple(args, "Transform3D_calculateEulerAngles", 4, 4, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "RotMatrix_calculateEulerAngles", 4, 4, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_calculateEulerAngles" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_calculateEulerAngles" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); + arg1 = reinterpret_cast< RotMatrix * >(argp1); res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_double, 0 | 0 ); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Transform3D_calculateEulerAngles" "', argument " "2"" of type '" "double *""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RotMatrix_calculateEulerAngles" "', argument " "2"" of type '" "double *""'"); } arg2 = reinterpret_cast< double * >(argp2); res3 = SWIG_ConvertPtr(swig_obj[2], &argp3,SWIGTYPE_p_double, 0 | 0 ); if (!SWIG_IsOK(res3)) { - SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "Transform3D_calculateEulerAngles" "', argument " "3"" of type '" "double *""'"); + SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "RotMatrix_calculateEulerAngles" "', argument " "3"" of type '" "double *""'"); } arg3 = reinterpret_cast< double * >(argp3); res4 = SWIG_ConvertPtr(swig_obj[3], &argp4,SWIGTYPE_p_double, 0 | 0 ); if (!SWIG_IsOK(res4)) { - SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "Transform3D_calculateEulerAngles" "', argument " "4"" of type '" "double *""'"); + SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "RotMatrix_calculateEulerAngles" "', argument " "4"" of type '" "double *""'"); } arg4 = reinterpret_cast< double * >(argp4); - ((Transform3D const *)arg1)->calculateEulerAngles(arg2,arg3,arg4); + ((RotMatrix const *)arg1)->calculateEulerAngles(arg2,arg3,arg4); resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -27315,9 +27315,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateXAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_calculateRotateXAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27325,12 +27325,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateXAngle(PyObject *SWIGUNUSE if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_calculateRotateXAngle" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_calculateRotateXAngle" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (double)((Transform3D const *)arg1)->calculateRotateXAngle(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (double)((RotMatrix const *)arg1)->calculateRotateXAngle(); resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: @@ -27338,9 +27338,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateYAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_calculateRotateYAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27348,12 +27348,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateYAngle(PyObject *SWIGUNUSE if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_calculateRotateYAngle" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_calculateRotateYAngle" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (double)((Transform3D const *)arg1)->calculateRotateYAngle(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (double)((RotMatrix const *)arg1)->calculateRotateYAngle(); resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: @@ -27361,9 +27361,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateZAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_calculateRotateZAngle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27371,12 +27371,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_calculateRotateZAngle(PyObject *SWIGUNUSE if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_calculateRotateZAngle" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_calculateRotateZAngle" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (double)((Transform3D const *)arg1)->calculateRotateZAngle(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (double)((RotMatrix const *)arg1)->calculateRotateZAngle(); resultobj = SWIG_From_double(static_cast< double >(result)); return resultobj; fail: @@ -27384,56 +27384,56 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_getInverse(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_getInverse(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_getInverse" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_getInverse" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = ((Transform3D const *)arg1)->getInverse(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = ((RotMatrix const *)arg1)->getInverse(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_Transform3D___mul__(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix___mul__(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; - Transform3D *arg2 = 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; + RotMatrix *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; int res2 = 0 ; PyObject *swig_obj[2] ; - Transform3D result; + RotMatrix result; - if (!SWIG_Python_UnpackTuple(args, "Transform3D___mul__", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "RotMatrix___mul__", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D___mul__" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix___mul__" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Transform3D, 0 | 0); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_RotMatrix, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Transform3D___mul__" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RotMatrix___mul__" "', argument " "2"" of type '" "RotMatrix const &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Transform3D___mul__" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RotMatrix___mul__" "', argument " "2"" of type '" "RotMatrix const &""'"); } - arg2 = reinterpret_cast< Transform3D * >(argp2); - result = ((Transform3D const *)arg1)->operator *((Transform3D const &)*arg2); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + arg2 = reinterpret_cast< RotMatrix * >(argp2); + result = ((RotMatrix const *)arg1)->operator *((RotMatrix const &)*arg2); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: PyErr_Clear(); @@ -27442,10 +27442,10 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D___eq__(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix___eq__(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; - Transform3D *arg2 = 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; + RotMatrix *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; @@ -27453,21 +27453,21 @@ SWIGINTERN PyObject *_wrap_Transform3D___eq__(PyObject *SWIGUNUSEDPARM(self), Py PyObject *swig_obj[2] ; bool result; - if (!SWIG_Python_UnpackTuple(args, "Transform3D___eq__", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "RotMatrix___eq__", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D___eq__" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix___eq__" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Transform3D, 0 | 0); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_RotMatrix, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Transform3D___eq__" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RotMatrix___eq__" "', argument " "2"" of type '" "RotMatrix const &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Transform3D___eq__" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RotMatrix___eq__" "', argument " "2"" of type '" "RotMatrix const &""'"); } - arg2 = reinterpret_cast< Transform3D * >(argp2); - result = (bool)((Transform3D const *)arg1)->operator ==((Transform3D const &)*arg2); + arg2 = reinterpret_cast< RotMatrix * >(argp2); + result = (bool)((RotMatrix const *)arg1)->operator ==((RotMatrix const &)*arg2); resultobj = SWIG_From_bool(static_cast< bool >(result)); return resultobj; fail: @@ -27477,22 +27477,22 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_getRotationType(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_getRotationType(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D::ERotationType result; + RotMatrix::ERotationType result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_getRotationType" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_getRotationType" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (Transform3D::ERotationType)((Transform3D const *)arg1)->getRotationType(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (RotMatrix::ERotationType)((RotMatrix const *)arg1)->getRotationType(); resultobj = SWIG_From_int(static_cast< int >(result)); return resultobj; fail: @@ -27500,9 +27500,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_isIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_isIdentity(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27510,12 +27510,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_isIdentity(PyObject *SWIGUNUSEDPARM(self) if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_isIdentity" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_isIdentity" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (bool)((Transform3D const *)arg1)->isIdentity(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (bool)((RotMatrix const *)arg1)->isIdentity(); resultobj = SWIG_From_bool(static_cast< bool >(result)); return resultobj; fail: @@ -27523,9 +27523,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D__print(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix__print(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; std::ostream *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; @@ -27533,21 +27533,21 @@ SWIGINTERN PyObject *_wrap_Transform3D__print(PyObject *SWIGUNUSEDPARM(self), Py int res2 = 0 ; PyObject *swig_obj[2] ; - if (!SWIG_Python_UnpackTuple(args, "Transform3D__print", 2, 2, swig_obj)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + if (!SWIG_Python_UnpackTuple(args, "RotMatrix__print", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D__print" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix__print" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); + arg1 = reinterpret_cast< RotMatrix * >(argp1); res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_std__ostream, 0 ); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Transform3D__print" "', argument " "2"" of type '" "std::ostream &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "RotMatrix__print" "', argument " "2"" of type '" "std::ostream &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Transform3D__print" "', argument " "2"" of type '" "std::ostream &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "RotMatrix__print" "', argument " "2"" of type '" "std::ostream &""'"); } arg2 = reinterpret_cast< std::ostream * >(argp2); - ((Transform3D const *)arg1)->print(*arg2); + ((RotMatrix const *)arg1)->print(*arg2); resultobj = SWIG_Py_Void(); return resultobj; fail: @@ -27555,9 +27555,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_isXRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_isXRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27565,12 +27565,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_isXRotation(PyObject *SWIGUNUSEDPARM(self if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_isXRotation" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_isXRotation" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (bool)((Transform3D const *)arg1)->isXRotation(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (bool)((RotMatrix const *)arg1)->isXRotation(); resultobj = SWIG_From_bool(static_cast< bool >(result)); return resultobj; fail: @@ -27578,9 +27578,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_isYRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_isYRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27588,12 +27588,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_isYRotation(PyObject *SWIGUNUSEDPARM(self if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_isYRotation" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_isYRotation" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (bool)((Transform3D const *)arg1)->isYRotation(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (bool)((RotMatrix const *)arg1)->isYRotation(); resultobj = SWIG_From_bool(static_cast< bool >(result)); return resultobj; fail: @@ -27601,9 +27601,9 @@ fail: } -SWIGINTERN PyObject *_wrap_Transform3D_isZRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotMatrix_isZRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = (Transform3D *) 0 ; + RotMatrix *arg1 = (RotMatrix *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -27611,12 +27611,12 @@ SWIGINTERN PyObject *_wrap_Transform3D_isZRotation(PyObject *SWIGUNUSEDPARM(self if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Transform3D, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotMatrix, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Transform3D_isZRotation" "', argument " "1"" of type '" "Transform3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotMatrix_isZRotation" "', argument " "1"" of type '" "RotMatrix const *""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (bool)((Transform3D const *)arg1)->isZRotation(); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (bool)((RotMatrix const *)arg1)->isZRotation(); resultobj = SWIG_From_bool(static_cast< bool >(result)); return resultobj; fail: @@ -27624,14 +27624,14 @@ fail: } -SWIGINTERN PyObject *Transform3D_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *RotMatrix_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_Transform3D, SWIG_NewClientData(obj)); + SWIG_TypeNewClientData(SWIGTYPE_p_RotMatrix, SWIG_NewClientData(obj)); return SWIG_Py_Void(); } -SWIGINTERN PyObject *Transform3D_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *RotMatrix_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { return SWIG_Python_InitShadowInstance(args); } @@ -36059,104 +36059,104 @@ static PyMethodDef SwigMethods[] = { { "delete_Direction", _wrap_delete_Direction, METH_O, "delete_Direction(Direction self)"}, { "Direction_swigregister", Direction_swigregister, METH_O, NULL}, { "Direction_swiginit", Direction_swiginit, METH_VARARGS, NULL}, - { "new_Transform3D", _wrap_new_Transform3D, METH_NOARGS, "\n" - "new_Transform3D() -> Transform3D\n" - "Transform3D::Transform3D(Eigen::Matrix3d matrix)\n" + { "new_RotMatrix", _wrap_new_RotMatrix, METH_NOARGS, "\n" + "new_RotMatrix() -> RotMatrix\n" + "RotMatrix::RotMatrix(Eigen::Matrix3d matrix)\n" "\n" "Constructor from matrix (no checks if this is an element of SO(3)!) \n" "\n" ""}, - { "delete_Transform3D", _wrap_delete_Transform3D, METH_O, "\n" - "delete_Transform3D(Transform3D self)\n" - "Transform3D::~Transform3D()=default\n" + { "delete_RotMatrix", _wrap_delete_RotMatrix, METH_O, "\n" + "delete_RotMatrix(RotMatrix self)\n" + "RotMatrix::~RotMatrix()=default\n" "\n" "Destructor. \n" "\n" ""}, - { "Transform3D_clone", _wrap_Transform3D_clone, METH_O, "\n" - "Transform3D_clone(Transform3D self) -> Transform3D\n" - "Transform3D * Transform3D::clone() const\n" + { "RotMatrix_clone", _wrap_RotMatrix_clone, METH_O, "\n" + "RotMatrix_clone(RotMatrix self) -> RotMatrix\n" + "RotMatrix * RotMatrix::clone() const\n" "\n" "Clones the transformation. \n" "\n" ""}, - { "Transform3D_createRotateX", _wrap_Transform3D_createRotateX, METH_O, "Transform3D_createRotateX(double phi) -> Transform3D"}, - { "Transform3D_createRotateY", _wrap_Transform3D_createRotateY, METH_O, "Transform3D_createRotateY(double phi) -> Transform3D"}, - { "Transform3D_createRotateZ", _wrap_Transform3D_createRotateZ, METH_O, "Transform3D_createRotateZ(double phi) -> Transform3D"}, - { "Transform3D_createRotateEuler", _wrap_Transform3D_createRotateEuler, METH_VARARGS, "Transform3D_createRotateEuler(double alpha, double beta, double gamma) -> Transform3D"}, - { "Transform3D_calculateEulerAngles", _wrap_Transform3D_calculateEulerAngles, METH_VARARGS, "\n" - "Transform3D_calculateEulerAngles(Transform3D self, double * p_alpha, double * p_beta, double * p_gamma)\n" - "void Transform3D::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const\n" + { "RotMatrix_createRotateX", _wrap_RotMatrix_createRotateX, METH_O, "RotMatrix_createRotateX(double phi) -> RotMatrix"}, + { "RotMatrix_createRotateY", _wrap_RotMatrix_createRotateY, METH_O, "RotMatrix_createRotateY(double phi) -> RotMatrix"}, + { "RotMatrix_createRotateZ", _wrap_RotMatrix_createRotateZ, METH_O, "RotMatrix_createRotateZ(double phi) -> RotMatrix"}, + { "RotMatrix_createRotateEuler", _wrap_RotMatrix_createRotateEuler, METH_VARARGS, "RotMatrix_createRotateEuler(double alpha, double beta, double gamma) -> RotMatrix"}, + { "RotMatrix_calculateEulerAngles", _wrap_RotMatrix_calculateEulerAngles, METH_VARARGS, "\n" + "RotMatrix_calculateEulerAngles(RotMatrix self, double * p_alpha, double * p_beta, double * p_gamma)\n" + "void RotMatrix::calculateEulerAngles(double *p_alpha, double *p_beta, double *p_gamma) const\n" "\n" "Calculates the Euler angles corresponding to the rotation. \n" "\n" ""}, - { "Transform3D_calculateRotateXAngle", _wrap_Transform3D_calculateRotateXAngle, METH_O, "\n" - "Transform3D_calculateRotateXAngle(Transform3D self) -> double\n" - "double Transform3D::calculateRotateXAngle() const\n" + { "RotMatrix_calculateRotateXAngle", _wrap_RotMatrix_calculateRotateXAngle, METH_O, "\n" + "RotMatrix_calculateRotateXAngle(RotMatrix self) -> double\n" + "double RotMatrix::calculateRotateXAngle() const\n" "\n" "Calculates the rotation angle for a rotation around the x-axis alone Only meaningfull if the actual rotation is around the x-axis \n" "\n" ""}, - { "Transform3D_calculateRotateYAngle", _wrap_Transform3D_calculateRotateYAngle, METH_O, "\n" - "Transform3D_calculateRotateYAngle(Transform3D self) -> double\n" - "double Transform3D::calculateRotateYAngle() const\n" + { "RotMatrix_calculateRotateYAngle", _wrap_RotMatrix_calculateRotateYAngle, METH_O, "\n" + "RotMatrix_calculateRotateYAngle(RotMatrix self) -> double\n" + "double RotMatrix::calculateRotateYAngle() const\n" "\n" "Calculates the rotation angle for a rotation around the y-axis alone Only meaningfull if the actual rotation is around the y-axis \n" "\n" ""}, - { "Transform3D_calculateRotateZAngle", _wrap_Transform3D_calculateRotateZAngle, METH_O, "\n" - "Transform3D_calculateRotateZAngle(Transform3D self) -> double\n" - "double Transform3D::calculateRotateZAngle() const\n" + { "RotMatrix_calculateRotateZAngle", _wrap_RotMatrix_calculateRotateZAngle, METH_O, "\n" + "RotMatrix_calculateRotateZAngle(RotMatrix self) -> double\n" + "double RotMatrix::calculateRotateZAngle() const\n" "\n" "Calculates the rotation angle for a rotation around the z-axis alone Only meaningfull if the actual rotation is around the z-axis \n" "\n" ""}, - { "Transform3D_getInverse", _wrap_Transform3D_getInverse, METH_O, "\n" - "Transform3D_getInverse(Transform3D self) -> Transform3D\n" - "Transform3D Transform3D::getInverse() const\n" + { "RotMatrix_getInverse", _wrap_RotMatrix_getInverse, METH_O, "\n" + "RotMatrix_getInverse(RotMatrix self) -> RotMatrix\n" + "RotMatrix RotMatrix::getInverse() const\n" "\n" "Returns the inverse transformation. \n" "\n" ""}, - { "Transform3D___mul__", _wrap_Transform3D___mul__, METH_VARARGS, "Transform3D___mul__(Transform3D self, Transform3D other) -> Transform3D"}, - { "Transform3D___eq__", _wrap_Transform3D___eq__, METH_VARARGS, "Transform3D___eq__(Transform3D self, Transform3D other) -> bool"}, - { "Transform3D_getRotationType", _wrap_Transform3D_getRotationType, METH_O, "\n" - "Transform3D_getRotationType(Transform3D self) -> Transform3D::ERotationType\n" - "Transform3D::ERotationType Transform3D::getRotationType() const\n" + { "RotMatrix___mul__", _wrap_RotMatrix___mul__, METH_VARARGS, "RotMatrix___mul__(RotMatrix self, RotMatrix other) -> RotMatrix"}, + { "RotMatrix___eq__", _wrap_RotMatrix___eq__, METH_VARARGS, "RotMatrix___eq__(RotMatrix self, RotMatrix other) -> bool"}, + { "RotMatrix_getRotationType", _wrap_RotMatrix_getRotationType, METH_O, "\n" + "RotMatrix_getRotationType(RotMatrix self) -> RotMatrix::ERotationType\n" + "RotMatrix::ERotationType RotMatrix::getRotationType() const\n" "\n" "Retrieve the rotation type (general, around x, y or z-axis) \n" "\n" ""}, - { "Transform3D_isIdentity", _wrap_Transform3D_isIdentity, METH_O, "\n" - "Transform3D_isIdentity(Transform3D self) -> bool\n" - "bool Transform3D::isIdentity() const\n" + { "RotMatrix_isIdentity", _wrap_RotMatrix_isIdentity, METH_O, "\n" + "RotMatrix_isIdentity(RotMatrix self) -> bool\n" + "bool RotMatrix::isIdentity() const\n" "\n" "Determine if the transformation is trivial (identity) \n" "\n" ""}, - { "Transform3D__print", _wrap_Transform3D__print, METH_VARARGS, "\n" - "Transform3D__print(Transform3D self, std::ostream & ostr)\n" - "void Transform3D::print(std::ostream &ostr) const\n" + { "RotMatrix__print", _wrap_RotMatrix__print, METH_VARARGS, "\n" + "RotMatrix__print(RotMatrix self, std::ostream & ostr)\n" + "void RotMatrix::print(std::ostream &ostr) const\n" "\n" ""}, - { "Transform3D_isXRotation", _wrap_Transform3D_isXRotation, METH_O, "\n" - "Transform3D_isXRotation(Transform3D self) -> bool\n" - "bool Transform3D::isXRotation() const\n" + { "RotMatrix_isXRotation", _wrap_RotMatrix_isXRotation, METH_O, "\n" + "RotMatrix_isXRotation(RotMatrix self) -> bool\n" + "bool RotMatrix::isXRotation() const\n" "\n" ""}, - { "Transform3D_isYRotation", _wrap_Transform3D_isYRotation, METH_O, "\n" - "Transform3D_isYRotation(Transform3D self) -> bool\n" - "bool Transform3D::isYRotation() const\n" + { "RotMatrix_isYRotation", _wrap_RotMatrix_isYRotation, METH_O, "\n" + "RotMatrix_isYRotation(RotMatrix self) -> bool\n" + "bool RotMatrix::isYRotation() const\n" "\n" ""}, - { "Transform3D_isZRotation", _wrap_Transform3D_isZRotation, METH_O, "\n" - "Transform3D_isZRotation(Transform3D self) -> bool\n" - "bool Transform3D::isZRotation() const\n" + { "RotMatrix_isZRotation", _wrap_RotMatrix_isZRotation, METH_O, "\n" + "RotMatrix_isZRotation(RotMatrix self) -> bool\n" + "bool RotMatrix::isZRotation() const\n" "\n" ""}, - { "Transform3D_swigregister", Transform3D_swigregister, METH_O, NULL}, - { "Transform3D_swiginit", Transform3D_swiginit, METH_VARARGS, NULL}, + { "RotMatrix_swigregister", RotMatrix_swigregister, METH_O, NULL}, + { "RotMatrix_swiginit", RotMatrix_swiginit, METH_VARARGS, NULL}, { "new_Bin1D", _wrap_new_Bin1D, METH_VARARGS, "\n" "Bin1D()\n" "new_Bin1D(double lower, double upper) -> Bin1D\n" @@ -36844,8 +36844,8 @@ static swig_type_info _swigt__p_Direction = {"_p_Direction", "Direction *", 0, 0 static swig_type_info _swigt__p_FixedBinAxis = {"_p_FixedBinAxis", "FixedBinAxis *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IAxis = {"_p_IAxis", "IAxis *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ICloneable = {"_p_ICloneable", "ICloneable *", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_RotMatrix = {"_p_RotMatrix", "RotMatrix *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ThreadInfo = {"_p_ThreadInfo", "ThreadInfo *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_Transform3D = {"_p_Transform3D", "Transform3D *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_VariableBinAxis = {"_p_VariableBinAxis", "VariableBinAxis *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_Vec3T_double_t = {"_p_Vec3T_double_t", "std::vector< Vec3< double > >::value_type *|R3 *|Vec3< double > *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_Vec3T_int_t = {"_p_Vec3T_int_t", "I3 *|Vec3< int > *", 0, 0, (void*)0, 0}; @@ -36910,8 +36910,8 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_FixedBinAxis, &_swigt__p_IAxis, &_swigt__p_ICloneable, + &_swigt__p_RotMatrix, &_swigt__p_ThreadInfo, - &_swigt__p_Transform3D, &_swigt__p_VariableBinAxis, &_swigt__p_Vec3T_double_t, &_swigt__p_Vec3T_int_t, @@ -36976,8 +36976,8 @@ static swig_cast_info _swigc__p_Direction[] = { {&_swigt__p_Direction, 0, 0, 0} static swig_cast_info _swigc__p_FixedBinAxis[] = { {&_swigt__p_FixedBinAxis, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IAxis[] = { {&_swigt__p_IAxis, 0, 0, 0}, {&_swigt__p_VariableBinAxis, _p_VariableBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_ConstKBinAxis, _p_ConstKBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_CustomBinAxis, _p_CustomBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_FixedBinAxis, _p_FixedBinAxisTo_p_IAxis, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ICloneable[] = { {&_swigt__p_ICloneable, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_RotMatrix[] = { {&_swigt__p_RotMatrix, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ThreadInfo[] = { {&_swigt__p_ThreadInfo, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_Transform3D[] = { {&_swigt__p_Transform3D, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_VariableBinAxis[] = { {&_swigt__p_VariableBinAxis, 0, 0, 0}, {&_swigt__p_ConstKBinAxis, _p_ConstKBinAxisTo_p_VariableBinAxis, 0, 0}, {&_swigt__p_CustomBinAxis, _p_CustomBinAxisTo_p_VariableBinAxis, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_Vec3T_double_t[] = { {&_swigt__p_Vec3T_double_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_Vec3T_int_t[] = { {&_swigt__p_Vec3T_int_t, 0, 0, 0},{0, 0, 0, 0}}; @@ -37042,8 +37042,8 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_FixedBinAxis, _swigc__p_IAxis, _swigc__p_ICloneable, + _swigc__p_RotMatrix, _swigc__p_ThreadInfo, - _swigc__p_Transform3D, _swigc__p_VariableBinAxis, _swigc__p_Vec3T_double_t, _swigc__p_Vec3T_int_t, @@ -37862,10 +37862,10 @@ SWIG_init(void) { SWIG_addvarlink(globals, "deg", Swig_var_deg_get, Swig_var_deg_set); SWIG_addvarlink(globals, "tesla", Swig_var_tesla_get, Swig_var_tesla_set); SWIG_addvarlink(globals, "gauss", Swig_var_gauss_get, Swig_var_gauss_set); - SWIG_Python_SetConstant(d, "Transform3D_EULER",SWIG_From_int(static_cast< int >(Transform3D::EULER))); - SWIG_Python_SetConstant(d, "Transform3D_XAXIS",SWIG_From_int(static_cast< int >(Transform3D::XAXIS))); - SWIG_Python_SetConstant(d, "Transform3D_YAXIS",SWIG_From_int(static_cast< int >(Transform3D::YAXIS))); - SWIG_Python_SetConstant(d, "Transform3D_ZAXIS",SWIG_From_int(static_cast< int >(Transform3D::ZAXIS))); + SWIG_Python_SetConstant(d, "RotMatrix_EULER",SWIG_From_int(static_cast< int >(RotMatrix::EULER))); + SWIG_Python_SetConstant(d, "RotMatrix_XAXIS",SWIG_From_int(static_cast< int >(RotMatrix::XAXIS))); + SWIG_Python_SetConstant(d, "RotMatrix_YAXIS",SWIG_From_int(static_cast< int >(RotMatrix::YAXIS))); + SWIG_Python_SetConstant(d, "RotMatrix_ZAXIS",SWIG_From_int(static_cast< int >(RotMatrix::ZAXIS))); #if PY_VERSION_HEX >= 0x03000000 return m; #else diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index 4978a1142b973eef2cc12a9ea1c32c8792011a31..51c04b8353f336e15231acb5869fa8d47a80362d 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -3088,8 +3088,8 @@ class Material(object): def rotatedMaterial(self, transform): r""" - rotatedMaterial(Material self, Transform3D transform) -> Material - Material Material::rotatedMaterial(const Transform3D &transform) const + rotatedMaterial(Material self, RotMatrix transform) -> Material + Material Material::rotatedMaterial(const RotMatrix &transform) const """ return _libBornAgainSample.Material_rotatedMaterial(self, transform) @@ -3556,7 +3556,7 @@ class IRotation(libBornAgainBase.ICloneable, libBornAgainParam.INode): @staticmethod def createRotation(transform): - r"""createRotation(Transform3D transform) -> IRotation""" + r"""createRotation(RotMatrix transform) -> IRotation""" return _libBornAgainSample.IRotation_createRotation(transform) def clone(self): @@ -3577,15 +3577,15 @@ class IRotation(libBornAgainBase.ICloneable, libBornAgainParam.INode): """ return _libBornAgainSample.IRotation_createInverse(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(IRotation self) -> Transform3D - virtual Transform3D IRotation::getTransform3D() const =0 + getRotMatrix(IRotation self) -> RotMatrix + virtual RotMatrix IRotation::getRotMatrix() const =0 Returns transformation. """ - return _libBornAgainSample.IRotation_getTransform3D(self) + return _libBornAgainSample.IRotation_getRotMatrix(self) def transformed(self, v): r""" @@ -3618,7 +3618,7 @@ class IRotation(libBornAgainBase.ICloneable, libBornAgainParam.INode): _libBornAgainSample.IRotation_swigregister(IRotation) def IRotation_createRotation(transform): - r"""IRotation_createRotation(Transform3D transform) -> IRotation""" + r"""IRotation_createRotation(RotMatrix transform) -> IRotation""" return _libBornAgainSample.IRotation_createRotation(transform) @@ -3680,15 +3680,15 @@ class IdentityRotation(IRotation): """ return _libBornAgainSample.IdentityRotation_createInverse(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(IdentityRotation self) -> Transform3D - Transform3D IdentityRotation::getTransform3D() const override + getRotMatrix(IdentityRotation self) -> RotMatrix + RotMatrix IdentityRotation::getRotMatrix() const override Returns transformation. """ - return _libBornAgainSample.IdentityRotation_getTransform3D(self) + return _libBornAgainSample.IdentityRotation_getRotMatrix(self) def isIdentity(self): r""" @@ -3762,15 +3762,15 @@ class RotationX(IRotation): """ return _libBornAgainSample.RotationX_getAngle(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(RotationX self) -> Transform3D - Transform3D RotationX::getTransform3D() const override + getRotMatrix(RotationX self) -> RotMatrix + RotMatrix RotationX::getRotMatrix() const override Returns transformation. """ - return _libBornAgainSample.RotationX_getTransform3D(self) + return _libBornAgainSample.RotationX_getRotMatrix(self) __swig_destroy__ = _libBornAgainSample.delete_RotationX # Register RotationX in _libBornAgainSample: @@ -3834,15 +3834,15 @@ class RotationY(IRotation): """ return _libBornAgainSample.RotationY_getAngle(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(RotationY self) -> Transform3D - Transform3D RotationY::getTransform3D() const override + getRotMatrix(RotationY self) -> RotMatrix + RotMatrix RotationY::getRotMatrix() const override Returns transformation. """ - return _libBornAgainSample.RotationY_getTransform3D(self) + return _libBornAgainSample.RotationY_getRotMatrix(self) __swig_destroy__ = _libBornAgainSample.delete_RotationY # Register RotationY in _libBornAgainSample: @@ -3906,15 +3906,15 @@ class RotationZ(IRotation): """ return _libBornAgainSample.RotationZ_getAngle(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(RotationZ self) -> Transform3D - Transform3D RotationZ::getTransform3D() const override + getRotMatrix(RotationZ self) -> RotMatrix + RotMatrix RotationZ::getRotMatrix() const override Returns transformation. """ - return _libBornAgainSample.RotationZ_getTransform3D(self) + return _libBornAgainSample.RotationZ_getRotMatrix(self) __swig_destroy__ = _libBornAgainSample.delete_RotationZ # Register RotationZ in _libBornAgainSample: @@ -3994,15 +3994,15 @@ class RotationEuler(IRotation): """ return _libBornAgainSample.RotationEuler_getGamma(self) - def getTransform3D(self): + def getRotMatrix(self): r""" - getTransform3D(RotationEuler self) -> Transform3D - Transform3D RotationEuler::getTransform3D() const override + getRotMatrix(RotationEuler self) -> RotMatrix + RotMatrix RotationEuler::getRotMatrix() const override Returns transformation. """ - return _libBornAgainSample.RotationEuler_getTransform3D(self) + return _libBornAgainSample.RotationEuler_getRotMatrix(self) __swig_destroy__ = _libBornAgainSample.delete_RotationEuler # Register RotationEuler in _libBornAgainSample: @@ -4282,13 +4282,13 @@ class Crystal(ISampleNode): """ return _libBornAgainSample.Crystal_admixtures(self) - def transformedLattice(self, rotation=None): + def rotatedLattice(self, rotation=None): r""" - transformedLattice(Crystal self, IRotation rotation=None) -> Lattice3D - Lattice3D Crystal::transformedLattice(const IRotation *rotation=nullptr) const + rotatedLattice(Crystal self, IRotation rotation=None) -> Lattice3D + Lattice3D Crystal::rotatedLattice(const IRotation *rotation=nullptr) const """ - return _libBornAgainSample.Crystal_transformedLattice(self, rotation) + return _libBornAgainSample.Crystal_rotatedLattice(self, rotation) def getChildren(self): r""" @@ -11071,15 +11071,15 @@ class Lattice3D(libBornAgainParam.INode): _libBornAgainSample.Lattice3D_swiginit(self, _libBornAgainSample.new_Lattice3D(*args)) __swig_destroy__ = _libBornAgainSample.delete_Lattice3D - def transformed(self, transform): + def rotated(self, rotMatrix): r""" - transformed(Lattice3D self, Transform3D transform) -> Lattice3D - Lattice3D Lattice3D::transformed(const Transform3D &transform) const + rotated(Lattice3D self, RotMatrix rotMatrix) -> Lattice3D + Lattice3D Lattice3D::rotated(const RotMatrix &rotMatrix) const - Creates transformed lattice. + Creates rotated lattice. """ - return _libBornAgainSample.Lattice3D_transformed(self, transform) + return _libBornAgainSample.Lattice3D_rotated(self, rotMatrix) def getBasisVectorA(self): r""" diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index f74e151d65d85d39091524752a0326cbf1310c51..905f7f8ab7f9c03b94aa1522c4035da933178dc4 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -3206,18 +3206,18 @@ namespace Swig { #define SWIGTYPE_p_ParticleComposition swig_types[106] #define SWIGTYPE_p_ParticleCoreShell swig_types[107] #define SWIGTYPE_p_ParticleLayout swig_types[108] -#define SWIGTYPE_p_RotationEuler swig_types[109] -#define SWIGTYPE_p_RotationX swig_types[110] -#define SWIGTYPE_p_RotationY swig_types[111] -#define SWIGTYPE_p_RotationZ swig_types[112] -#define SWIGTYPE_p_RoughnessModelWrap swig_types[113] -#define SWIGTYPE_p_RoughnessModelWrap__RoughnessModel swig_types[114] -#define SWIGTYPE_p_SafePointerVectorT_IParticle_t swig_types[115] -#define SWIGTYPE_p_SimpleSelectionRule swig_types[116] -#define SWIGTYPE_p_SlicedParticle swig_types[117] -#define SWIGTYPE_p_SlicingEffects swig_types[118] -#define SWIGTYPE_p_SquareLattice2D swig_types[119] -#define SWIGTYPE_p_Transform3D swig_types[120] +#define SWIGTYPE_p_RotMatrix swig_types[109] +#define SWIGTYPE_p_RotationEuler swig_types[110] +#define SWIGTYPE_p_RotationX swig_types[111] +#define SWIGTYPE_p_RotationY swig_types[112] +#define SWIGTYPE_p_RotationZ swig_types[113] +#define SWIGTYPE_p_RoughnessModelWrap swig_types[114] +#define SWIGTYPE_p_RoughnessModelWrap__RoughnessModel swig_types[115] +#define SWIGTYPE_p_SafePointerVectorT_IParticle_t swig_types[116] +#define SWIGTYPE_p_SimpleSelectionRule swig_types[117] +#define SWIGTYPE_p_SlicedParticle swig_types[118] +#define SWIGTYPE_p_SlicingEffects swig_types[119] +#define SWIGTYPE_p_SquareLattice2D swig_types[120] #define SWIGTYPE_p_Vec3T_double_t swig_types[121] #define SWIGTYPE_p_Vec3T_int_t swig_types[122] #define SWIGTYPE_p_Vec3T_std__complexT_double_t_t swig_types[123] @@ -7030,7 +7030,7 @@ SWIGINTERN std::vector< std::pair< double,double > >::iterator std_vector_Sl_std SWIGINTERN std::vector< std::pair< double,double > >::iterator std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_0(std::vector< std::pair< double,double > > *self,std::vector< std::pair< double,double > >::iterator pos,std::vector< std::pair< double,double > >::value_type const &x){ return self->insert(pos, x); } SWIGINTERN void std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_1(std::vector< std::pair< double,double > > *self,std::vector< std::pair< double,double > >::iterator pos,std::vector< std::pair< double,double > >::size_type n,std::vector< std::pair< double,double > >::value_type const &x){ self->insert(pos, n, x); } -#include "Base/Vector/Transform3D.h" +#include "Base/Vector/RotMatrix.h" #include "Param/Distrib/ParameterDistribution.h" #include "Sample/Aggregate/Interference1DLattice.h" #include "Sample/Aggregate/Interference2DLattice.h" @@ -38614,7 +38614,7 @@ fail: SWIGINTERN PyObject *_wrap_Material_rotatedMaterial(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; Material *arg1 = (Material *) 0 ; - Transform3D *arg2 = 0 ; + RotMatrix *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; @@ -38628,15 +38628,15 @@ SWIGINTERN PyObject *_wrap_Material_rotatedMaterial(PyObject *SWIGUNUSEDPARM(sel SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Material_rotatedMaterial" "', argument " "1"" of type '" "Material const *""'"); } arg1 = reinterpret_cast< Material * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Transform3D, 0 | 0); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_RotMatrix, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Material_rotatedMaterial" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Material_rotatedMaterial" "', argument " "2"" of type '" "RotMatrix const &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Material_rotatedMaterial" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Material_rotatedMaterial" "', argument " "2"" of type '" "RotMatrix const &""'"); } - arg2 = reinterpret_cast< Transform3D * >(argp2); - result = ((Material const *)arg1)->rotatedMaterial((Transform3D const &)*arg2); + arg2 = reinterpret_cast< RotMatrix * >(argp2); + result = ((Material const *)arg1)->rotatedMaterial((RotMatrix const &)*arg2); resultobj = SWIG_NewPointerObj((new Material(static_cast< const Material& >(result))), SWIGTYPE_p_Material, SWIG_POINTER_OWN | 0 ); return resultobj; fail: @@ -40766,7 +40766,7 @@ SWIGINTERN PyObject *IFormFactorDecorator_swigregister(PyObject *SWIGUNUSEDPARM( SWIGINTERN PyObject *_wrap_IRotation_createRotation(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - Transform3D *arg1 = 0 ; + RotMatrix *arg1 = 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; @@ -40774,15 +40774,15 @@ SWIGINTERN PyObject *_wrap_IRotation_createRotation(PyObject *SWIGUNUSEDPARM(sel if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_Transform3D, 0 | 0); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_RotMatrix, 0 | 0); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IRotation_createRotation" "', argument " "1"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IRotation_createRotation" "', argument " "1"" of type '" "RotMatrix const &""'"); } if (!argp1) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IRotation_createRotation" "', argument " "1"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IRotation_createRotation" "', argument " "1"" of type '" "RotMatrix const &""'"); } - arg1 = reinterpret_cast< Transform3D * >(argp1); - result = (IRotation *)IRotation::createRotation((Transform3D const &)*arg1); + arg1 = reinterpret_cast< RotMatrix * >(argp1); + result = (IRotation *)IRotation::createRotation((RotMatrix const &)*arg1); resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IRotation, 0 | 0 ); return resultobj; fail: @@ -40836,23 +40836,23 @@ fail: } -SWIGINTERN PyObject *_wrap_IRotation_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IRotation_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; IRotation *arg1 = (IRotation *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IRotation, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IRotation_getTransform3D" "', argument " "1"" of type '" "IRotation const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IRotation_getRotMatrix" "', argument " "1"" of type '" "IRotation const *""'"); } arg1 = reinterpret_cast< IRotation * >(argp1); - result = ((IRotation const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((IRotation const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -41085,23 +41085,23 @@ fail: } -SWIGINTERN PyObject *_wrap_IdentityRotation_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_IdentityRotation_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; IdentityRotation *arg1 = (IdentityRotation *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IdentityRotation, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IdentityRotation_getTransform3D" "', argument " "1"" of type '" "IdentityRotation const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IdentityRotation_getRotMatrix" "', argument " "1"" of type '" "IdentityRotation const *""'"); } arg1 = reinterpret_cast< IdentityRotation * >(argp1); - result = ((IdentityRotation const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((IdentityRotation const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -41336,23 +41336,23 @@ fail: } -SWIGINTERN PyObject *_wrap_RotationX_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotationX_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; RotationX *arg1 = (RotationX *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotationX, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationX_getTransform3D" "', argument " "1"" of type '" "RotationX const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationX_getRotMatrix" "', argument " "1"" of type '" "RotationX const *""'"); } arg1 = reinterpret_cast< RotationX * >(argp1); - result = ((RotationX const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((RotationX const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -41564,23 +41564,23 @@ fail: } -SWIGINTERN PyObject *_wrap_RotationY_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotationY_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; RotationY *arg1 = (RotationY *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotationY, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationY_getTransform3D" "', argument " "1"" of type '" "RotationY const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationY_getRotMatrix" "', argument " "1"" of type '" "RotationY const *""'"); } arg1 = reinterpret_cast< RotationY * >(argp1); - result = ((RotationY const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((RotationY const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -41792,23 +41792,23 @@ fail: } -SWIGINTERN PyObject *_wrap_RotationZ_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotationZ_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; RotationZ *arg1 = (RotationZ *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotationZ, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationZ_getTransform3D" "', argument " "1"" of type '" "RotationZ const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationZ_getRotMatrix" "', argument " "1"" of type '" "RotationZ const *""'"); } arg1 = reinterpret_cast< RotationZ * >(argp1); - result = ((RotationZ const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((RotationZ const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -42094,23 +42094,23 @@ fail: } -SWIGINTERN PyObject *_wrap_RotationEuler_getTransform3D(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_RotationEuler_getRotMatrix(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; RotationEuler *arg1 = (RotationEuler *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - Transform3D result; + RotMatrix result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_RotationEuler, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationEuler_getTransform3D" "', argument " "1"" of type '" "RotationEuler const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "RotationEuler_getRotMatrix" "', argument " "1"" of type '" "RotationEuler const *""'"); } arg1 = reinterpret_cast< RotationEuler * >(argp1); - result = ((RotationEuler const *)arg1)->getTransform3D(); - resultobj = SWIG_NewPointerObj((new Transform3D(static_cast< const Transform3D& >(result))), SWIGTYPE_p_Transform3D, SWIG_POINTER_OWN | 0 ); + result = ((RotationEuler const *)arg1)->getRotMatrix(); + resultobj = SWIG_NewPointerObj((new RotMatrix(static_cast< const RotMatrix& >(result))), SWIGTYPE_p_RotMatrix, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -43104,7 +43104,7 @@ fail: } -SWIGINTERN PyObject *_wrap_Crystal_transformedLattice__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_Crystal_rotatedLattice__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; Crystal *arg1 = (Crystal *) 0 ; IRotation *arg2 = (IRotation *) 0 ; @@ -43117,15 +43117,15 @@ SWIGINTERN PyObject *_wrap_Crystal_transformedLattice__SWIG_0(PyObject *SWIGUNUS if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Crystal, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Crystal_transformedLattice" "', argument " "1"" of type '" "Crystal const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Crystal_rotatedLattice" "', argument " "1"" of type '" "Crystal const *""'"); } arg1 = reinterpret_cast< Crystal * >(argp1); res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_IRotation, 0 | 0 ); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Crystal_transformedLattice" "', argument " "2"" of type '" "IRotation const *""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Crystal_rotatedLattice" "', argument " "2"" of type '" "IRotation const *""'"); } arg2 = reinterpret_cast< IRotation * >(argp2); - result = ((Crystal const *)arg1)->transformedLattice((IRotation const *)arg2); + result = ((Crystal const *)arg1)->rotatedLattice((IRotation const *)arg2); resultobj = SWIG_NewPointerObj((new Lattice3D(static_cast< const Lattice3D& >(result))), SWIGTYPE_p_Lattice3D, SWIG_POINTER_OWN | 0 ); return resultobj; fail: @@ -43133,7 +43133,7 @@ fail: } -SWIGINTERN PyObject *_wrap_Crystal_transformedLattice__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_Crystal_rotatedLattice__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; Crystal *arg1 = (Crystal *) 0 ; void *argp1 = 0 ; @@ -43143,10 +43143,10 @@ SWIGINTERN PyObject *_wrap_Crystal_transformedLattice__SWIG_1(PyObject *SWIGUNUS if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Crystal, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Crystal_transformedLattice" "', argument " "1"" of type '" "Crystal const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Crystal_rotatedLattice" "', argument " "1"" of type '" "Crystal const *""'"); } arg1 = reinterpret_cast< Crystal * >(argp1); - result = ((Crystal const *)arg1)->transformedLattice(); + result = ((Crystal const *)arg1)->rotatedLattice(); resultobj = SWIG_NewPointerObj((new Lattice3D(static_cast< const Lattice3D& >(result))), SWIGTYPE_p_Lattice3D, SWIG_POINTER_OWN | 0 ); return resultobj; fail: @@ -43154,13 +43154,13 @@ fail: } -SWIGINTERN PyObject *_wrap_Crystal_transformedLattice(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_Crystal_rotatedLattice(PyObject *self, PyObject *args) { Py_ssize_t argc; PyObject *argv[3] = { 0 }; - if (!(argc = SWIG_Python_UnpackTuple(args, "Crystal_transformedLattice", 0, 2, argv))) SWIG_fail; + if (!(argc = SWIG_Python_UnpackTuple(args, "Crystal_rotatedLattice", 0, 2, argv))) SWIG_fail; --argc; if (argc == 1) { int _v; @@ -43168,7 +43168,7 @@ SWIGINTERN PyObject *_wrap_Crystal_transformedLattice(PyObject *self, PyObject * int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Crystal, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_Crystal_transformedLattice__SWIG_1(self, argc, argv); + return _wrap_Crystal_rotatedLattice__SWIG_1(self, argc, argv); } } if (argc == 2) { @@ -43181,16 +43181,16 @@ SWIGINTERN PyObject *_wrap_Crystal_transformedLattice(PyObject *self, PyObject * int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IRotation, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_Crystal_transformedLattice__SWIG_0(self, argc, argv); + return _wrap_Crystal_rotatedLattice__SWIG_0(self, argc, argv); } } } fail: - SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'Crystal_transformedLattice'.\n" + SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'Crystal_rotatedLattice'.\n" " Possible C/C++ prototypes are:\n" - " Crystal::transformedLattice(IRotation const *) const\n" - " Crystal::transformedLattice() const\n"); + " Crystal::rotatedLattice(IRotation const *) const\n" + " Crystal::rotatedLattice() const\n"); return 0; } @@ -65978,10 +65978,10 @@ fail: } -SWIGINTERN PyObject *_wrap_Lattice3D_transformed(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_Lattice3D_rotated(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; Lattice3D *arg1 = (Lattice3D *) 0 ; - Transform3D *arg2 = 0 ; + RotMatrix *arg2 = 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; @@ -65989,21 +65989,21 @@ SWIGINTERN PyObject *_wrap_Lattice3D_transformed(PyObject *SWIGUNUSEDPARM(self), PyObject *swig_obj[2] ; SwigValueWrapper< Lattice3D > result; - if (!SWIG_Python_UnpackTuple(args, "Lattice3D_transformed", 2, 2, swig_obj)) SWIG_fail; + if (!SWIG_Python_UnpackTuple(args, "Lattice3D_rotated", 2, 2, swig_obj)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Lattice3D, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lattice3D_transformed" "', argument " "1"" of type '" "Lattice3D const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Lattice3D_rotated" "', argument " "1"" of type '" "Lattice3D const *""'"); } arg1 = reinterpret_cast< Lattice3D * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_Transform3D, 0 | 0); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_RotMatrix, 0 | 0); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Lattice3D_transformed" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "Lattice3D_rotated" "', argument " "2"" of type '" "RotMatrix const &""'"); } if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Lattice3D_transformed" "', argument " "2"" of type '" "Transform3D const &""'"); + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "Lattice3D_rotated" "', argument " "2"" of type '" "RotMatrix const &""'"); } - arg2 = reinterpret_cast< Transform3D * >(argp2); - result = ((Lattice3D const *)arg1)->transformed((Transform3D const &)*arg2); + arg2 = reinterpret_cast< RotMatrix * >(argp2); + result = ((Lattice3D const *)arg1)->rotated((RotMatrix const &)*arg2); resultobj = SWIG_NewPointerObj((new Lattice3D(static_cast< const Lattice3D& >(result))), SWIGTYPE_p_Lattice3D, SWIG_POINTER_OWN | 0 ); return resultobj; fail: @@ -68504,8 +68504,8 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { "Material_rotatedMaterial", _wrap_Material_rotatedMaterial, METH_VARARGS, "\n" - "Material_rotatedMaterial(Material self, Transform3D transform) -> Material\n" - "Material Material::rotatedMaterial(const Transform3D &transform) const\n" + "Material_rotatedMaterial(Material self, RotMatrix transform) -> Material\n" + "Material Material::rotatedMaterial(const RotMatrix &transform) const\n" "\n" ""}, { "delete_Material", _wrap_delete_Material, METH_O, "delete_Material(Material self)"}, @@ -68775,7 +68775,7 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { "IFormFactorDecorator_swigregister", IFormFactorDecorator_swigregister, METH_O, NULL}, - { "IRotation_createRotation", _wrap_IRotation_createRotation, METH_O, "IRotation_createRotation(Transform3D transform) -> IRotation"}, + { "IRotation_createRotation", _wrap_IRotation_createRotation, METH_O, "IRotation_createRotation(RotMatrix transform) -> IRotation"}, { "IRotation_clone", _wrap_IRotation_clone, METH_O, "\n" "IRotation_clone(IRotation self) -> IRotation\n" "IRotation* IRotation::clone() const override=0\n" @@ -68788,9 +68788,9 @@ static PyMethodDef SwigMethods[] = { "Returns a new IRotation object that is the current object's inverse. \n" "\n" ""}, - { "IRotation_getTransform3D", _wrap_IRotation_getTransform3D, METH_O, "\n" - "IRotation_getTransform3D(IRotation self) -> Transform3D\n" - "virtual Transform3D IRotation::getTransform3D() const =0\n" + { "IRotation_getRotMatrix", _wrap_IRotation_getRotMatrix, METH_O, "\n" + "IRotation_getRotMatrix(IRotation self) -> RotMatrix\n" + "virtual RotMatrix IRotation::getRotMatrix() const =0\n" "\n" "Returns transformation. \n" "\n" @@ -68843,9 +68843,9 @@ static PyMethodDef SwigMethods[] = { "Returns a new IRotation object that is the current object's inverse. \n" "\n" ""}, - { "IdentityRotation_getTransform3D", _wrap_IdentityRotation_getTransform3D, METH_O, "\n" - "IdentityRotation_getTransform3D(IdentityRotation self) -> Transform3D\n" - "Transform3D IdentityRotation::getTransform3D() const override\n" + { "IdentityRotation_getRotMatrix", _wrap_IdentityRotation_getRotMatrix, METH_O, "\n" + "IdentityRotation_getRotMatrix(IdentityRotation self) -> RotMatrix\n" + "RotMatrix IdentityRotation::getRotMatrix() const override\n" "\n" "Returns transformation. \n" "\n" @@ -68888,9 +68888,9 @@ static PyMethodDef SwigMethods[] = { "double RotationX::getAngle() const\n" "\n" ""}, - { "RotationX_getTransform3D", _wrap_RotationX_getTransform3D, METH_O, "\n" - "RotationX_getTransform3D(RotationX self) -> Transform3D\n" - "Transform3D RotationX::getTransform3D() const override\n" + { "RotationX_getRotMatrix", _wrap_RotationX_getRotMatrix, METH_O, "\n" + "RotationX_getRotMatrix(RotationX self) -> RotMatrix\n" + "RotMatrix RotationX::getRotMatrix() const override\n" "\n" "Returns transformation. \n" "\n" @@ -68926,9 +68926,9 @@ static PyMethodDef SwigMethods[] = { "double RotationY::getAngle() const\n" "\n" ""}, - { "RotationY_getTransform3D", _wrap_RotationY_getTransform3D, METH_O, "\n" - "RotationY_getTransform3D(RotationY self) -> Transform3D\n" - "Transform3D RotationY::getTransform3D() const override\n" + { "RotationY_getRotMatrix", _wrap_RotationY_getRotMatrix, METH_O, "\n" + "RotationY_getRotMatrix(RotationY self) -> RotMatrix\n" + "RotMatrix RotationY::getRotMatrix() const override\n" "\n" "Returns transformation. \n" "\n" @@ -68964,9 +68964,9 @@ static PyMethodDef SwigMethods[] = { "double RotationZ::getAngle() const\n" "\n" ""}, - { "RotationZ_getTransform3D", _wrap_RotationZ_getTransform3D, METH_O, "\n" - "RotationZ_getTransform3D(RotationZ self) -> Transform3D\n" - "Transform3D RotationZ::getTransform3D() const override\n" + { "RotationZ_getRotMatrix", _wrap_RotationZ_getRotMatrix, METH_O, "\n" + "RotationZ_getRotMatrix(RotationZ self) -> RotMatrix\n" + "RotMatrix RotationZ::getRotMatrix() const override\n" "\n" "Returns transformation. \n" "\n" @@ -69012,9 +69012,9 @@ static PyMethodDef SwigMethods[] = { "double RotationEuler::getGamma() const\n" "\n" ""}, - { "RotationEuler_getTransform3D", _wrap_RotationEuler_getTransform3D, METH_O, "\n" - "RotationEuler_getTransform3D(RotationEuler self) -> Transform3D\n" - "Transform3D RotationEuler::getTransform3D() const override\n" + { "RotationEuler_getRotMatrix", _wrap_RotationEuler_getRotMatrix, METH_O, "\n" + "RotationEuler_getRotMatrix(RotationEuler self) -> RotMatrix\n" + "RotMatrix RotationEuler::getRotMatrix() const override\n" "\n" "Returns transformation. \n" "\n" @@ -69184,9 +69184,9 @@ static PyMethodDef SwigMethods[] = { "Admixtures Crystal::admixtures() const\n" "\n" ""}, - { "Crystal_transformedLattice", _wrap_Crystal_transformedLattice, METH_VARARGS, "\n" - "Crystal_transformedLattice(Crystal self, IRotation rotation=None) -> Lattice3D\n" - "Lattice3D Crystal::transformedLattice(const IRotation *rotation=nullptr) const\n" + { "Crystal_rotatedLattice", _wrap_Crystal_rotatedLattice, METH_VARARGS, "\n" + "Crystal_rotatedLattice(Crystal self, IRotation rotation=None) -> Lattice3D\n" + "Lattice3D Crystal::rotatedLattice(const IRotation *rotation=nullptr) const\n" "\n" ""}, { "Crystal_getChildren", _wrap_Crystal_getChildren, METH_O, "\n" @@ -72945,11 +72945,11 @@ static PyMethodDef SwigMethods[] = { "Lattice3D::~Lattice3D() override\n" "\n" ""}, - { "Lattice3D_transformed", _wrap_Lattice3D_transformed, METH_VARARGS, "\n" - "Lattice3D_transformed(Lattice3D self, Transform3D transform) -> Lattice3D\n" - "Lattice3D Lattice3D::transformed(const Transform3D &transform) const\n" + { "Lattice3D_rotated", _wrap_Lattice3D_rotated, METH_VARARGS, "\n" + "Lattice3D_rotated(Lattice3D self, RotMatrix rotMatrix) -> Lattice3D\n" + "Lattice3D Lattice3D::rotated(const RotMatrix &rotMatrix) const\n" "\n" - "Creates transformed lattice. \n" + "Creates rotated lattice. \n" "\n" ""}, { "Lattice3D_getBasisVectorA", _wrap_Lattice3D_getBasisVectorA, METH_O, "\n" @@ -74652,6 +74652,7 @@ static swig_type_info _swigt__p_Particle = {"_p_Particle", "Particle *", 0, 0, ( static swig_type_info _swigt__p_ParticleComposition = {"_p_ParticleComposition", "ParticleComposition *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ParticleCoreShell = {"_p_ParticleCoreShell", "ParticleCoreShell *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ParticleLayout = {"_p_ParticleLayout", "ParticleLayout *", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_RotMatrix = {"_p_RotMatrix", "RotMatrix *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_RotationEuler = {"_p_RotationEuler", "RotationEuler *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_RotationX = {"_p_RotationX", "RotationX *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_RotationY = {"_p_RotationY", "RotationY *", 0, 0, (void*)0, 0}; @@ -74663,7 +74664,6 @@ static swig_type_info _swigt__p_SimpleSelectionRule = {"_p_SimpleSelectionRule", static swig_type_info _swigt__p_SlicedParticle = {"_p_SlicedParticle", "SlicedParticle *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_SlicingEffects = {"_p_SlicingEffects", "SlicingEffects *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_SquareLattice2D = {"_p_SquareLattice2D", "SquareLattice2D *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_Transform3D = {"_p_Transform3D", "Transform3D *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_Vec3T_double_t = {"_p_Vec3T_double_t", "std::vector< Vec3< double > >::value_type *|R3 *|Vec3< double > *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_Vec3T_int_t = {"_p_Vec3T_int_t", "I3 *|Vec3< int > *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_Vec3T_std__complexT_double_t_t = {"_p_Vec3T_std__complexT_double_t_t", "Vec3< std::complex< double > > *|C3 *|std::vector< Vec3< std::complex< double > > >::value_type *", 0, 0, (void*)0, 0}; @@ -74836,6 +74836,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_ParticleComposition, &_swigt__p_ParticleCoreShell, &_swigt__p_ParticleLayout, + &_swigt__p_RotMatrix, &_swigt__p_RotationEuler, &_swigt__p_RotationX, &_swigt__p_RotationY, @@ -74847,7 +74848,6 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_SlicedParticle, &_swigt__p_SlicingEffects, &_swigt__p_SquareLattice2D, - &_swigt__p_Transform3D, &_swigt__p_Vec3T_double_t, &_swigt__p_Vec3T_int_t, &_swigt__p_Vec3T_std__complexT_double_t_t, @@ -75020,6 +75020,7 @@ static swig_cast_info _swigc__p_Particle[] = { {&_swigt__p_Particle, 0, 0, 0},{ static swig_cast_info _swigc__p_ParticleComposition[] = { {&_swigt__p_ParticleComposition, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ParticleCoreShell[] = { {&_swigt__p_ParticleCoreShell, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ParticleLayout[] = { {&_swigt__p_ParticleLayout, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_RotMatrix[] = { {&_swigt__p_RotMatrix, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_RotationEuler[] = { {&_swigt__p_RotationEuler, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_RotationX[] = { {&_swigt__p_RotationX, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_RotationY[] = { {&_swigt__p_RotationY, 0, 0, 0},{0, 0, 0, 0}}; @@ -75031,7 +75032,6 @@ static swig_cast_info _swigc__p_SimpleSelectionRule[] = { {&_swigt__p_SimpleSel static swig_cast_info _swigc__p_SlicedParticle[] = { {&_swigt__p_SlicedParticle, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_SlicingEffects[] = { {&_swigt__p_SlicingEffects, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_SquareLattice2D[] = { {&_swigt__p_SquareLattice2D, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_Transform3D[] = { {&_swigt__p_Transform3D, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_Vec3T_double_t[] = { {&_swigt__p_Vec3T_double_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_Vec3T_int_t[] = { {&_swigt__p_Vec3T_int_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_Vec3T_std__complexT_double_t_t[] = { {&_swigt__p_Vec3T_std__complexT_double_t_t, 0, 0, 0},{0, 0, 0, 0}}; @@ -75204,6 +75204,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_ParticleComposition, _swigc__p_ParticleCoreShell, _swigc__p_ParticleLayout, + _swigc__p_RotMatrix, _swigc__p_RotationEuler, _swigc__p_RotationX, _swigc__p_RotationY, @@ -75215,7 +75216,6 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_SlicedParticle, _swigc__p_SlicingEffects, _swigc__p_SquareLattice2D, - _swigc__p_Transform3D, _swigc__p_Vec3T_double_t, _swigc__p_Vec3T_int_t, _swigc__p_Vec3T_std__complexT_double_t_t,