#include "Math.h"#include "Mat4.h"#include "Vec3.h"#include "BBox.h"#include "Coord.h"#include <openvdb/io/io.h>#include <openvdb/util/Name.h>#include <openvdb/Types.h>#include <cmath>#include <iostream>#include <map>#include <string>Go to the source code of this file.
| Classes | |
| struct | is_linear< T > | 
| Map traits.  More... | |
| struct | is_linear< AffineMap > | 
| struct | is_linear< ScaleMap > | 
| struct | is_linear< UniformScaleMap > | 
| struct | is_linear< UnitaryMap > | 
| struct | is_linear< TranslationMap > | 
| struct | is_linear< ScaleTranslateMap > | 
| struct | is_linear< UniformScaleTranslateMap > | 
| struct | is_linear< CompoundMap< T1, T2 > > | 
| struct | is_uniform_scale< T > | 
| struct | is_uniform_scale< UniformScaleMap > | 
| struct | is_uniform_scale_translate< T > | 
| struct | is_uniform_scale_translate< TranslationMap > | 
| struct | is_uniform_scale_translate< UniformScaleTranslateMap > | 
| struct | is_scale< T > | 
| struct | is_scale< ScaleMap > | 
| struct | is_scale_translate< T > | 
| struct | is_scale_translate< ScaleTranslateMap > | 
| struct | is_uniform_diagonal_jacobian< T > | 
| struct | is_diagonal_jacobian< T > | 
| class | MapBase | 
| Abstract base class for maps.  More... | |
| class | MapRegistry | 
| Threadsafe singleton object for accessing the map type-name dictionary. Associates a map type-name with a factory function.  More... | |
| class | AffineMap | 
| A general linear transform using homogeneous coordinates to perform rotation, scaling, shear and translation.  More... | |
| class | ScaleMap | 
| A specialized Affine transform that scales along the principal axis the scaling need not be uniform in the three-directions.  More... | |
| class | UniformScaleMap | 
| A specialized Affine transform that scales along the principal axis the scaling is uniform in the three-directions.  More... | |
| class | TranslationMap | 
| A specialized linear transform that performs a translation.  More... | |
| class | ScaleTranslateMap | 
| 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... | |
| class | UniformScaleTranslateMap | 
| A specialized Affine transform that uniformaly scales along the principal axis and then translates the result.  More... | |
| class | UnitaryMap | 
| A specialized linear transform that performs a unitary maping i.e. rotation and or reflection.  More... | |
| class | NonlinearFrustumMap | 
| This map is composed of three steps. First it will take a box of size (Lx X Ly X Lz) defined by a member data bounding box and map it into a frustum with near plane (1 X Ly/Lx) and prescribed depth Then this frustum is transformed by an internal second map: most often a uniform scale, but other effects can be achieved by accumulating translation, shear and rotation: these are all applied to the second map.  More... | |
| class | CompoundMap< FirstMapType, SecondMapType > | 
| Creates the composition of two maps, each of which could be a composition. In the case that each component of the composition classified as linear an acceleration AffineMap is stored.  More... | |
| Namespaces | |
| namespace | openvdb | 
| namespace | openvdb::v12_0 | 
| namespace | openvdb::v12_0::math | 
| Typedefs | |
| using | UnitaryAndTranslationMap = CompoundMap<UnitaryMap, TranslationMap> | 
| using | SpectralDecomposedMap = CompoundMap<CompoundMap<UnitaryMap, ScaleMap>, UnitaryMap> | 
| using | SymmetricMap = SpectralDecomposedMap | 
| using | FullyDecomposedMap = CompoundMap<SymmetricMap, UnitaryAndTranslationMap> | 
| using | PolarDecomposedMap = CompoundMap<SymmetricMap, UnitaryMap> | 
| Functions | |
| OPENVDB_API SharedPtr< SymmetricMap > | createSymmetricMap (const Mat3d &m) | 
| Utility methods. | |
| OPENVDB_API SharedPtr< FullyDecomposedMap > | createFullyDecomposedMap (const Mat4d &m) | 
| General decomposition of a Matrix into a Unitary (e.g. rotation) following a Symmetric (e.g. stretch & shear) | |
| OPENVDB_API SharedPtr< PolarDecomposedMap > | createPolarDecomposedMap (const Mat3d &m) | 
| Decomposes a general linear into translation following polar decomposition. | |
| OPENVDB_API SharedPtr< MapBase > | simplify (SharedPtr< AffineMap > affine) | 
| reduces an AffineMap to a ScaleMap or a ScaleTranslateMap when it can | |
| OPENVDB_API Mat4d | approxInverse (const Mat4d &mat) | 
| Returns the left pseudoInverse of the input matrix when the 3x3 part is symmetric otherwise it zeros the 3x3 and reverses the translation. | |