|
HDK
|
A general linear transform using homogeneous coordinates to perform rotation, scaling, shear and translation. More...
#include <Maps.h>
Inheritance diagram for openvdb::OPENVDB_VERSION_NAME::math::AffineMap:Public Types | |
| using | Ptr = SharedPtr< AffineMap > |
| using | ConstPtr = SharedPtr< const AffineMap > |
Public Types inherited from openvdb::OPENVDB_VERSION_NAME::math::MapBase | |
| using | Ptr = SharedPtr< MapBase > |
| using | ConstPtr = SharedPtr< const MapBase > |
| using | MapFactory ) = Ptr(*)( |
Public Member Functions | |
| AffineMap () | |
| AffineMap (const Mat3d &m) | |
| AffineMap (const Mat4d &m) | |
| AffineMap (const AffineMap &other) | |
| AffineMap (const AffineMap &first, const AffineMap &second) | |
| constructor that merges the matrixes for two affine maps More... | |
| ~AffineMap () 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 override |
Return true (an AffineMap is always linear). More... | |
| bool | hasUniformScale () const override |
Return false ( test if this is unitary with translation ) More... | |
| bool | isEqual (const MapBase &other) const override |
Return true if this map is equal to the given map. More... | |
| bool | operator== (const AffineMap &other) const |
| bool | operator!= (const AffineMap &other) const |
| AffineMap & | operator= (const AffineMap &other) |
| 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 |
| Return the Jacobian of the map applied to in. 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 |
| 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 &m) 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... | |
| bool | isIdentity () const |
Return true if the underlying matrix is approximately an identity. More... | |
| bool | isDiagonal () const |
Return true if the underylying matrix is diagonal. More... | |
| bool | isScale () const |
Return true if the map is equivalent to a ScaleMap. More... | |
| bool | isScaleTranslate () const |
Return true if the map is equivalent to a ScaleTranslateMap. 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 debugging More... | |
| SharedPtr< FullyDecomposedMap > | createDecomposedMap () |
| on-demand decomposition of the affine map More... | |
| AffineMap::Ptr | getAffineMap () const override |
| Return AffineMap::Ptr to a deep copy of the current AffineMap. More... | |
| AffineMap::Ptr | inverse () const |
| Return AffineMap::Ptr to the inverse of this map. More... | |
| Mat4d | getMat4 () const |
| Return the matrix representation of this AffineMap. More... | |
| const Mat4d & | getConstMat4 () const |
| const Mat3d & | getConstJacobianInv () const |
| Vec3d | voxelSize () const override |
| 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 override |
| 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... | |
| void | accumPreRotation (Axis axis, double radians) |
| Modify the existing affine map by pre-applying the given operation. More... | |
| void | accumPreScale (const Vec3d &v) |
| Modify the existing affine map by pre-applying the given operation. More... | |
| void | accumPreTranslation (const Vec3d &v) |
| Modify the existing affine map by pre-applying the given operation. More... | |
| void | accumPreShear (Axis axis0, Axis axis1, double shear) |
| Modify the existing affine map by pre-applying the given operation. More... | |
| void | accumPostRotation (Axis axis, double radians) |
| Modify the existing affine map by post-applying the given operation. More... | |
| void | accumPostScale (const Vec3d &v) |
| Modify the existing affine map by post-applying the given operation. More... | |
| void | accumPostTranslation (const Vec3d &v) |
| Modify the existing affine map by post-applying the given operation. More... | |
| void | accumPostShear (Axis axis0, Axis axis1, double shear) |
| Modify the existing affine map by post-applying the given operation. More... | |
| MapBase::Ptr | preRotate (double radians, Axis axis=X_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 &s) 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=X_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 &s) 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... | |
Public Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::math::MapBase | |
| MapBase (const MapBase &)=default | |
| virtual | ~MapBase ()=default |
| template<typename MapT > | |
| bool | isType () const |
Return true if this map is of concrete type MapT (e.g., AffineMap). More... | |
Static Public Member Functions | |
| static MapBase::Ptr | create () |
| Return a MapBase::Ptr to a new AffineMap. More... | |
| static bool | isRegistered () |
| static void | registerMap () |
| static Name | mapType () |
Additional Inherited Members | |
Protected Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::math::MapBase | |
| MapBase () | |
Static Protected Member Functions inherited from openvdb::OPENVDB_VERSION_NAME::math::MapBase | |
| template<typename MapT > | |
| static bool | isEqualBase (const MapT &self, const MapBase &other) |
A general linear transform using homogeneous coordinates to perform rotation, scaling, shear and translation.
|
inline |
|
inline |
|
inline |
|
inline |
|
overridedefault |
|
inlineoverridevirtual |
Return the Jacobian Curvature: zero for a linear map.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the transpose of the inverse Jacobian of the map applied to in.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the transpose of the inverse Jacobian of the map applied to in.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation)
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Inverse Jacobian of the map applied to in (i.e. inverse map with out translation)
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the pre-image of in under the map.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Jacobian of the map applied to in.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Jacobian of the map applied to in.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Jacobian Transpose of the map applied to in. This tranforms range-space gradients to domain-space gradients
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the Jacobian Transpose of the map applied to in.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the image of in under the map.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a deep copy of this map.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlinestatic |
Return a MapBase::Ptr to a new AffineMap.
|
inline |
|
inlineoverridevirtual |
Return the determinant of the Jacobian, ignores argument.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the determinant of the Jacobian.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return AffineMap::Ptr to a deep copy of the current AffineMap.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inline |
|
inline |
|
inline |
|
inlineoverridevirtual |
Return false ( test if this is unitary with translation )
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inline |
Return AffineMap::Ptr to the inverse of this map.
|
inlineoverridevirtual |
Return a new map representing the inverse of this map.
| NotImplementedError | if the map is a NonlinearFrustumMap. |
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inline |
|
inlineoverridevirtual |
Return true if this map is equal to the given map.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inline |
|
inlineoverridevirtual |
Return true (an AffineMap is always linear).
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlinestatic |
|
inline |
|
inline |
Return true if the map is equivalent to a ScaleTranslateMap.
|
inlinestatic |
|
inline |
|
inline |
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
read serialization
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlinestatic |
|
inlineoverridevirtual |
string serialization, useful for debugging
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
Return the name of this map's concrete type (e.g., "AffineMap").
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
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).
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
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).
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.
|
inlineoverridevirtual |
write serialization
Implements openvdb::OPENVDB_VERSION_NAME::math::MapBase.