OpenVDB
9.0.1
|
A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions, and then translates the result. More...
#include <openvdb/math/Maps.h>
Inherits MapBase.
Inherited by UniformScaleTranslateMap.
Public Types | |
using | Ptr = SharedPtr< ScaleTranslateMap > |
using | ConstPtr = SharedPtr< const ScaleTranslateMap > |
using | MapFactory) = Ptr(*)( |
Public Member Functions | |
ScaleTranslateMap () | |
ScaleTranslateMap (const Vec3d &scale, const Vec3d &translate) | |
ScaleTranslateMap (const ScaleMap &scale, const TranslationMap &translate) | |
ScaleTranslateMap (const ScaleTranslateMap &other) | |
~ScaleTranslateMap () override=default | |
MapBase::Ptr | copy () const override |
Return a MapBase::Ptr to a deep copy of this map. More... | |
MapBase::Ptr | inverseMap () const override |
Return a new map representing the inverse of this map. More... | |
Name | type () const override |
Return the name of this map's concrete type (e.g., "AffineMap" ). More... | |
bool | isLinear () const final |
Return true (a ScaleTranslateMap is always linear). More... | |
bool | hasUniformScale () const final |
Return true if the scale values have the same magnitude (eg. -1, 1, -1 would be a rotation). More... | |
Vec3d | applyMap (const Vec3d &in) const final |
Return the image of under the map. More... | |
Vec3d | applyInverseMap (const Vec3d &in) const final |
Return the pre-image of under the map. More... | |
Vec3d | applyJacobian (const Vec3d &in, const Vec3d &) const final |
Return the Jacobian of the map applied to in. More... | |
Vec3d | applyJacobian (const Vec3d &in) const final |
Return the Jacobian of the map applied to in. More... | |
Vec3d | applyInverseJacobian (const Vec3d &in, const Vec3d &) const final |
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation) More... | |
Vec3d | applyInverseJacobian (const Vec3d &in) const final |
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 final |
Return the Jacobian Transpose of the map applied to in. More... | |
Vec3d | applyJT (const Vec3d &in) const final |
Return the Jacobian Transpose of the map applied to in. More... | |
Vec3d | applyIJT (const Vec3d &in, const Vec3d &) const final |
Return the transpose of the inverse Jacobian of the map applied to in. More... | |
Vec3d | applyIJT (const Vec3d &in) const final |
Return the transpose of the inverse Jacobian of the map applied to in . More... | |
Mat3d | applyIJC (const Mat3d &in) const final |
Return the Jacobian Curvature: zero for a linear map. More... | |
Mat3d | applyIJC (const Mat3d &in, const Vec3d &, const Vec3d &) const final |
double | determinant (const Vec3d &) const final |
Return the product of the scale values, ignores argument. More... | |
double | determinant () const final |
Return the product of the scale values. More... | |
Vec3d | voxelSize () const final |
Return the absolute values of the scale values. More... | |
Vec3d | voxelSize (const Vec3d &) const final |
Return the absolute values of the scale values, ignores argument. More... | |
const Vec3d & | getScale () const |
Returns the scale values. More... | |
const Vec3d & | getTranslation () const |
Returns the translation. More... | |
const Vec3d & | getInvScaleSqr () const |
Return the square of the scale. Used to optimize some finite difference calculations. More... | |
const Vec3d & | getInvTwiceScale () const |
Return 1/(2 scale). Used to optimize some finite difference calculations. More... | |
const Vec3d & | getInvScale () const |
Return 1/(scale) 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... | |
bool | isEqual (const MapBase &other) const override |
Return true if this map is equal to the given map. More... | |
bool | operator== (const ScaleTranslateMap &other) const |
bool | operator!= (const ScaleTranslateMap &other) const |
AffineMap::Ptr | getAffineMap () const override |
Return AffineMap::Ptr to an AffineMap equivalent to *this. More... | |
template<typename MapT > | |
bool | isType () const |
Return true if this map is of concrete type MapT (e.g., AffineMap). 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 appropraite operation. More... | |
MapBase::Ptr | preTranslate (const Vec3d &t) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation. More... | |
MapBase::Ptr | preScale (const Vec3d &v) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation. 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 appropraite operation. More... | |
MapBase::Ptr | postRotate (double radians, Axis axis) const override |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation. More... | |
MapBase::Ptr | postTranslate (const Vec3d &t) const override |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation. More... | |
MapBase::Ptr | postScale (const Vec3d &v) const override |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation. 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 postfixing the appropraite operation. More... | |
Static Public Member Functions | |
static MapBase::Ptr | create () |
Return a MapBase::Ptr to a new ScaleTranslateMap. More... | |
static bool | isRegistered () |
static void | registerMap () |
static Name | mapType () |
Static Protected Member Functions | |
template<typename MapT > | |
static bool | isEqualBase (const MapT &self, const MapBase &other) |
A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions, and then translates the result.
using ConstPtr = SharedPtr<const ScaleTranslateMap> |
|
inherited |
using Ptr = SharedPtr<ScaleTranslateMap> |
|
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 under
the map.
Implements MapBase.
Return the Jacobian of the map applied to in.
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 under
the map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a deep copy of this map.
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlinestatic |
Return a MapBase::Ptr to a new ScaleTranslateMap.
|
inlinefinalvirtual |
Return the product of the scale values, ignores argument.
Implements MapBase.
|
inlinefinalvirtual |
Return the product of the scale values.
Implements MapBase.
|
inlineoverridevirtual |
Return AffineMap::Ptr to an AffineMap equivalent to *this.
Implements MapBase.
|
inline |
Return 1/(scale)
|
inline |
Return the square of the scale. Used to optimize some finite difference calculations.
|
inline |
Return 1/(2 scale). Used to optimize some finite difference calculations.
|
inline |
Returns the scale values.
|
inline |
Returns the translation.
|
inlinefinalvirtual |
Return true
if the scale values have the same magnitude (eg. -1, 1, -1 would be a rotation).
Implements MapBase.
|
inlineoverridevirtual |
Return a new map representing the inverse of this map.
NotImplementedError | if the map is a NonlinearFrustumMap. |
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlineoverridevirtual |
Return true
if this map is equal to the given map.
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlinestaticprotectedinherited |
|
inlinefinalvirtual |
Return true
(a ScaleTranslateMap is always linear).
Implements MapBase.
|
inlinestatic |
|
inlineinherited |
Return true
if this map is of concrete type MapT
(e.g., AffineMap).
|
inlinestatic |
|
inline |
|
inline |
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlineoverridevirtual |
read serialization
Implements MapBase.
|
inlinestatic |
|
inlineoverridevirtual |
string serialization, useful for debuging
Implements MapBase.
|
inlineoverridevirtual |
Return the name of this map's concrete type (e.g., "AffineMap"
).
Implements MapBase.
Reimplemented in UniformScaleTranslateMap.
|
inlinefinalvirtual |
Return the absolute values of the scale values.
Implements MapBase.
Return the absolute values of the scale values, ignores argument.
Implements MapBase.
|
inlineoverridevirtual |
write serialization
Implements MapBase.