OpenVDB
9.0.1
|
A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions. More...
#include <openvdb/math/Maps.h>
Inherits MapBase.
Inherited by UniformScaleMap.
Public Types | |
using | Ptr = SharedPtr< ScaleMap > |
using | ConstPtr = SharedPtr< const ScaleMap > |
using | MapFactory) = Ptr(*)( |
Public Member Functions | |
ScaleMap () | |
ScaleMap (const Vec3d &scale) | |
ScaleMap (const ScaleMap &other) | |
~ScaleMap () 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 ScaleMap is always linear). More... | |
bool | hasUniformScale () const final |
Return true if the values have the same magitude (eg. -1, 1, -1 would be a rotation). More... | |
Vec3d | applyMap (const Vec3d &in) const final |
Return the image of in under the map. More... | |
Vec3d | applyInverseMap (const Vec3d &in) const final |
Return the pre-image of in 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... | |
const Vec3d & | getScale () const |
Return the scale values that define the map. 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 ScaleMap &other) const |
bool | operator!= (const ScaleMap &other) const |
AffineMap::Ptr | getAffineMap () const override |
Return a AffineMap equivalent to this map. More... | |
template<typename MapT > | |
bool | isType () const |
Return true if this map is of concrete type MapT (e.g., AffineMap). More... | |
Vec3d | voxelSize () const final |
Return 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 final |
Return 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... | |
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 to the existing map. More... | |
MapBase::Ptr | preTranslate (const Vec3d &) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map. More... | |
MapBase::Ptr | preScale (const Vec3d &) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map. 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 to the existing map. More... | |
MapBase::Ptr | postRotate (double radians, Axis axis) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map. More... | |
MapBase::Ptr | postTranslate (const Vec3d &) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map. More... | |
MapBase::Ptr | postScale (const Vec3d &) const override |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map. 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 prepending the appropraite operation to the existing map. More... | |
Static Public Member Functions | |
static MapBase::Ptr | create () |
Return a MapBase::Ptr to a new ScaleMap. 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.
|
inherited |
|
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.
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 in
under the map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a deep copy of this map.
Implements MapBase.
Reimplemented in UniformScaleMap.
|
inlinestatic |
Return a MapBase::Ptr to a new ScaleMap.
|
inlinefinalvirtual |
Return the product of the scale values, ignores argument.
Implements MapBase.
|
inlinefinalvirtual |
Return the product of the scale values.
Implements MapBase.
|
inlineoverridevirtual |
|
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 |
Return the scale values that define the map.
|
inlinefinalvirtual |
Return true
if the values have the same magitude (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 UniformScaleMap.
|
inlineoverridevirtual |
Return true
if this map is equal to the given map.
Implements MapBase.
Reimplemented in UniformScaleMap.
|
inlinestaticprotectedinherited |
|
inlinefinalvirtual |
|
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 prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
Reimplemented in UniformScaleMap.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation to the existing map.
Implements MapBase.
Reimplemented in UniformScaleMap.
|
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 UniformScaleMap.
|
inlinefinalvirtual |
Return 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).
This is equivalent to the absolute values of the scale values
Implements MapBase.
Return 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).
This is equivalent to the absolute values of the scale values
Implements MapBase.
|
inlineoverridevirtual |
write serialization
Implements MapBase.