MeshLib C++ Docs
Loading...
Searching...
No Matches
MR::RigidScaleXf3< T > Struct Template Reference

#include <MRMesh/MRRigidScaleXf3.h>

Public Types

using V = Vector3<T>

Public Member Functions

constexpr RigidScaleXf3 () noexcept=default
constexpr RigidScaleXf3 (const V &a, const V &b, T s) noexcept
template<typename U>
constexpr RigidScaleXf3 (const RigidScaleXf3< U > &xf) noexcept
template<typename U>
constexpr RigidScaleXf3 (const RigidXf3< U > &xf) noexcept
AffineXf3< T > rigidScaleXf () const
 converts this into rigid (with scale) transformation, which non-linearly depends on angles
AffineXf3< T > linearXf () const
 converts this into not-rigid transformation but with matrix, which linearly depends on angles

Public Attributes

V a
 rotation angles relative to x,y,z axes
V b
 shift
s = 1
 scaling

Detailed Description

template<typename T>
struct MR::RigidScaleXf3< T >

rigid (with scale) transformation that multiplies all distances on same scale: y = s*A*x + b, where s is a scalar, A is rotation matrix 3x3 stored as 3 angles, and b is shift vector


The documentation for this struct was generated from the following file: