OpenVDB
12.0.0
|
A specialized linear transform that performs a unitary maping i.e. rotation and or reflection. More...
#include <openvdb/math/Maps.h>
Inherits MapBase.
Public Types | |
using | Ptr = SharedPtr< UnitaryMap > |
using | ConstPtr = SharedPtr< const UnitaryMap > |
using | MapFactory) = Ptr(*)( |
Public Member Functions | |
UnitaryMap () | |
default constructor makes an Idenity. More... | |
UnitaryMap (const Vec3d &axis, double radians) | |
UnitaryMap (Axis axis, double radians) | |
UnitaryMap (const Mat3d &m) | |
UnitaryMap (const Mat4d &m) | |
UnitaryMap (const UnitaryMap &other) | |
UnitaryMap (const UnitaryMap &first, const UnitaryMap &second) | |
~UnitaryMap () override=default | |
MapBase::Ptr | copy () const override |
Returns a MapBase::Ptr to a deep copy of *this. More... | |
MapBase::Ptr | inverseMap () const override |
Return a new map representing the inverse of this map. More... | |
Name | type () const override |
Return UnitaryMap . More... | |
bool | isLinear () const override |
Return true (a UnitaryMap is always linear). More... | |
bool | hasUniformScale () const override |
Return false (by convention true) More... | |
bool | isEqual (const MapBase &other) const override |
Return true if this map is equal to the given map. More... | |
bool | operator== (const UnitaryMap &other) const |
bool | operator!= (const UnitaryMap &other) const |
Vec3d | applyMap (const Vec3d &in) const override |
Return the image of in under the map. More... | |
Vec3d | applyInverseMap (const Vec3d &in) const override |
Return the pre-image of in under the map. More... | |
Vec3d | applyJacobian (const Vec3d &in, const Vec3d &) const override |
Apply the Jacobian of this map to a vector. For a linear map this is equivalent to applying the map excluding translation. More... | |
Vec3d | applyJacobian (const Vec3d &in) const override |
Return the Jacobian of the map applied to in. More... | |
Vec3d | applyInverseJacobian (const Vec3d &in, const Vec3d &) const override |
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation) More... | |
Vec3d | applyInverseJacobian (const Vec3d &in) const override |
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation) More... | |
Vec3d | applyJT (const Vec3d &in, const Vec3d &) const override |
Return the Jacobian Transpose of the map applied to in. More... | |
Vec3d | applyJT (const Vec3d &in) const override |
Return the Jacobian Transpose of the map applied to in. More... | |
Vec3d | applyIJT (const Vec3d &in, const Vec3d &) const override |
Return the transpose of the inverse Jacobian of the map applied to in. More... | |
Vec3d | applyIJT (const Vec3d &in) const override |
Return the transpose of the inverse Jacobian of the map applied to in . More... | |
Mat3d | applyIJC (const Mat3d &in) const override |
Return the Jacobian Curvature: zero for a linear map. More... | |
Mat3d | applyIJC (const Mat3d &in, const Vec3d &, const Vec3d &) const override |
double | determinant (const Vec3d &) const override |
Return the determinant of the Jacobian, ignores argument. More... | |
double | determinant () const override |
Return the determinant of the Jacobian. More... | |
void | read (std::istream &is) override |
read serialization More... | |
void | write (std::ostream &os) const override |
write serialization More... | |
std::string | str () const override |
string serialization, useful for debuging More... | |
AffineMap::Ptr | getAffineMap () const override |
Return AffineMap::Ptr to an AffineMap equivalent to *this. More... | |
MapBase::Ptr | preRotate (double radians, Axis axis) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the given rotation. More... | |
MapBase::Ptr | preTranslate (const Vec3d &t) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the given translation. More... | |
MapBase::Ptr | preScale (const Vec3d &v) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the given scale. More... | |
MapBase::Ptr | preShear (double shear, Axis axis0, Axis axis1) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the given shear. More... | |
MapBase::Ptr | postRotate (double radians, Axis axis) const override |
Return a MapBase::Ptr to a new map that is the result of appending the given rotation. More... | |
MapBase::Ptr | postTranslate (const Vec3d &t) const override |
Return a MapBase::Ptr to a new map that is the result of appending the given translation. More... | |
MapBase::Ptr | postScale (const Vec3d &v) const override |
Return a MapBase::Ptr to a new map that is the result of appending the given scale. More... | |
MapBase::Ptr | postShear (double shear, Axis axis0, Axis axis1) const override |
Return a MapBase::Ptr to a new map that is the result of appending the given shear. More... | |
template<typename MapT > | |
bool | isType () const |
Return true if this map is of concrete type MapT (e.g., AffineMap). More... | |
Vec3d | voxelSize () const override |
Returns the lengths of the images of the segments (0,0,0) − (1,0,0), (0,0,0) − (0,1,0) and (0,0,0) − (0,0,1). More... | |
Vec3d | voxelSize (const Vec3d &) const override |
Returns the lengths of the images of the segments (0,0,0) − (1,0,0), (0,0,0) − (0,1,0) and (0,0,0) − (0,0,1). More... | |
Static Public Member Functions | |
static MapBase::Ptr | create () |
Return a MapBase::Ptr to a new UnitaryMap. More... | |
static bool | isRegistered () |
static void | registerMap () |
static Name | mapType () |
Return UnitaryMap . More... | |
Static Protected Member Functions | |
template<typename MapT > | |
static bool | isEqualBase (const MapT &self, const MapBase &other) |
A specialized linear transform that performs a unitary maping i.e. rotation and or reflection.
using ConstPtr = SharedPtr<const UnitaryMap> |
|
inherited |
using Ptr = SharedPtr<UnitaryMap> |
|
inline |
default constructor makes an Idenity.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
overridedefault |
Return the Jacobian Curvature: zero for a linear map.
Implements MapBase.
Implements MapBase.
Return the transpose of the inverse Jacobian of the map applied to in.
Ignores second argument
Implements MapBase.
Return the transpose of the inverse Jacobian of the map applied to in
.
Implements MapBase.
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation)
Implements MapBase.
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation)
Implements MapBase.
Return the pre-image of in
under the map.
Implements MapBase.
Apply the Jacobian of this map to a vector. For a linear map this is equivalent to applying the map excluding translation.
Implements MapBase.
Return the Jacobian of the map applied to in.
Implements MapBase.
Return the Jacobian Transpose of the map applied to in.
This tranforms range-space gradients to domain-space gradients
Implements MapBase.
Return the Jacobian Transpose of the map applied to in.
Implements MapBase.
Return the image of in
under the map.
Implements MapBase.
|
inlineoverridevirtual |
Returns a MapBase::Ptr to a deep copy of *this.
Implements MapBase.
|
inlinestatic |
Return a MapBase::Ptr to a new UnitaryMap.
|
inlineoverridevirtual |
Return the determinant of the Jacobian, ignores argument.
Implements MapBase.
|
inlineoverridevirtual |
Return the determinant of the Jacobian.
Implements MapBase.
|
inlineoverridevirtual |
Return AffineMap::Ptr to an AffineMap equivalent to *this.
Implements MapBase.
|
inlineoverridevirtual |
Return false
(by convention true)
Implements MapBase.
|
inlineoverridevirtual |
Return a new map representing the inverse of this map.
NotImplementedError | if the map is a NonlinearFrustumMap. |
Implements MapBase.
|
inlineoverridevirtual |
Return true
if this map is equal to the given map.
Implements MapBase.
|
inlinestaticprotectedinherited |
|
inlineoverridevirtual |
Return true
(a UnitaryMap is always linear).
Implements MapBase.
|
inlinestatic |
|
inlineinherited |
Return true
if this map is of concrete type MapT
(e.g., AffineMap).
|
inlinestatic |
Return UnitaryMap
.
|
inline |
|
inline |
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of appending the given rotation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of appending the given scale.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of appending the given shear.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of appending the given translation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the given rotation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the given scale.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the given shear.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the given translation.
Implements MapBase.
|
inlineoverridevirtual |
read serialization
Implements MapBase.
|
inlinestatic |
|
inlineoverridevirtual |
string serialization, useful for debuging
Implements MapBase.
|
inlineoverridevirtual |
Return UnitaryMap
.
Implements MapBase.
|
inlineoverridevirtual |
Returns the lengths of the images of the segments (0,0,0) − (1,0,0), (0,0,0) − (0,1,0) and (0,0,0) − (0,0,1).
Implements MapBase.
Returns the lengths of the images of the segments (0,0,0) − (1,0,0), (0,0,0) − (0,1,0) and (0,0,0) − (0,0,1).
Implements MapBase.
|
inlineoverridevirtual |
write serialization
Implements MapBase.