Namespaces | |
ConvolutionFunction | |
Voxel functions implementing convolution of an image with a discrete kernel. | |
ForEachVoxelDomain | |
InterpolationDomain | |
MultipleVoxelTransformation | |
NaryVoxelFunction | |
TernaryVoxelFunction | |
UnaryVoxelFunction | |
Typedefs | |
typedef GenericImage< BinaryPixel > | BinaryImage |
Binary image as used for masks (0: off, otherwise: on) | |
typedef List< Pair< int, int > > | EdgeList |
List of pairs of edge end point IDs. | |
typedef BaseImage | Image |
Alternative/backwards compatible type name. | |
typedef Array< Pair< string, string > > | ParameterList |
Ordered list of parameter name/value pairs. | |
typedef GenericSparseMatrix< float > | SparseFloatMatrix |
Typically used template instantiations. | |
typedef SparseDoubleMatrix | SparseMatrix |
Sparse matrix with default entry value type. | |
typedef GenericImage< double > | WorldCoordsImage |
FIXME: Use double3 as voxel type instead. | |
Functions | |
void | AddPoints (PointSet &oset, vtkPointSet *iset) |
void | AffineParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz, double sx, double sy, double sz, double sxy, double sxz, double syz, Matrix &m) |
Matrix | AffineParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz, double sx, double sy, double sz, double sxy, double sxz, double syz) |
void | AffineParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz, double sx, double sy, double sz, Matrix &m) |
Matrix | AffineParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz, double sx, double sy, double sz) |
template<class Type > | |
void | Allocate (Type *&matrix, int n) |
Allocate 1D array. | |
template<class Type > | |
Type * | Allocate (int n) |
Allocate 1D array. | |
template<class Type > | |
void | Allocate (Type **&matrix, int x, int y, Type *data=nullptr) |
Allocate 2D array stored in contiguous memory block. | |
template<typename Type > | |
Type ** | Allocate (int x, int y, Type *data=nullptr) |
Allocate 2D array stored in contiguous memory block. | |
template<class Type > | |
void | Allocate (Type ***&matrix, int x, int y, int z, Type *data=nullptr) |
Allocate 3D array stored in contiguous memory block. | |
template<typename Type > | |
Type *** | Allocate (int x, int y, int z, Type *data=nullptr) |
Allocate 3D array stored in contiguous memory block. | |
template<class Type > | |
void | Allocate (Type ****&matrix, int x, int y, int z, int t, Type *data=nullptr) |
Allocate 4D array stored in contiguous memory block. | |
template<typename Type > | |
Type **** | Allocate (int x, int y, int z, int t, Type *data=nullptr) |
Allocate 4D array stored in contiguous memory block. | |
Matrix | ApproximateAffineMatrix (const PointSet &target, const PointSet &source, const Vector &weight) |
Matrix | ApproximateAffineMatrix (const PointSet &target, const PointSet &source) |
double | Area (vtkPolyData *, bool per_cell=false) |
Area of surface mesh. | |
double | Area (vtkSmartPointer< vtkPolyData > surface, bool per_cell=false) |
Area of surface mesh. | |
double | Area (vtkSmartPointer< vtkPointSet >) |
Area of point set surface. | |
MIRTKCU_API bool | AreEqual (double a, double b, double tol=1e-12) |
Determine equality of two floating point numbers. | |
MIRTKCU_API bool | AreEqualOrNaN (double a, double b, double tol=1e-12) |
Determine equality of two floating point numbers including check if both are NaN. | |
double | AverageEdgeLength (vtkSmartPointer< vtkPoints >, const EdgeTable &) |
Determine average edge length of point set given a precomputed edge table. | |
double | AverageEdgeLength (vtkSmartPointer< vtkPointSet >) |
Determine average edge length of point set. | |
double | AverageInterval (const OrderedSet< double > &values) |
Get average interval between consecutive values of an ordered set. | |
string | BaseName (const char *) |
Get file name of file path incl. file extension. | |
string | BaseName (const string &) |
Get file name of file path incl. file extension. | |
Matrix | BiInvariantMean (int n, const Matrix *matrices, const double *weights=NULL, int niter=20, double tol=1e-12, const Matrix *mu0=NULL) |
template<class T > | |
Array< T >::iterator | BinarySearch (Array< T > &values, const T &value) |
Find value in sorted Array using binary search. | |
template<class T > | |
Array< T >::const_iterator | BinarySearch (const Array< T > &values, const T &value) |
Find value in sorted Array using binary search. | |
template<class T , class Compare > | |
Array< T >::iterator | BinarySearch (Array< T > &values, const T &value, Compare comp) |
Find value in sorted Array using binary search with custom comparator. | |
template<class T , class Compare > | |
Array< T >::const_iterator | BinarySearch (const Array< T > &values, const T &value, Compare comp) |
Find value in sorted Array using binary search with custom comparator. | |
EdgeList | BoundaryEdges (vtkDataSet *) |
Get list of all boundary edges. | |
EdgeList | BoundaryEdges (vtkDataSet *, const EdgeTable &) |
Get list of all boundary edges. | |
UnorderedSet< int > | BoundaryPoints (vtkDataSet *, const EdgeTable *=nullptr) |
Get IDs of end points of boundary edges. | |
Array< Array< int > > | BoundarySegments (vtkDataSet *, const EdgeTable *=nullptr) |
Get connected boundary segments as (closed) line strips. | |
template<class Type > | |
void | CAllocate (Type *&matrix, int n, const Type &init=Type()) |
Allocate 1D array and initialize it. | |
template<class Type > | |
Type * | CAllocate (int n, const Type *init=nullptr) |
Allocate 1D array and initialize it. | |
template<class Type > | |
void | CAllocate (Type **&matrix, int x, int y, const Type &init=Type()) |
Allocate 2D array stored in contiguous memory block. | |
template<typename Type > | |
Type ** | CAllocate (int x, int y, const Type *init=nullptr) |
Allocate 2D array stored in contiguous memory block and initialize it. | |
template<class Type > | |
void | CAllocate (Type ***&matrix, int x, int y, int z, const Type &init=Type()) |
Allocate 3D array stored in contiguous memory block. | |
template<typename Type > | |
Type *** | CAllocate (int x, int y, int z, const Type *init=nullptr) |
Allocate 3D array stored in contiguous memory block and initialize it. | |
template<class Type > | |
void | CAllocate (Type ****&matrix, int x, int y, int z, int t, const Type &init=Type()) |
Allocate 4D array stored in contiguous memory block and initialize it. | |
template<typename Type > | |
Type **** | CAllocate (int x, int y, int z, int t, const Type *init=nullptr) |
Allocate 4D array stored in contiguous memory block and initialize it. | |
string | CamelCaseToPrettyParameterName (const string &s) |
void | Center (vtkSmartPointer< vtkPointSet > pointset) |
Translate point set such that center is at origin. | |
MIRTKCU_API double | clamp (double f, double a, double b) |
Clamp the value v to be in the range [a, b]. | |
double | ComputeArea (vtkCell *cell) |
template<class TReal > | |
void | ComputeBSplineIndicesAndWeights (double x, double y, int spline_degree, int xIndex [6], int yIndex [6], TReal xWeight[6], TReal yWeight[6]) |
Compute indices and weights required for 2D B-spline interpolation. | |
template<class TReal > | |
void | ComputeBSplineIndicesAndWeights (double x, double y, double z, int spline_degree, int xIndex [6], int yIndex [6], int zIndex [6], TReal xWeight[6], TReal yWeight[6], TReal zWeight[6]) |
Compute indices and weights required for 3D B-spline interpolation. | |
template<class TReal > | |
void | ComputeBSplineIndicesAndWeights (double x, double y, double z, double t, int spline_degree, int xIndex [6], int yIndex [6], int zIndex [6], int tIndex[6], TReal xWeight[6], TReal yWeight[6], TReal zWeight[6], TReal tWeight[6]) |
Compute indices and weights required for 4D B-spline interpolation. | |
bool | ComputeTangents (const double n[3], double e1[3], double e2[3]) |
bool | ComputeTangents (const double n[3], double e1[3], double e2[3], double e3[3], double e4[3]) |
Compute 4 (8) equally spaced tangent vectors (angular sampling of 45 degrees) | |
double | ComputeVolume (vtkCell *cell) |
bool | Contains (const ParameterList ¶ms, string name) |
Whether parameter is in parameters list. | |
template<class TData > | |
void | ConvertToCubicBSplineCoefficients (GenericImage< TData > &image, int l) |
Convert 3D floating point scalar or vector image to cubic spline coefficients. | |
template<class TData > | |
void | ConvertToCubicBSplineCoefficients (GenericImage< TData > &image) |
Convert 4D floating point scalar or vector image to cubic spline coefficients. | |
template<class TData > | |
void | ConvertToSplineCoefficients (int degree, GenericImage< TData > &image, int k, int l) |
Convert 2D floating point scalar or vector image to spline coefficients. | |
template<class TData > | |
void | ConvertToSplineCoefficients (int degree, GenericImage< TData > &image, int l) |
Convert 3D floating point scalar or vector image to spline coefficients. | |
template<class TData > | |
void | ConvertToSplineCoefficients (int degree, GenericImage< TData > &image) |
Convert 4D floating point scalar or vector image to spline coefficients. | |
vtkSmartPointer< vtkPolyData > | ConvexHull (vtkSmartPointer< vtkPointSet > pointset, int levels=3) |
const Version | current_version (MIRTK_VERSION_MAJOR, MIRTK_VERSION_MINOR, MIRTK_VERSION_PATCH) |
Current software version. | |
vtkSmartPointer< vtkPolyData > | DataSetSurface (vtkSmartPointer< vtkDataSet > dataset, bool passPtIds=false, bool passCellIds=false) |
template<typename Type > | |
void | Deallocate (Type *&p) |
Deallocate 1D array. | |
template<class Type > | |
void | Deallocate (Type **&matrix, void *data=NULL) |
template<class Type > | |
void | Deallocate (Type ***&matrix, void *data=NULL) |
template<class Type > | |
void | Deallocate (Type ****&matrix, void *data=NULL) |
template<class T > | |
Array< int > | DecreasingOrder (const Array< T > &values) |
Get permutation of array indices corresponding to sorted order of values. | |
int | DeepCopyArrayUsingCaseInsensitiveName (vtkDataSetAttributes *dst, vtkDataSetAttributes *src, const char *name) |
const char * | DefaultExtension (vtkDataSet *) |
Default extension for given data set. | |
InterpolationMode | DefaultInterpolationMode () |
Get default interpolation mode. | |
template<typename Type > | |
void | Delete (Type *&p) |
Delete object. | |
int | Dimension (vtkDataSet *) |
Determine dimension of data set. | |
string | Directory (const char *) |
Get directory part of file path. | |
string | Directory (const string &) |
Get directory part of file path. | |
void | EdgeLengthNormalDistribution (vtkSmartPointer< vtkPoints > points, const EdgeTable &edgeTable, double &mean, double &sigma) |
void | EdgeLengthNormalDistribution (vtkSmartPointer< vtkPointSet > pointset, double &mean, double &sigma) |
Vector | EdgeLengths (vtkSmartPointer< vtkPoints >, const EdgeTable &) |
Compute edge lengths of point set given a precomputed edge table. | |
double | EdgeLengthToTriangleArea (double l) |
Calculate are of triangle with given edge length. | |
string | ElapsedTimeToString (double t, TimeUnit units=TIME_IN_SECONDS, TimeFormat fmt=TIME_FORMAT_HHMMSS, int w=0, char c=' ', bool left=false) |
int | EulerCharacteristic (vtkDataSet *dataset, const EdgeTable &, int *npoints=nullptr, int *nedges=nullptr, int *nfaces=nullptr) |
Euler characeteristic, i.e., V - E + F. | |
int | EulerCharacteristic (vtkDataSet *dataset, int *npoints=nullptr, int *nedges=nullptr, int *nfaces=nullptr) |
Euler characeteristic, i.e., V - E + F. | |
template<class VoxelType > | |
void | Exp (GenericImage< VoxelType > *v) |
Compute exponential map of given velocity field. | |
string | Extension (const char *, ExtensionMode=EXT_Default) |
Get file name extension in lower case incl. leading dot ('.') | |
string | Extension (const string &, ExtensionMode=EXT_Default) |
Get file name extension in lower case incl. leading dot ('.') | |
ExtrapolationMode | ExtrapolationWithoutPeriodicTime (ExtrapolationMode m) |
Get corresponding extrapolation without periodic time. | |
ExtrapolationMode | ExtrapolationWithPeriodicTime (ExtrapolationMode m) |
Get corresponding extrapolation with periodic time. | |
MIRTKCU_API double | fdec (double f) |
MIRTKCU_API double | fdec (double f, double df) |
MIRTKCU_API bool | fequal (double a, double b, double tol=1e-12) |
string | FileName (const char *, ExtensionMode=EXT_Default) |
Get file name of file path excl. file extension. | |
string | FileName (const string &, ExtensionMode=EXT_Default) |
Get file name of file path excl. file extension. | |
string | FilePrefix (const char *, ExtensionMode=EXT_Default) |
Get file path excl. file extension. | |
string | FilePrefix (const string &, ExtensionMode=EXT_Default) |
Get file path excl. file extension. | |
template<class TData > | |
void | FillBackgroundBeforeConversionToSplineCoefficients (GenericImage< TData > &image) |
Fill background by front propagation of foreground. | |
MIRTKCU_API double | finc (double f) |
MIRTKCU_API double | finc (double f, double df) |
ParameterConstIterator | Find (const ParameterList ¶ms, string name) |
Find parameter in parameters list. | |
ParameterIterator | Find (ParameterList ¶ms, string name) |
Find parameter in parameters list. | |
template<class T > | |
Array< T >::iterator | Find (Array< T > &values, const T &value) |
Find value in unsorted Array. | |
template<class T > | |
Array< T >::const_iterator | Find (const Array< T > &values, const T &value) |
Find value in unsorted Array. | |
template<class T > | |
int | FindIndex (const Array< T > &values, const T &value) |
Find value in unsorted Array. | |
Matrix | FrechetMean (const Matrix *matrices, const double *weights, int n, int niter=20, double tol=1e-12, const Matrix *mu0=NULL) |
Matrix | FrechetMean (const Matrix *matrices, int n, int niter=20, double tol=1e-12, const Matrix *mu0=NULL) |
template<> | |
bool | FromString (const char *str, FFDIM &value) |
Convert FFD integration method string to enumeration value. | |
template<> | |
bool | FromString (const char *str, vtkDataSetAttributes::AttributeTypes &type) |
Convert string to vtkDataSetAttributes::AttributeType. | |
template<> | |
bool | FromString (const char *str, NiftiIntent &value) |
Convert string to NIfTI intent code. | |
template<typename T > | |
bool | FromString (const char *str, T &value) |
Convert string to numeric value. | |
template<typename T > | |
bool | FromString (const string &s, T &value) |
Convert string to numeric value. | |
template<> | |
bool | FromString (const char *, ImageDataType &) |
Convert string to image data type enumeration value. | |
template<> | |
bool | FromString (const char *str, bool &value) |
Convert string to boolean value. | |
template<> | |
bool | FromString (const char *str, ConnectivityType &value) |
Convert string to image connectivity type. | |
template<> | |
bool | FromString (const char *str, ConnectedComponentsOrdering &value) |
Convert string to connected components ordering. | |
bool | FromString (const char *, NiftiUnits &) |
Convert string to NIfTI units code. | |
template<> | |
bool | FromString (const char *str, float &value) |
Convert string to float value. | |
template<> | |
bool | FromString (const char *str, double &value) |
Convert string to double value. | |
template<> | |
bool | FromString (const char *str, enum ImplicitSurfaceForce::DistanceMeasureType &value) |
Convert string to implicit surface distance measure enumeration value. | |
template<> | |
bool | FromString (const char *str, EnergyMeasure &value) |
Convert energy measure string to enumeration value. | |
double | Genus (vtkDataSet *dataset, const EdgeTable &, int *npoints=nullptr, int *nedges=nullptr, int *nfaces=nullptr, int *nbounds=nullptr, int *ncomps=nullptr, int *euler=nullptr) |
Genus of surface mesh. | |
double | Genus (vtkDataSet *dataset, int *npoints=nullptr, int *nedges=nullptr, int *nfaces=nullptr, int *nbounds=nullptr, int *ncomps=nullptr, int *euler=nullptr) |
Genus of surface mesh. | |
string | Get (const ParameterList ¶ms, string name) |
Get parameter value from parameters list. | |
vtkDataArray * | GetArrayByCaseInsensitiveName (vtkDataSetAttributes *data, const char *name, int *loc=NULL) |
ByteOrder | GetByteOrder () |
Get byte order of this system. | |
size_t | GetCurrentRSS () |
string | GetDate () |
string | GetDateTime () |
void | GetMinMaxEdgeLength (vtkSmartPointer< vtkPoints > points, const EdgeTable &edgeTable, double &min, double &max) |
void | GetMinMaxEdgeLength (vtkSmartPointer< vtkPointSet > pointset, double &min, double &max) |
size_t | GetPeakRSS () |
EdgeList | GetPointEdges (const EdgeList &edges, int ptId) |
string | GetTime () |
string | GetUser () |
Get name of user executing this program. | |
template<class T > | |
MIRTKCU_API int | iceil (T x) |
Round floating-point value to next greater integer and cast to int. | |
bool | iequal (char const *a, char const *b) |
Case insensitive string comparison. | |
bool | iequal (const string &a, char const *b) |
Case insensitive string comparison. | |
bool | iequal (const char *a, const string &b) |
Case insensitive string comparison. | |
bool | iequal (const string &a, const string &b) |
Case insensitive string comparison. | |
template<class T > | |
MIRTKCU_API int | ifloor (T x) |
Round floating-point value to next smaller integer and cast to int. | |
vtkSmartPointer< vtkImageStencilData > | ImageStencil (vtkSmartPointer< vtkImageData > image, vtkSmartPointer< vtkPointSet > pointset) |
Get inside surface image stencil. | |
void | ImageStencilToMask (vtkSmartPointer< vtkImageStencilData > stencil, vtkSmartPointer< vtkImageData > image) |
template<class T > | |
Array< int > | IncreasingOrder (const Array< T > &values) |
Get permutation of array indices corresponding to sorted order of values. | |
void | InitializeDeformableLibrary () |
void | InitializeIOLibrary () |
Initialize MIRTK IO library. | |
void | InitializeNumericsLibrary () |
void | InitializeRegistrationLibrary () |
void | InitializeTransformationLibrary () |
template<class T > | |
ParameterList & | Insert (ParameterList ¶ms, string name, T value) |
Insert/replace value into/in parameters list. | |
template<> | |
ParameterList & | Insert (ParameterList ¶ms, string name, const char *value) |
Insert/replace string value into/in parameters list. | |
template<> | |
ParameterList & | Insert (ParameterList ¶ms, string name, string value) |
Insert/replace string value into/in parameters list. | |
ParameterList & | Insert (ParameterList ¶ms, const ParameterList &other, const char *prefix=NULL) |
Insert/replace values into/in parameters list. | |
InterpolationMode | InterpolationWithoutPadding (InterpolationMode m) |
Get corresponding interpolation without padding. | |
InterpolationMode | InterpolationWithPadding (InterpolationMode m) |
Get corresponding interpolation with padding. | |
template<class T > | |
UnorderedSet< T > | Intersection (const UnorderedSet< T > &a, const UnorderedSet< T > &b) |
template<class T > | |
MIRTKCU_API int | iround (T x) |
Round floating-point value and cast to int. | |
bool | IsCategoricalArrayName (const string &name) |
bool | IsDiffeo (TransformationModel model) |
Whether a given transformation model is diffeomorphic (velocity parameterization) | |
bool | IsDiffeo (const Array< TransformationModel > &model) |
Whether any given transformation model is a diffeomorphic model. | |
MIRTKCU_API bool | IsInf (double x) |
Check if floating point value represents infinity. | |
bool | IsInteger (const char *str) |
Check if given string is an integer value. | |
bool | IsInterpolationWithoutPadding (InterpolationMode m) |
Whether interpolation mode is "without padding". | |
bool | IsInterpolationWithPadding (InterpolationMode m) |
Whether interpolation mode is "with padding". | |
bool | IsLinear (TransformationModel model) |
Whether a given transformation model is linear. | |
bool | IsLinear (const Array< TransformationModel > &model) |
Whether any given transformation model is linear. | |
bool | IsLinearFFD (TransformationModel model) |
Whether a given transformation model is a FFD with a linear interpolation kernel. | |
bool | IsLinearFFD (const Array< TransformationModel > &model) |
Whether any given transformation model is a FFD with a linear interpolation kernel. | |
MIRTKCU_API bool | IsNaN (double x) |
Check if floating point value is not a number (NaN) | |
bool | IsNonLinear (const Array< TransformationModel > &model) |
Whether any given transformation model is non-linear. | |
bool | IsNumber (const char *str) |
Check if given string is a (floating point) number. | |
bool | IsParallelOption (const char *) |
Check if given option is a parallelization option. | |
bool | IsProfilingOption (const char *) |
Check if given option is a profiling option. | |
bool | IsSpatioTemporal (TransformationModel model) |
Whether a given transformation model is 3D+t. | |
bool | IsSpatioTemporal (const Array< TransformationModel > &model) |
Whether any given transformation model is 3D+t. | |
bool | IsStandardOption (const char *) |
Check if given option is a standard option. | |
bool | IsSurfaceMesh (vtkDataSet *) |
Determine whether a point set is a surface mesh. | |
bool | IsTerminalOption (const char *) |
Check if given option is a terminal option. | |
bool | IsTetrahedralMesh (vtkDataSet *) |
Check whether given point set is a tetrahedral mesh. | |
bool | IsTransformation (const char *name) |
bool | IsTriangularMesh (vtkDataSet *) |
Check whether given point set is a triangular mesh. | |
template<typename T > | |
bool | IsValueOfType (const char *str) |
Check if given string represents a value of the specified template type. | |
MIRTKCU_API bool | IsZero (double a, double tol=1e-12) |
Determine equality of a floating point number with zero. | |
template<class VoxelType > | |
void | Log (GenericImage< VoxelType > *d) |
Compute logarithmic map of displacement field. | |
Matrix | LogEuclideanMean (int n, const Matrix *matrices, const double *weights=NULL) |
MIRTKCU_API double1 | make_double1 (float1 f) |
Create double scalar value. | |
MIRTKCU_API double2 | make_double2 (double s) |
Create double 2D vector from scalar. | |
MIRTKCU_API double2 | make_double2 (float2 f) |
Create double 2D vector from single-precision. | |
MIRTKCU_API double2 | make_double2 (int2 i) |
Create double 2D vector from integer vector. | |
MIRTKCU_API double2 | make_double2 (uint2 i) |
Create double 2D vector from integer vector. | |
MIRTKCU_API double3 | make_double3 (double s) |
Create double 3D vector from scalar. | |
MIRTKCU_API double3 | make_double3 (int3 i) |
Create double 3D vector from integer vector. | |
MIRTKCU_API double3 | make_double3 (uint3 i) |
Create double 3D vector from integer vector. | |
MIRTKCU_API double3 | make_double3 (float3 f) |
Create double 3D vector from single-precision. | |
MIRTKCU_API double4 | make_double4 (double s) |
Create double 4D vector from scalar. | |
MIRTKCU_API double4 | make_double4 (int4 i) |
Create double 4D vector from integer vector. | |
MIRTKCU_API double4 | make_double4 (float4 f) |
Create double 4D vector from single-precision. | |
void | MatrixToAffineParameters (const Matrix &m, double &tx, double &ty, double &tz, double &rx, double &ry, double &rz, double &sx, double &sy, double &sz, double &sxy, double &sxz, double &syz) |
void | MatrixToEulerAngles (const Matrix &m, double &rx, double &ry, double &rz) |
void | MatrixToRigidParameters (const Matrix &m, double &tx, double &ty, double &tz, double &rx, double &ry, double &rz) |
double | MaxEdgeLength (vtkSmartPointer< vtkPoints > points, const EdgeTable &edgeTable) |
double | MaxEdgeLength (vtkSmartPointer< vtkPointSet > pointset) |
template<class T > | |
T | MaxElement (const Array< T > &values) |
Get maximum array element. | |
double | MedianEdgeLength (vtkSmartPointer< vtkPoints >, const EdgeTable &) |
Determine median edge length of point set given a precomputed edge table. | |
double | MedianEdgeLength (vtkSmartPointer< vtkPointSet >) |
Determine median edge length of point set. | |
template<class T > | |
T | MedianValue (const Array< T > &values) |
Get median value. | |
double | MinEdgeLength (vtkSmartPointer< vtkPoints > points, const EdgeTable &edgeTable) |
double | MinEdgeLength (vtkSmartPointer< vtkPointSet > pointset) |
template<class T > | |
T | MinElement (const Array< T > &values) |
Get minimum array element. | |
template<class T > | |
Pair< T, T > | MinMaxElement (const Array< T > &values) |
Get minimum and maximum array element. | |
template<class BaseType , class ObjectType > | |
BaseType * | New () |
Default object creation function. | |
vtkSmartPointer< vtkDataArray > | NewVtkDataArray (int type=VTK_VOID, int tuples=0, int comps=1, const char *name=nullptr) |
vtkSmartPointer< vtkDataArray > | NewVTKDataArray (int type=VTK_VOID) |
vtkSmartPointer< vtkImageData > | NewVtkMask (int nx, int ny, int nz) |
template<class T > | |
T & | NthElement (Array< T > &values, int n) |
template<class T , class Compare > | |
T & | NthElement (Array< T > &values, int n, Compare comp) |
int | NumberOfBoundarySegments (vtkDataSet *, const EdgeTable *=nullptr) |
Number of connected boundary components. | |
int | NumberOfConnectedComponents (vtkDataSet *) |
Number of connected components. | |
int | NumberOfEdges (vtkDataSet *, const EdgeTable *=nullptr) |
Number of edges. | |
int | NumberOfEmptyCells (vtkDataSet *) |
Number of empty/deleted cells. | |
int | NumberOfFaces (vtkDataSet *) |
Number of faces. | |
int | NumberOfPoints (vtkDataSet *) |
Number of points. | |
TransformationJacobian | operator* (TransformationJacobian &a, double s) |
Multiply transformation Jacobian and scalar. | |
TransformationJacobian | operator* (double s, TransformationJacobian &a) |
Multiply transformation Jacobian and scalar. | |
TransformationJacobian | operator* (Matrix &a, TransformationJacobian &b) |
Calculate product of 3x3 matrix and transformation Jacobian. | |
MIRTKCU_API uint3 | operator* (uint3 idx, dim3 dim) |
Multiply blockIdx and blockDim. | |
MIRTKCU_API uint3 | operator* (dim3 dim, uint3 idx) |
Multiply blockDim and blockIdx. | |
MIRTKCU_API float1 | operator* (float1 v, float s) |
Compute product of 1D vector and scalar. | |
MIRTKCU_API float2x2 | operator* (float2x2 m, float s) |
Compute product of 2x2 matrix and scalar. | |
MIRTKCU_API float2x2 | operator* (float s, float2x2 m) |
Compute product of scalar and 2x2 matrix. | |
MIRTKCU_API float2 | operator* (float2x2 m, float2 p) |
Compute product of 2x2 matrix and 2D column vector. | |
MIRTKCU_API float2 | operator* (float2 p, float2x2 m) |
Compute product of 2D row vector and 2x2 matrix. | |
MIRTKCU_API float3x3 | operator* (float3x3 m, float s) |
Compute product of 3x3 matrix and scalar. | |
MIRTKCU_API float3x3 | operator* (float s, float3x3 m) |
Compute product of scalar and 3x3 matrix. | |
MIRTKCU_API float3 | operator* (float3x3 m, float3 p) |
Compute product of 3x3 matrix and 3D column vector. | |
MIRTKCU_API float3 | operator* (float3 p, float3x3 m) |
Compute product of 3D row vector and 3x3 matrix. | |
MIRTKCU_API float3x4 | operator* (float3x4 m, float s) |
Compute product of 3x4 matrix and scalar. | |
MIRTKCU_API float3x4 | operator* (float s, float3x4 m) |
Compute product of scalar and 3x4 matrix. | |
MIRTKCU_API float2 | operator* (float3x4 m, float2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D point. | |
MIRTKCU_API float2 | operator* (float3x4 m, int2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D voxel. | |
MIRTKCU_API float2 | operator* (float3x4 m, uint2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D voxel. | |
MIRTKCU_API float3 | operator* (float3x4 m, float3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D point. | |
MIRTKCU_API float3 | operator* (float3x4 m, int3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D voxel. | |
MIRTKCU_API float3 | operator* (float3x4 m, uint3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D voxel. | |
MIRTKCU_API float4x4 | operator* (float4x4 m, float s) |
Compute product of 4x4 matrix and scalar. | |
MIRTKCU_API float4x4 | operator* (float s, float4x4 m) |
Compute product of scalar and 4x4 matrix. | |
MIRTKCU_API float2x2 | operator* (float2x2 m, float2x2 n) |
Compute product of 2x2 matrices. | |
MIRTKCU_API float3x3 | operator* (float3x3 m, float3x3 n) |
Compute product of 3x3 matrices. | |
MIRTKCU_API double1 | operator* (double1 v, double s) |
Compute product of 1D vector and scalar. | |
MIRTKCU_API double1 | operator* (double s, double1 a) |
Compute product of scalar and 1D vector. | |
MIRTKCU_API double2 | operator* (double2 v, double s) |
Compute product of 2D vector and scalar. | |
MIRTKCU_API double2 | operator* (double s, double2 a) |
Compute product of scalar and 2D vector. | |
MIRTKCU_API double3 | operator* (double3 v, double s) |
Compute product of 3D vector and scalar. | |
MIRTKCU_API double3 | operator* (double s, double3 a) |
Compute product of scalar and 3D vector. | |
MIRTKCU_API double4 | operator* (double4 v, double s) |
Compute product of 4D vector and scalar. | |
MIRTKCU_API double4 | operator* (double s, double4 a) |
Compute product of scalar and 4D vector. | |
MIRTKCU_API double1 | operator* (double1 a, double1 b) |
Compute element-wise product of 1D vectors. | |
MIRTKCU_API double2 | operator* (double2 a, double2 b) |
Compute element-wise product of 2D vectors. | |
MIRTKCU_API double3 | operator* (double3 a, double3 b) |
Compute element-wise product of 3D vectors. | |
MIRTKCU_API double4 | operator* (double4 a, double4 b) |
Compute element-wise product of 4D vectors. | |
MIRTKCU_API double2x2 | operator* (double2x2 m, double s) |
Compute product of 2x2 matrix and scalar. | |
MIRTKCU_API double2x2 | operator* (double s, double2x2 m) |
Compute product of scalar and 2x2 matrix. | |
MIRTKCU_API double2 | operator* (double2x2 m, double2 p) |
Compute product of 2x2 matrix and 2D column vector. | |
MIRTKCU_API double2 | operator* (double2 p, double2x2 m) |
Compute product of transpose of 2D row vector and 2x2 matrix. | |
MIRTKCU_API double3x3 | operator* (double3x3 m, double s) |
Compute product of 3x3 matrix and scalar. | |
MIRTKCU_API double3x3 | operator* (double s, double3x3 m) |
Compute product of scalar and 3x3 matrix. | |
MIRTKCU_API double3 | operator* (double3x3 m, double3 p) |
Compute product of 3x3 matrix and 3D column vector. | |
MIRTKCU_API double3 | operator* (double3 p, double3x3 m) |
Compute product of transpose of 3D row vector and 3x3 matrix. | |
MIRTKCU_API double3x4 | operator* (double3x4 m, double s) |
Compute product of 3x4 matrix and scalar. | |
MIRTKCU_API double3x4 | operator* (double s, double3x4 m) |
Compute product of scalar and 3x4 matrix. | |
MIRTKCU_API double4x4 | operator* (double4x4 m, double s) |
Compute product of 4x4 matrix and scalar. | |
MIRTKCU_API double4x4 | operator* (double s, double4x4 m) |
Compute product of scalar and 4x4 matrix. | |
MIRTKCU_API double2 | operator* (double3x4 m, double2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D point. | |
MIRTKCU_API double2 | operator* (double3x4 m, int2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D voxel. | |
MIRTKCU_API double2 | operator* (double3x4 m, uint2 p) |
Compute product of 3x4 coordinate transformation matrix and 2D voxel. | |
MIRTKCU_API double3 | operator* (double3x4 m, double3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D point. | |
MIRTKCU_API double3 | operator* (double3x4 m, int3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D voxel. | |
MIRTKCU_API double3 | operator* (double3x4 m, uint3 p) |
Compute product of 3x4 coordinate transformation matrix and 3D voxel. | |
MIRTKCU_API double2x2 | operator* (double2x2 m, double2x2 n) |
Compute product of 2x2 matrices. | |
MIRTKCU_API double3x3 | operator* (double3x3 m, double3x3 n) |
Compute product of 3x3 matrices. | |
MIRTKCU_API void | operator*= (float2x2 &m, float s) |
Multiply 2x2 matrix by a scalar. | |
MIRTKCU_API void | operator*= (float3x3 &m, float s) |
Multiply 3x3 matrix by a scalar. | |
MIRTKCU_API void | operator*= (float3x4 &m, float s) |
Multiply 3x4 matrix by a scalar. | |
MIRTKCU_API void | operator*= (float4x4 &m, float s) |
Multiply 4x4 matrix by a scalar. | |
MIRTKCU_API void | operator*= (float2x2 &m, float2x2 n) |
Compute product of 2x2 matrices. | |
MIRTKCU_API void | operator*= (float3x3 &m, float3x3 n) |
Compute product of 3x3 matrices. | |
MIRTKCU_API void | operator*= (double1 &a, double s) |
Compute product of 1D vector and scalar. | |
MIRTKCU_API void | operator*= (double2 &a, double s) |
Compute product of 2D vector and scalar. | |
MIRTKCU_API void | operator*= (double3 &a, double s) |
Compute product of 3D vector and scalar. | |
MIRTKCU_API void | operator*= (double4 &a, double s) |
Compute product of 4D vector and scalar. | |
MIRTKCU_API void | operator*= (double1 &a, double1 b) |
Compute element-wise product of 1D vectors. | |
MIRTKCU_API void | operator*= (double2 &a, double2 b) |
Compute element-wise product of 2D vectors. | |
MIRTKCU_API void | operator*= (double3 &a, double3 b) |
Compute element-wise product of 3D vectors. | |
MIRTKCU_API void | operator*= (double4 &a, double4 b) |
Compute element-wise product of 4D vectors. | |
MIRTKCU_API void | operator*= (double2x2 &m, double s) |
Multiply 2x2 matrix by a scalar. | |
MIRTKCU_API void | operator*= (double3x3 &m, double s) |
Multiply 3x3 matrix by a scalar. | |
MIRTKCU_API void | operator*= (double3x4 &m, double s) |
Multiply 3x4 matrix by a scalar. | |
MIRTKCU_API void | operator*= (double4x4 &m, double s) |
Multiply 4x4 matrix by a scalar. | |
MIRTKCU_API void | operator*= (double2x2 &m, double2x2 n) |
Compute product of 2x2 matrices. | |
MIRTKCU_API void | operator*= (double3x3 &m, double3x3 n) |
Compute product of 3x3 matrices. | |
TransformationJacobian | operator+ (TransformationJacobian &a, TransformationJacobian &b) |
Calculate column-by-column sum of transformation Jacobian. | |
MIRTKCU_API float1 | operator+ (float1 a, float1 b) |
Add two 1D vectors. | |
MIRTKCU_API float2x2 | operator+ (float2x2 m, float s) |
Add scalar to 2x2 matrix. | |
MIRTKCU_API float3x3 | operator+ (float3x3 m, float s) |
Add scalar to 3x3 matrix. | |
MIRTKCU_API float3x4 | operator+ (float3x4 m, float s) |
Add scalar to 3x4 matrix. | |
MIRTKCU_API float4x4 | operator+ (float4x4 m, float s) |
Add scalar to 4x4 matrix. | |
MIRTKCU_API float2x2 | operator+ (float2x2 a, float2x2 b) |
Add two 2x2 matrices. | |
MIRTKCU_API float3x3 | operator+ (float3x3 a, float3x3 b) |
Add two 3x3 matrices. | |
MIRTKCU_API float3x4 | operator+ (float3x4 a, float3x4 b) |
Add two 3x4 matrices. | |
MIRTKCU_API float4x4 | operator+ (float4x4 a, float4x4 b) |
Add two 4x4 matrices. | |
MIRTKCU_API double1 | operator+ (double1 a, double s) |
Add scalar to 1D vector. | |
MIRTKCU_API double1 | operator+ (double s, double1 a) |
Add scalar to 1D vector. | |
MIRTKCU_API double2 | operator+ (double2 a, double s) |
Add scalar to 2D vector. | |
MIRTKCU_API double2 | operator+ (double s, double2 a) |
Add scalar to 2D vector. | |
MIRTKCU_API double3 | operator+ (double3 a, double s) |
Add scalar to 3D vector. | |
MIRTKCU_API double3 | operator+ (double s, double3 a) |
Add scalar to 3D vector. | |
MIRTKCU_API double4 | operator+ (double4 a, double s) |
Add scalar to 4D vector. | |
MIRTKCU_API double4 | operator+ (double s, double4 a) |
Add scalar to 4D vector. | |
MIRTKCU_API double2x2 | operator+ (double2x2 m, double s) |
Add scalar to 2x2 matrix. | |
MIRTKCU_API double3x3 | operator+ (double3x3 m, double s) |
Add scalar to 3x3 matrix. | |
MIRTKCU_API double3x4 | operator+ (double3x4 m, double s) |
Add scalar to 3x4 matrix. | |
MIRTKCU_API double4x4 | operator+ (double4x4 m, double s) |
Add scalar to 4x4 matrix. | |
MIRTKCU_API double1 | operator+ (double1 a, double1 b) |
Add two 1D vectors. | |
MIRTKCU_API double2 | operator+ (double2 a, double2 b) |
Add two 2D vectors. | |
MIRTKCU_API double3 | operator+ (double3 a, double3 b) |
Add two 3D vectors. | |
MIRTKCU_API double4 | operator+ (double4 a, double4 b) |
Add two 4D vectors. | |
MIRTKCU_API double2x2 | operator+ (double2x2 a, double2x2 b) |
Add two 2x2 matrices. | |
MIRTKCU_API double3x3 | operator+ (double3x3 a, double3x3 b) |
Add two 3x3 matrices. | |
MIRTKCU_API double3x4 | operator+ (double3x4 a, double3x4 b) |
Add two 3x4 matrices. | |
MIRTKCU_API double4x4 | operator+ (double4x4 a, double4x4 b) |
Add two 4x4 matrices. | |
MIRTKCU_API void | operator+= (float1 &a, float1 b) |
Add two 1D vectors. | |
MIRTKCU_API void | operator+= (float2x2 &m, float s) |
Add scalar to 2x2 matrix. | |
MIRTKCU_API void | operator+= (float3x3 &m, float s) |
Add scalar to 3x3 matrix. | |
MIRTKCU_API void | operator+= (float3x4 &m, float s) |
Add scalar to 3x4 matrix. | |
MIRTKCU_API void | operator+= (float4x4 &m, float s) |
Add scalar to 4x4 matrix. | |
MIRTKCU_API void | operator+= (float2x2 &a, float2x2 b) |
Add two 2x2 matrices. | |
MIRTKCU_API void | operator+= (float3x3 &a, float3x3 b) |
Add two 3x3 matrices. | |
MIRTKCU_API void | operator+= (float3x4 &a, float3x4 b) |
Add two 3x4 matrices. | |
MIRTKCU_API void | operator+= (float4x4 &a, float4x4 b) |
Add two 4x4 matrices. | |
MIRTKCU_API void | operator+= (double1 &a, double s) |
Add scalar to 1D vector. | |
MIRTKCU_API void | operator+= (double2 &a, double s) |
Add scalar to 2D vector. | |
MIRTKCU_API void | operator+= (double3 &a, double s) |
Add scalar to 3D vector. | |
MIRTKCU_API void | operator+= (double4 &a, double s) |
Add scalar to 4D vector. | |
MIRTKCU_API void | operator+= (double2x2 &m, double s) |
Add scalar to 2x2 matrix. | |
MIRTKCU_API void | operator+= (double3x3 &m, double s) |
Add scalar to 3x3 matrix. | |
MIRTKCU_API void | operator+= (double3x4 &m, double s) |
Add scalar to 3x4 matrix. | |
MIRTKCU_API void | operator+= (double4x4 &m, double s) |
Add scalar to 4x4 matrix. | |
MIRTKCU_API void | operator+= (double1 &a, double1 b) |
Add two 1D vectors. | |
MIRTKCU_API void | operator+= (double2 &a, double2 b) |
Add two 2D vectors. | |
MIRTKCU_API void | operator+= (double3 &a, double3 b) |
Add two 3D vectors. | |
MIRTKCU_API void | operator+= (double4 &a, double4 b) |
Add two 4D vectors. | |
MIRTKCU_API void | operator+= (double2x2 &a, double2x2 b) |
Add two 2x2 matrices. | |
MIRTKCU_API void | operator+= (double3x3 &a, double3x3 b) |
Add two 3x3 matrices. | |
MIRTKCU_API void | operator+= (double3x4 &a, double3x4 b) |
Add two 3x4 matrices. | |
MIRTKCU_API void | operator+= (double4x4 &a, double4x4 b) |
Add two 4x4 matrices. | |
MIRTKCU_API float1 | operator- (float1 a, float1 b) |
Subtract two 1D vectors. | |
MIRTKCU_API float2x2 | operator- (float2x2 m, float s) |
Subtract scalar from 2x2 matrix. | |
MIRTKCU_API float3x3 | operator- (float3x3 m, float s) |
Subtract scalar from 3x3 matrix. | |
MIRTKCU_API float3x4 | operator- (float3x4 m, float s) |
Subtract scalar from 3x4 matrix. | |
MIRTKCU_API float4x4 | operator- (float4x4 m, float s) |
Subtract scalar from 4x4 matrix. | |
MIRTKCU_API float2x2 | operator- (float2x2 a, float2x2 b) |
Subtract two 2x2 matrices. | |
MIRTKCU_API float3x3 | operator- (float3x3 a, float3x3 b) |
Subtract two 3x3 matrices. | |
MIRTKCU_API float3x4 | operator- (float3x4 a, float3x4 b) |
Subtract two 3x4 matrices. | |
MIRTKCU_API float4x4 | operator- (float4x4 a, float4x4 b) |
Subtract two 4x4 matrices. | |
MIRTKCU_API double1 | operator- (double1 a, double s) |
Subtract scalar from 1D vector. | |
MIRTKCU_API double1 | operator- (double s, double1 a) |
Subtract 1D vector from scalar. | |
MIRTKCU_API double2 | operator- (double2 a, double s) |
Subtract scalar from 2D vector. | |
MIRTKCU_API double2 | operator- (double s, double2 a) |
Subtract 2D vector from scalar. | |
MIRTKCU_API double3 | operator- (double3 a, double s) |
Subtract scalar from 3D vector. | |
MIRTKCU_API double3 | operator- (double s, double3 a) |
Subtract 3D vector from scalar. | |
MIRTKCU_API double4 | operator- (double4 a, double s) |
Subtract scalar from 4D vector. | |
MIRTKCU_API double4 | operator- (double s, double4 a) |
Subtract 4D vector from scalar. | |
MIRTKCU_API double2x2 | operator- (double2x2 m, double s) |
Subtract scalar from 2x2 matrix. | |
MIRTKCU_API double3x3 | operator- (double3x3 m, double s) |
Subtract scalar from 3x3 matrix. | |
MIRTKCU_API double3x4 | operator- (double3x4 m, double s) |
Subtract scalar from 3x4 matrix. | |
MIRTKCU_API double4x4 | operator- (double4x4 m, double s) |
Subtract scalar from 4x4 matrix. | |
MIRTKCU_API double1 | operator- (double1 a, double1 b) |
Subtract two 1D vectors. | |
MIRTKCU_API double2 | operator- (double2 a, double2 b) |
Subtract two 2D vectors. | |
MIRTKCU_API double3 | operator- (double3 a, double3 b) |
Subtract two 3D vectors. | |
MIRTKCU_API double4 | operator- (double4 a, double4 b) |
Subtract two 4D vectors. | |
MIRTKCU_API double2x2 | operator- (double2x2 a, double2x2 b) |
Subtract two 2x2 matrices. | |
MIRTKCU_API double3x3 | operator- (double3x3 a, double3x3 b) |
Subtract two 3x3 matrices. | |
MIRTKCU_API double3x4 | operator- (double3x4 a, double3x4 b) |
Subtract two 3x4 matrices. | |
MIRTKCU_API double4x4 | operator- (double4x4 a, double4x4 b) |
Subtract two 4x4 matrices. | |
MIRTKCU_API void | operator-= (float1 &a, float1 b) |
Subtract two 1D vectors. | |
MIRTKCU_API void | operator-= (float2x2 &m, float s) |
Subtract scalar from 2x2 matrix. | |
MIRTKCU_API void | operator-= (float3x3 &m, float s) |
Subtract scalar from 3x3 matrix. | |
MIRTKCU_API void | operator-= (float3x4 &m, float s) |
Subtract scalar from 3x4 matrix. | |
MIRTKCU_API void | operator-= (float4x4 &m, float s) |
Subtract scalar from 4x4 matrix. | |
MIRTKCU_API void | operator-= (float2x2 &a, float2x2 b) |
Subtract two 2x2 matrices. | |
MIRTKCU_API void | operator-= (float3x3 &a, float3x3 b) |
Subtract two 3x3 matrices. | |
MIRTKCU_API void | operator-= (float3x4 &a, float3x4 b) |
Subtract two 3x4 matrices. | |
MIRTKCU_API void | operator-= (float4x4 &a, float4x4 b) |
Subtract two 4x4 matrices. | |
MIRTKCU_API void | operator-= (double1 &a, double s) |
Subtract scalar from 1D vector. | |
MIRTKCU_API void | operator-= (double2 &a, double s) |
Subtract scalar from 2D vector. | |
MIRTKCU_API void | operator-= (double3 &a, double s) |
Subtract scalar from 3D vector. | |
MIRTKCU_API void | operator-= (double4 &a, double s) |
Subtract scalar from 4D vector. | |
MIRTKCU_API void | operator-= (double2x2 &m, double s) |
Subtract scalar from 2x2 matrix. | |
MIRTKCU_API void | operator-= (double3x3 &m, double s) |
Subtract scalar from 3x3 matrix. | |
MIRTKCU_API void | operator-= (double3x4 &m, double s) |
Subtract scalar from 3x4 matrix. | |
MIRTKCU_API void | operator-= (double4x4 &m, double s) |
Subtract scalar from 4x4 matrix. | |
MIRTKCU_API void | operator-= (double1 &a, double1 b) |
Subtract two 1D vectors. | |
MIRTKCU_API void | operator-= (double2 &a, double2 b) |
Subtract two 2D vectors. | |
MIRTKCU_API void | operator-= (double3 &a, double3 b) |
Subtract two 3D vectors. | |
MIRTKCU_API void | operator-= (double4 &a, double4 b) |
Subtract two 4D vectors. | |
MIRTKCU_API void | operator-= (double2x2 &a, double2x2 b) |
Subtract two 2x2 matrices. | |
MIRTKCU_API void | operator-= (double3x3 &a, double3x3 b) |
Subtract two 3x3 matrices. | |
MIRTKCU_API void | operator-= (double3x4 &a, double3x4 b) |
Subtract two 3x4 matrices. | |
MIRTKCU_API void | operator-= (double4x4 &a, double4x4 b) |
Subtract two 4x4 matrices. | |
MIRTKCU_API float2x2 | operator/ (float2x2 m, float s) |
Compute division of 2x2 matrix by scalar. | |
MIRTKCU_API float3x3 | operator/ (float3x3 m, float s) |
Compute division of 3x3 matrix by scalar. | |
MIRTKCU_API float3x4 | operator/ (float3x4 m, float s) |
Compute division of 3x4 matrix by scalar. | |
MIRTKCU_API float4x4 | operator/ (float4x4 m, float s) |
Compute division of 4x4 matrix by scalar. | |
MIRTKCU_API double1 | operator/ (double1 v, double s) |
Compute division of 1D vector by scalar. | |
MIRTKCU_API double2 | operator/ (double2 v, double s) |
Compute division of 2D vector by scalar. | |
MIRTKCU_API double3 | operator/ (double3 v, double s) |
Compute division of 3D vector by scalar. | |
MIRTKCU_API double4 | operator/ (double4 v, double s) |
Compute division of 4D vector by scalar. | |
MIRTKCU_API double2x2 | operator/ (double2x2 m, double s) |
Compute division of 2x2 matrix by scalar. | |
MIRTKCU_API double3x3 | operator/ (double3x3 m, double s) |
Compute division of 3x3 matrix by scalar. | |
MIRTKCU_API double3x4 | operator/ (double3x4 m, double s) |
Compute division of 3x4 matrix by scalar. | |
MIRTKCU_API double4x4 | operator/ (double4x4 m, double s) |
Compute division of 4x4 matrix by scalar. | |
MIRTKCU_API double1 | operator/ (double1 a, double1 b) |
Compute element-wise division of 1D vectors. | |
MIRTKCU_API double2 | operator/ (double2 a, double2 b) |
Compute element-wise division of 2D vectors. | |
MIRTKCU_API double3 | operator/ (double3 a, double3 b) |
Compute element-wise division of 3D vectors. | |
MIRTKCU_API double4 | operator/ (double4 a, double4 b) |
Compute element-wise division of 4D vectors. | |
MIRTKCU_API void | operator/= (float2x2 &m, float s) |
Divide 2x2 matrix by a scalar. | |
MIRTKCU_API void | operator/= (float3x3 &m, float s) |
Divide 3x3 matrix by a scalar. | |
MIRTKCU_API void | operator/= (float3x4 &m, float s) |
Divide 3x4 matrix by a scalar. | |
MIRTKCU_API void | operator/= (float4x4 &m, float s) |
Divide 4x4 matrix by a scalar. | |
MIRTKCU_API void | operator/= (double1 &a, double s) |
Compute division of 1D vector by scalar. | |
MIRTKCU_API void | operator/= (double2 &a, double s) |
Compute division of 2D vector by scalar. | |
MIRTKCU_API void | operator/= (double3 &a, double s) |
Compute division of 3D vector by scalar. | |
MIRTKCU_API void | operator/= (double4 &a, double s) |
Compute division of 4D vector by scalar. | |
MIRTKCU_API void | operator/= (double2x2 &m, double s) |
Divide 2x2 matrix by a scalar. | |
MIRTKCU_API void | operator/= (double3x3 &m, double s) |
Divide 3x3 matrix by a scalar. | |
MIRTKCU_API void | operator/= (double3x4 &m, double s) |
Divide 3x4 matrix by a scalar. | |
MIRTKCU_API void | operator/= (double4x4 &m, double s) |
Divide 4x4 matrix by a scalar. | |
MIRTKCU_API void | operator/= (double1 &a, double1 b) |
Compute element-wise division of 1D vectors. | |
MIRTKCU_API void | operator/= (double2 &a, double2 b) |
Compute element-wise division of 2D vectors. | |
MIRTKCU_API void | operator/= (double3 &a, double3 b) |
Compute element-wise division of 3D vectors. | |
MIRTKCU_API void | operator/= (double4 &a, double4 b) |
Compute element-wise division of 4D vectors. | |
MIRTKCU_API bool | operator< (const float1 &a, const float1 &b) |
Check if 1D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const float2 &a, const float2 &b) |
Check if 2D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const float3 &a, const float3 &b) |
Check if 3D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const float4 &a, const float4 &b) |
Check if 4D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const double1 &a, const double1 &b) |
Check if 1D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const double2 &a, const double2 &b) |
Check if 2D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const double3 &a, const double3 &b) |
Check if 3D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (const double4 &a, const double4 &b) |
Check if 4D vector is lexicographically less than another. | |
MIRTKCU_API bool | operator< (uint3 p, uint3 dim) |
Comparison operator for voxel coordinates with image dimensions. | |
ostream & | operator<< (ostream &os, const Version &version) |
Write version to output stream. | |
Cofstream & | operator<< (Cofstream &, const PointSet &) |
Write point set to binary output file stream. | |
ostream & | operator<< (ostream &, const PointSet &) |
Write point set to text output stream. | |
ostream & | operator<< (ostream &, const Point &) |
Write point coordinates to output stream. | |
MIRTKCU_API bool | operator== (const float1 &a, const float1 &b) |
Check two 1D vectors for equality. | |
MIRTKCU_API bool | operator== (const float2 &a, const float2 &b) |
Check two 2D vectors for equality. | |
MIRTKCU_API bool | operator== (const float3 &a, const float3 &b) |
Check two 3D vectors for equality. | |
MIRTKCU_API bool | operator== (const float4 &a, const float4 &b) |
Check two 4D vectors for equality. | |
MIRTKCU_API bool | operator== (const float3x3 &a, const float3x3 &b) |
Check two 3x3 matrices for equality. | |
MIRTKCU_API bool | operator== (const float3x4 &a, const float3x4 &b) |
Check two 3x4 matrices for equality. | |
MIRTKCU_API bool | operator== (const float4x4 &a, const float4x4 &b) |
Check two 4x4 matrices for equality. | |
MIRTKCU_API bool | operator== (const double1 &a, const double1 &b) |
Check two 1D vectors for equality. | |
MIRTKCU_API bool | operator== (const double2 &a, const double2 &b) |
Check two 2D vectors for equality. | |
MIRTKCU_API bool | operator== (const double3 &a, const double3 &b) |
Check two 3D vectors for equality. | |
MIRTKCU_API bool | operator== (const double4 &a, const double4 &b) |
Check two 4D vectors for equality. | |
MIRTKCU_API bool | operator== (const double3x3 &a, const double3x3 &b) |
Check two 3x3 matrices for equality. | |
MIRTKCU_API bool | operator== (const double3x4 &a, const double3x4 &b) |
Check two 3x4 matrices for equality. | |
MIRTKCU_API bool | operator== (const double4x4 &a, const double4x4 &b) |
Check two 4x4 matrices for equality. | |
MIRTKCU_API bool | operator== (uint3 p, unsigned int s) |
Component-wise comparison operator for voxel coordinates with scalar value. | |
MIRTKCU_API bool | operator> (uint3 p, uint3 dim) |
Comparison operator for voxel coordinates with image dimensions. | |
MIRTKCU_API bool | operator>= (uint3 p, uint3 dim) |
Comparison operator for voxel coordinates with image dimensions. | |
istream & | operator>> (istream &is, Version &version) |
Read version from input stream. | |
Cifstream & | operator>> (Cifstream &, PointSet &) |
Read point set from binary input file stream. | |
istream & | operator>> (istream &, PointSet &) |
Read point set from text input stream. | |
istream & | operator>> (istream &, Point &) |
Read point coordiantes from input stream. | |
ImageAttributes | OrthogonalFieldOfView (const ImageAttributes &) |
void | OrthoNormalize3x3 (Matrix &) |
Orthonormalize upper 3x3 matrix using stabilized Gram-Schmidt. | |
ImageAttributes | OverallFieldOfView (const Array< ImageAttributes > &) |
template<typename Type > | |
void | PAllocate (Type **&matrix, int n) |
Allocate 1D array of pointers initialized to nullptr. | |
template<typename Type > | |
Type ** | PAllocate (int n) |
Allocate 1D array of pointers initialized to nullptr. | |
template<class Range , class Body > | |
void | parallel_for (const Range &range, const Body &body) |
parallel_for dummy template function which executes the body serially | |
template<class Range , class Body > | |
void | parallel_reduce (const Range &range, Body &body) |
parallel_reduce dummy template function which executes the body serially | |
string | ParameterUnits (const string &str, string *name=nullptr, const char *dflt="") |
void | ParseParallelOption (int &, int &, char *[]) |
Parse parallelization option. | |
void | ParseProfilingOption (int &, int &, char *[]) |
Parse profiling option. | |
void | ParseStandardOption (int &, int &, char *[]) |
Parse standard option. | |
void | ParseTerminalOption (int &, int &, char *[]) |
Parse terminal option. | |
template<class T > | |
void | PartialSort (Array< T > &values, int n) |
Sort first n values in array. | |
template<class T , class Compare > | |
void | PartialSort (Array< T > &values, int n, Compare comp) |
Sort values in array using custom comparator. | |
template<class T > | |
Array< T > | Permutation (const Array< int > &order, const Array< T > &values) |
ImageAttributes | PointSetDomain (vtkPointSet *data, double dx=-1, double dy=-1, double dz=-1) |
ImageAttributes | PointSetDomain (vtkPointSet *data, const Vector3D< double > &ds) |
int | PolyDataAttributeType (const char *type) |
ImageAttributes | PolyDataDomain (vtkPolyData *data, double dx=-1, double dy=-1, double dz=-1) |
ImageAttributes | PolyDataDomain (vtkPolyData *data, const Vector3D< double > &ds) |
EdgeList | PopPointEdges (EdgeList &edges, int ptId) |
template<typename T > | |
std::ostream & | Print (std::ostream &os, T value) |
Print single argument to output stream. | |
template<typename T , typename... Args> | |
std::ostream & | Print (std::ostream &os, T value, Args... args) |
void | PrintElapsedTime (const char *, double, TimeUnit=TIME_IN_SECONDS) |
Print elapsed time for profiled section. | |
void | PrintParallelOptions (ostream &) |
Print parallelization command-line options. | |
void | PrintParameter (std::ostream &os, const char *name, const char *value) |
Write "<name> = <value>" configuration entry to output stream. | |
void | PrintParameter (std::ostream &os, const char *name, const string &value) |
Write "<name> = <value>" configuration entry to output stream. | |
void | PrintParameter (std::ostream &os, const string &name, const string &value) |
Write "<name> = <value>" configuration entry to output stream. | |
template<class TValue > | |
void | PrintParameter (std::ostream &os, const char *name, const TValue &value) |
Write "<name> = <value>" configuration entry to output stream. | |
template<class TValue > | |
void | PrintParameter (std::ostream &os, const string &name, const TValue &value) |
Write "<name> = <value>" configuration entry to output stream. | |
void | PrintProfilingOptions (ostream &) |
Print profiling command-line options. | |
void | PrintRevision (ostream &) |
Print software revision number (or version if not available) only. | |
void | PrintTerminalOptions (ostream &) |
Print terminal command-line options. | |
void | PrintVersion (ostream &, const char *=NULL) |
Print build time stamp as version string. | |
vtkSmartPointer< vtkPolyData > | ReadDFS (const char *fname) |
MIRTK_Common_DEPRECATED float | ReadFloat (std::ifstream &) |
General routine to read float from a file stream. | |
MIRTK_Common_DEPRECATED int | ReadInt (std::ifstream &) |
General routine to read float from a file stream. | |
vtkSmartPointer< vtkPolyData > | ReadOFF (const char *fname) |
vtkSmartPointer< vtkPointSet > | ReadPointSet (const char *fname, bool exit_on_failure=true) |
vtkSmartPointer< vtkPointSet > | ReadPointSet (const char *fname, FileOption &fopt, bool exit_on_failure=true) |
vtkSmartPointer< vtkPointSet > | ReadPointSetTable (const char *fname, char sep=',', vtkPointSet *pointset=nullptr) |
vtkSmartPointer< vtkPolyData > | ReadPolyData (const char *fname, bool exit_on_failure=true) |
vtkSmartPointer< vtkPolyData > | ReadPolyData (const char *fname, FileOption &fopt, bool exit_on_failure=true) |
MIRTK_Common_DEPRECATED char * | ReadString (std::ifstream &) |
General routine to read list of char (string) from a file stream. | |
ParameterList & | Remove (ParameterList ¶ms, string name) |
Remove parameter from parameters list. | |
template<class Type > | |
Type ** | Reshape (Type **matrix, int x, int y) |
Reshape 2D array stored in contiguous memory block. | |
template<class Type > | |
Type *** | Reshape (Type ***matrix, int x, int y, int z) |
Reshape 3D array stored in contiguous memory block. | |
template<class Type > | |
Type **** | Reshape (Type ****matrix, int x, int y, int z, int t) |
Reshape 4D array stored in contiguous memory block. | |
void | RigidParametersToMatrix (double tx, double ty, double tz, double cosrx, double cosry, double cosrz, double sinrx, double sinry, double sinrz, Matrix &m) |
void | RigidParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz, Matrix &m) |
Matrix | RigidParametersToMatrix (double tx, double ty, double tz, double rx, double ry, double rz) |
double | RobustAverageEdgeLength (vtkSmartPointer< vtkPoints >, const EdgeTable &) |
double | RobustAverageEdgeLength (vtkSmartPointer< vtkPointSet >) |
Determine average edge length of point set. | |
void | Scale (vtkSmartPointer< vtkPointSet > pointset, double) |
Scale point set around center. | |
template<typename T > | |
MIRTKCU_API int | sgn (T val) |
Sign function - https://en.wikipedia.org/wiki/Sign_function. | |
template<class T > | |
void | Sort (Array< T > &values) |
Sort values in array. | |
template<class T , class Compare > | |
void | Sort (Array< T > &values, Compare comp) |
Sort values in array using custom comparator. | |
template<class TReal > | |
void | SplinePoles (int degree, TReal pole[2], int &npoles) |
Recover spline poles from a lookup table. | |
Array< string > | Split (string s, const char *d, int n=0, bool e=false, bool q=false) |
Array< string > | Split (string s, char d, int n=0, bool e=false, bool q=false) |
Vector | SquaredEdgeLengths (vtkSmartPointer< vtkPoints >, const EdgeTable &) |
Compute squared edge lengths of point set given a precomputed edge table. | |
double | SShapedMembershipFunction (double x, double a, double b) |
template<class T > | |
void | StableSort (Array< T > &values) |
Sort values in array while preserving order of equal entries. | |
template<class T , class Compare > | |
void | StableSort (Array< T > &values, Compare comp) |
Sort values in array while preserving order of equal entries. | |
string | StandardUnits (const string &str) |
void | swap16 (char *, char *, long) |
Swap bytes of a single word. | |
void | swap32 (char *, char *, long) |
Swap bytes of two word. | |
void | swap64 (char *, char *, long) |
Swap bytes of four word. | |
vtkSmartPointer< vtkPointSet > | Tetrahedralize (vtkSmartPointer< vtkPointSet >) |
Tetrahedralize the interior of a piecewise linear complex (PLC) | |
template<typename... Args> | |
void | Throw (ErrorType err, const char *func, Args... args) |
template<class VoxelType > | |
MIRTKCU_HOST_API float * | to_float (const VoxelType *in, unsigned int N) |
Copy and cast image to single-precision floating point. | |
string | ToLower (const string &) |
Convert string to lowercase letters. | |
string | ToPrettyString (const EnergyMeasure &value, int w=0, char c=' ', bool left=true) |
Convert energy measure enumeration value to human-friendly descriptive string. | |
template<> | |
string | ToString (const ErrorType &value, int w, char c, bool left) |
Convert error type to string. | |
template<> | |
string | ToString (const FFDIM &m, int w, char c, bool left) |
Convert FFD integration method enumeration value to string. | |
template<> | |
string | ToString (const NiftiIntent &value, int w, char c, bool left) |
Convert NIfTI intent code to string. | |
template<> | |
string | ToString (const ImageDataType &, int, char, bool) |
Convert image data type enumeration value to string. | |
template<> | |
string | ToString (const ConnectivityType &value, int w, char c, bool left) |
Convert image connectivity type to string. | |
template<> | |
string | ToString (const vtkDataSetAttributes::AttributeTypes &type, int w, char c, bool left) |
Convert vtkDataSetAttributes::AttributeType to string. | |
template<> | |
string | ToString (const ConnectedComponentsOrdering &value, int w, char c, bool left) |
Convert connected components ordering to string. | |
template<> | |
string | ToString (const EnergyMeasure &value, int w, char c, bool left) |
Convert energy measure enumeration value to string. | |
template<typename T > | |
string | ToString (const T &value, int w=0, char c=' ', bool left=false) |
Convert numeric value to string. | |
template<> | |
string | ToString (const enum ImplicitSurfaceForce::DistanceMeasureType &value, int w, char c, bool left) |
Convert implicit surface distance measure enumeration value to string. | |
template<> | |
string | ToString (const bool &value, int w, char c, bool left) |
Convert boolean value to string. | |
TransformationType | ToTransformationType (TransformationModel model, const ImageAttributes &domain) |
string | ToUpper (const string &) |
Convert string to uppercase letters. | |
template<class T , class UnaryOperation > | |
void | Transform (Array< T > &values, UnaryOperation op) |
Apply unary operation for each array element in-place. | |
void | Transform (const Matrix &m, double x, double y, double z, double &mx, double &my, double &mz) |
Muliply point by homogeneous transformation matrix. | |
void | Transform (const Matrix &m, double &x, double &y, double &z) |
Muliply point by homogeneous transformation matrix. | |
Point | Transform (const Matrix &m, const Point &p) |
Muliply point by homogeneous transformation matrix. | |
void | TransformVector (const Matrix &m, double x, double y, double z, double &mx, double &my, double &mz) |
Muliply vector by 3x3 transformation matrix. | |
void | TransformVector (const Matrix &m, double &x, double &y, double &z) |
Muliply vector by 3x3 transformation matrix. | |
void | TransformVector (const Matrix &m, Vector &v) |
Muliply vector by 3x3 transformation matrix. | |
Vector | TransformVector (const Matrix &m, const Vector &v) |
Muliply vector by 3x3 transformation matrix. | |
MIRTKCU_API float2x2 | transpose (float2x2 m) |
Transpose 2x2 matrix. | |
MIRTKCU_API float3x3 | transpose (float3x3 m) |
Transpose 3x3 matrix. | |
MIRTKCU_API double2x2 | transpose (double2x2 m) |
Transpose 2x2 matrix. | |
MIRTKCU_API double3x3 | transpose (double3x3 m) |
Transpose 3x3 matrix. | |
vtkSmartPointer< vtkPolyData > | Triangulate (vtkSmartPointer< vtkPolyData >) |
Triangulate surface mesh. | |
string | Trim (const string &str, const string &what=" \\) |
string | TrimAll (const string &str, const string &what=" \\) |
const char * | umfpack_status_message (int status) |
Translate UMFPACK status code to message string. | |
template<class T > | |
UnorderedSet< T > | Union (const UnorderedSet< T > &a, const UnorderedSet< T > &b) |
string | ValueUnits (const string &str, string *value=nullptr, const char *dflt="") |
double | Volume (vtkSmartPointer< vtkPolyData >) |
Get approximate volume enclosed by polygonal mesh. | |
string | VtkAttributeTypeString (int type) |
Convert vtkDataSetAttributes::AttributeType to string. | |
string | VtkDataTypeString (int type) |
Convert vtkDataSetAttributes::AttributeType to string. | |
vtkSmartPointer< vtkPointSet > | WorldToImage (vtkSmartPointer< vtkPointSet > pointset, const BaseImage *image) |
Map point set points to voxel coordinates. | |
bool | WriteDFS (const char *fname, vtkPolyData *polydata) |
bool | WriteOFF (const char *fname, vtkPolyData *polydata) |
bool | WritePointSet (const char *fname, vtkPointSet *pointset, FileOption fopt=FO_Default) |
bool | WritePointSetTable (const char *fname, vtkPointSet *pointset, char sep=',', bool ids=true, bool coords=true) |
bool | WritePolyData (const char *fname, vtkPolyData *polydata, FileOption fopt=FO_Default) |
bool | WriteTetGenNode (const char *fname, vtkPointSet *pointset) |
bool | WriteTetGenPoly (const char *fname, vtkPolyData *polydata, const PointSet *holes=nullptr) |
bool | WriteTetGenSMesh (const char *fname, vtkPolyData *polydata, const PointSet *holes=nullptr) |
Variables | |
MIRTK_Common_EXPORT int | debug |
MIRTK_Common_EXPORT int | debug_gpu |
Debugging level of GPU code. | |
MIRTK_Common_EXPORT int | debug_time |
MIRTK_Common_EXPORT TimeUnit | debug_time_unit |
Time unit to use for output of time measurements. | |
MIRTK_Common_EXPORT const double | deg_per_rad |
Degree per radian, i.e., \( 180 / \pi \). | |
MIRTK_Common_EXPORT const double | inf |
Positive infinity. | |
MIRTK_Common_EXPORT const double | nan |
Not A Number (NaN) | |
MIRTK_Common_EXPORT const char | PATHSEP |
Path separating character. | |
MIRTK_Common_EXPORT const double | pi |
Constant value of \( \pi \). | |
MIRTK_Common_EXPORT const double | pi_half |
Constant value of \( \pi / 2 \). | |
MIRTK_Common_EXPORT const double | rad_per_deg |
Radians per degree, i.e., \( \pi / 180 \). | |
MIRTK_Common_EXPORT bool | stdout_color |
Whether to use color output to STDOUT. | |
MIRTK_Common_EXPORT int | tbb_debug |
Debugging level of TBB code. | |
MIRTK_Common_EXPORT const double | two_pi |
Constant value of \( 2\pi \). | |
MIRTK_Common_EXPORT bool | use_gpu |
Enable/disable GPU acceleration. | |
MIRTK_Common_EXPORT int | verbose |
Verbosity of output messages. | |
MIRTK_Common_EXPORT Version | version |
Version to emulate. | |
MIRTK_Common_EXPORT const char * | xreset |
Color escape sequences. | |
These basic binary voxel functions can be used as VoxelFunc template parameter of the binary ForEachVoxel function templates as follows:
multivariate gaussian probability distribution
Enumeration of possible orderings of connected components.
Enumerator | |
---|---|
CC_NoOrdering | No sorting of output components. |
CC_LargestFirst | Sort by decreasing size. |
CC_SmallestFirst | Sort by increasing size. |
Definition at line 34 of file ConnectedComponents.h.
Enumeration of available transformation regularization terms
Definition at line 37 of file ConstraintMeasure.h.
enum mirtk::EnergyMeasure |
Enumeration of all available energy terms.
Enumerator | |
---|---|
EM_Unknown | Unknown/invalid energy term. |
EM_JE | Joint entropy. |
EM_CC | Cross-correlation. |
EM_MI | Mutual information. |
EM_NMI | Normalized mutual information. |
EM_SSD | Sum of squared differences. |
EM_CR_XY | Correlation ratio. |
EM_CR_YX | Correlation ratio. |
EM_LC | Label consistency. |
EM_K | Kappa statistic. |
EM_ML | Maximum likelihood. |
EM_NGF_COS | Cosine of normalzed gradient field. |
EM_NCC | Normalized cross-correlation. |
EM_LNCC | Local normalized cross-correlation. |
EM_CoVar | Covariance. |
EM_PSNR | Peak signal-to-noise ratio. |
EM_FRE | Fiducial registration error (FRE) measure. |
EM_CorrespondenceDistance | Point correspondence distance measure. |
EM_CurrentsDistance | Distance measure based on currents representation. |
EM_VarifoldDistance | Distance measure based on varifold representation. |
EM_BalloonForce | Balloon/inflation force. |
EM_ImageEdgeForce | Image edge force. |
EM_ImageEdgeDistance | Image edge distance. |
EM_ImplicitSurfaceDistance | Implicit surface distance force. |
EM_MetricDistortion | Minimize metric distortion. |
EM_Stretching | Stretching force (rest edge length) |
EM_Curvature | Minimize curvature of point set surface. |
EM_QuadraticCurvature | Quadratic fit of neighor to tangent plane distance. |
EM_GaussCurvature | Gauss curvature constraint. |
EM_MeanCurvature | Mean curvature constraint. |
EM_MaximumCurvature | Maximum curvature constraint. |
EM_NonSelfIntersection | Repels too close non-neighboring triangles. |
EM_RepulsiveForce | Repels too close non-neighboring nodes. |
EM_InflationForce | Inflate point set surface. |
EM_SpringForce | Spring force. |
EM_NormalForce | Constant force in normal direction. |
EM_VolumePreservation | Volume preservation constraint. |
EM_TopologyPreservation | Topology preservation constraint. |
EM_Sparsity | Default sparsity constraint. |
EM_BendingEnergy | Thin-plate spline bending energy. |
EM_LinearElasticity | Linear elastic energy. |
EM_L0Norm | Sparsity constraint based on l0-norm. |
EM_L1Norm | Sparsity constraint based on l1-norm. |
EM_L2Norm | Sparsity constraint based on l2-norm. |
EM_SqLogDetJac | Squared logarithm of the Jacobian determinant. |
EM_NegDetJac | Penalise negative Jacobian determinant. |
EM_MeanSquaredDisplacementError | Mean squared deviation from given deformation. |
EM_Last | Number of enumeration values + 1. |
Definition at line 31 of file EnergyMeasure.h.
enum mirtk::Event |
Events that can be observed.
Enumerator | |
---|---|
AnyEvent | Any event. |
ModifiedEvent | Observable has modified state/parameters. |
StatusEvent | Status message given as event data (const char *) |
LogEvent | Log message given as event data (const char *) |
InitEvent | Before initialization of filter execution. |
StartEvent | Start of filter execution (after initialization) |
RestartEvent | Restart of filter execution. |
EndEvent | End of filter execution (before finalization) |
FinishEvent | After finalization of filter execution. |
IterationEvent | Iteration with line search about to start. |
IterationStartEvent | Iteration started. |
IterationEndEvent | Iteration finished. |
RegisteredEvent | Observer has been registered. |
UnregisteredEvent | Observer has been unregistered. |
LineSearchStartEvent | Line search started. |
LineSearchIterationStartEvent | Line search iteration. |
LineSearchIterationEndEvent | Line search iteration. |
LineSearchEndEvent | Line search finished. |
AcceptedStepEvent | Accepted objective function value Event data is the new value as double |
RejectedStepEvent | Rejected objective function value Event data is the rejected value as double |
enum mirtk::ExtensionMode |
Enumeration of file path extension retrival modes.
Enumeration of available external point set force terms
Definition at line 37 of file ExternalForceTerm.h.
enum mirtk::FileOption |
Enumeration of file type options.
Enumerator | |
---|---|
FO_Default | Default options. |
FO_ASCII | Uncompressed ASCII. |
FO_Binary | (Compressed) binary |
FO_NoCompress | Unompressed binary. |
Definition at line 64 of file PointSetIO.h.
Enumeration of available line search strategies.
Enumerator | |
---|---|
LS_None | No line search. |
LS_Adaptive | Inexact line search with adaptive step length. |
LS_Brent | Numerical recipes linmin function using Brent's method. |
LS_LinMin | Alias for LS_Brent. |
Definition at line 32 of file LineSearch.h.
enum mirtk::MFFDMode |
Enumeration of available multi-level transformation modes.
Definition at line 234 of file TransformationModel.h.
enum mirtk::NiftiUnits |
NIfTI units codes to describe the unit of measurement for each dimension of the dataset
Definition at line 118 of file NiftiImageInfo.h.
enum mirtk::NiftiXForm |
NIfTI xform codes to describe the "standard" coordinate system.
Definition at line 105 of file NiftiImageInfo.h.
Enumeration of available optimization methods.
Definition at line 33 of file OptimizationMethod.h.
Enumeration of available point set distance measures
Definition at line 37 of file PointSetDistanceMeasure.h.
Enumeration of available similarity measures
Definition at line 37 of file SimilarityMeasure.h.
enum mirtk::TimeFormat |
Definition at line 54 of file Profiling.h.
Enumeration of transformation models
A transformation model is implemented by one or more transformation classes and futhermore may be used to determine additional registration settings, such as hard and soft transformation constraints. Thus, the transformation model differs in semantics from the transformation type.
Definition at line 41 of file TransformationModel.h.
Enumeration of transformation types
Each transformation class has its own enumeration value which is written to the transformation file right after the magic number. Different versions are distinguished by different type IDs.
Enumeration values 50-60 were assigned to the refactored FFD types which store the control point data in an instance of GenericImage.
Enumeration values 70-80 were assigned to the refactored FFD types which store also the method used to extrapolate control point coefficients outside the finite discrete lattice on which the FFD is defined.
Definition at line 45 of file TransformationType.h.
void mirtk::AddPoints | ( | PointSet & | oset, |
vtkPointSet * | iset | ||
) |
Add points of vtkPointSet to mirtk::PointSet
[out] | oset | Point set to which the vtkPointSet points are added. |
[in] | iset | VTK point set. |
void mirtk::AffineParametersToMatrix | ( | double | tx, |
double | ty, | ||
double | tz, | ||
double | rx, | ||
double | ry, | ||
double | rz, | ||
double | sx, | ||
double | sy, | ||
double | sz, | ||
double | sxy, | ||
double | sxz, | ||
double | syz, | ||
Matrix & | m | ||
) |
Construct 4x4 homogeneous coordinate transformation matrix from affine transformation parameters. The output transformation matrix is the composition of a shearing, followed by a scaling, followed by a rotation, followed by a translation, i.e.,
T = Translate * Rotate * Scale * Shear, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
[in] | sx | Scaling of x axis (factor, not percentage). |
[in] | sy | Scaling of y axis (factor, not percentage). |
[in] | sz | Scaling of z axis (factor, not percentage). |
[in] | sxy | Skew between x and y axes in radians. |
[in] | sxz | Skew between x and z axes in radians. |
[in] | syz | Skew between y and z axes in radians. |
[out] | m | Homogeneous transformation matrix. |
|
inline |
Construct 4x4 homogeneous coordinate transformation matrix from affine transformation parameters. The output transformation matrix is the composition a scaling, followed by a rotation, followed by a translation, i.e.,
T = Translate * Rotate * Scale, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
[in] | sx | Scaling of x axis (factor, not percentage). |
[in] | sy | Scaling of y axis (factor, not percentage). |
[in] | sz | Scaling of z axis (factor, not percentage). |
[in] | sxy | Skew between x and y axes in radians. |
[in] | sxz | Skew between x and z axes in radians. |
[in] | syz | Skew between y and z axes in radians. |
|
inline |
Construct 4x4 homogeneous coordinate transformation matrix from affine transformation parameters. The output transformation matrix is the composition a scaling, followed by a rotation, followed by a translation, i.e.,
T = Translate * Rotate * Scale, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
[in] | sx | Scaling of x axis (factor, not percentage). |
[in] | sy | Scaling of y axis (factor, not percentage). |
[in] | sz | Scaling of z axis (factor, not percentage). |
[out] | m | Homogeneous transformation matrix. |
|
inline |
Construct 4x4 homogeneous coordinate transformation matrix from affine transformation parameters. The output transformation matrix is the composition a scaling, followed by a rotation, followed by a translation, i.e.,
T = Translate * Rotate * Scale, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
[in] | sx | Scaling of x axis (factor, not percentage). |
[in] | sy | Scaling of y axis (factor, not percentage). |
[in] | sz | Scaling of z axis (factor, not percentage). |
Matrix mirtk::ApproximateAffineMatrix | ( | const PointSet & | target, |
const PointSet & | source, | ||
const Vector & | weight | ||
) |
Find affine transformation matrix which minimizes the mean squared distance between two given sets of corresponding points (e.g., landmarks, fiducial markers)
[in] | target | (Transformed) Target point set. |
[in] | source | Fixed source point set. |
[in] | weight | Weight of corresponding point pair. All correspondences are weighted equally if vector is empty. |
Find affine transformation matrix which minimizes the mean squared distance between two given sets of corresponding points (e.g., landmarks, fiducial markers)
[in] | target | (Transformed) Target point set. |
[in] | source | Fixed source point set. |
Matrix mirtk::BiInvariantMean | ( | int | n, |
const Matrix * | matrices, | ||
const double * | weights = NULL , |
||
int | niter = 20 , |
||
double | tol = 1e-12 , |
||
const Matrix * | mu0 = NULL |
||
) |
Compute exponential barycenter / bi-invariant mean of transformation matrices
This function finds the exponential barycenter of a set of rigid/affine transformation matrices using a fixed point iteration (Gauss-Newton; Barycentric fixed point iteration on Lie groups).
\[ mu_{t+1} = mu_t \exp\left( \sum w_i \log\left( mu_t^{-1} matrices_i \right) \right) \]
[in] | n | Number of matrices. |
[in] | matrices | Transformation matrices. |
[in] | weights | Weights of transformation matrices. Uniform weighting if NULL . |
[in] | niter | Maximum number of fixed point iterations. |
[in] | tol | Tolerance of residual infinity norm. |
[in] | mu0 | Start value of fixed point iteration. First matrix if NULL . |
string mirtk::CamelCaseToPrettyParameterName | ( | const string & | s | ) |
Convert (upper) camel case string to space separated string
[in] | s | Camel case string. |
double mirtk::ComputeArea | ( | vtkCell * | cell | ) |
Compute area of cell
|
inline |
Compute orthogonal vectors spanning the tangent plane of a cell
[in] | n | Cell normal vector. |
[out] | e1 | First normal vector in tangent plane. |
[out] | e2 | Second normal vector in tangent plane. |
Definition at line 187 of file PointSetUtils.h.
double mirtk::ComputeVolume | ( | vtkCell * | cell | ) |
Compute volume of cell
vtkSmartPointer<vtkPolyData> mirtk::ConvexHull | ( | vtkSmartPointer< vtkPointSet > | pointset, |
int | levels = 3 |
||
) |
Get convex hull of point set
[in] | pointset | Input point set. |
[in] | levels | Parameter of vtkHull::AddRecursiveSpherePlanes. |
vtkSmartPointer<vtkPolyData> mirtk::DataSetSurface | ( | vtkSmartPointer< vtkDataSet > | dataset, |
bool | passPtIds = false , |
||
bool | passCellIds = false |
||
) |
Get boundary surface mesh
[in] | dataset | Dataset whose boundary surface is extracted. |
[in] | passPtIds | Whether to pass point array with IDs of points in dataset . |
[in] | passCellIds | Whether to pass cell array with IDs of cells in dataset . |
|
inline |
Deallocate 2D array stored in contiguous memory block
[in] | matrix | Previously allocated array or NULL . |
[in] | data | Contiguous memory used by this array, but managed separately. If not NULL , only the pointers in the array are deallocated, but not the data memory itself. Otherwise, also the contiguous data memory block is freed. |
Definition at line 50 of file Deallocate.h.
|
inline |
Deallocate 3D array stored in contiguous memory block
[in] | matrix | Previously allocated array or NULL . |
[in] | data | Contiguous memory used by this array, but managed separately. If not NULL , only the pointers in the array are deallocated, but not the data memory itself. Otherwise, also the contiguous data memory block is freed. |
Definition at line 69 of file Deallocate.h.
|
inline |
Deallocate 4D array stored in contiguous memory block
[in] | matrix | Previously allocated array or NULL . |
[in] | data | Contiguous memory used by this array, but managed separately. If not NULL , only the pointers in the array are deallocated, but not the data memory itself. Otherwise, also the contiguous data memory block is freed. |
Definition at line 89 of file Deallocate.h.
int mirtk::DeepCopyArrayUsingCaseInsensitiveName | ( | vtkDataSetAttributes * | dst, |
vtkDataSetAttributes * | src, | ||
const char * | name | ||
) |
Copy named data array from one dataset attributes to another
If an array with the given name exists in the destination dataset attributes, it's data is overridden using the vtkDataSetAttributes::DeepCopy function. Otherwise, a new array is added.
dst | Destination dataset attributes. |
src | Source dataset attributes. |
name | Case insensitive name of data array. |
void mirtk::EdgeLengthNormalDistribution | ( | vtkSmartPointer< vtkPoints > | points, |
const EdgeTable & | edgeTable, | ||
double & | mean, | ||
double & | sigma | ||
) |
Compute statistics of edge lengths
[in] | points | Points. |
[in] | edgeTable | Edge table. |
[out] | mean | Average edge length. |
[out] | sigma | Standard deviation of edge length. |
void mirtk::EdgeLengthNormalDistribution | ( | vtkSmartPointer< vtkPointSet > | pointset, |
double & | mean, | ||
double & | sigma | ||
) |
Compute statistics of edge lengths
[in] | pointset | Point set. |
[out] | mean | Average edge length. |
[out] | sigma | Standard deviation of edge length. |
string mirtk::ElapsedTimeToString | ( | double | t, |
TimeUnit | units = TIME_IN_SECONDS , |
||
TimeFormat | fmt = TIME_FORMAT_HHMMSS , |
||
int | w = 0 , |
||
char | c = ' ' , |
||
bool | left = false |
||
) |
Convert elapsed time given in the specified units to string of given format
[in] | t | Elapsed time in specified units . |
[in] | units | Units of time measurement. |
[in] | fmt | Time string format. |
[in] | w | Width of time field when fmt is not TIME_FORMAT_HHMMSS. |
[in] | c | Character used to fill time field. |
[in] | left | Whether to print time value left justified. |
|
inline |
|
inline |
Decrement floating point number by a given amount, ensuring that the result is not equal f.
Note that due to roundoff errors, subtracting a small number from a big number, may result in a number which is yet equal the initial big number. This function adjusts the decrement if necessary such that the result is guaranteed to be smaller (df > 0) or greater (df < 0) than f. If df is zero, f remains unchanged.
|
inline |
|
inline |
|
inline |
Increment floating point number by a given amount, ensuring that the result is not equal f.
Note that due to roundoff errors, adding a small number to a big number, may result in a number which is yet equal the initial big number. This function adjusts the increment if necessary such that the result is guaranteed to be greater (df > 0) or smaller (df < 0) than f. If df is zero, f remains unchanged.
|
inline |
|
inline |
vtkDataArray* mirtk::GetArrayByCaseInsensitiveName | ( | vtkDataSetAttributes * | data, |
const char * | name, | ||
int * | loc = NULL |
||
) |
Get point data array using case insensitive name
[in] | data | Point or cell data attributes (cf. vtkPolyData::GetPointData, vtkPolyData::GetCellData). |
[in] | name | Case insenitive name of data array. |
[out] | loc | Set to array index if not NULL . |
NULL
if not found. size_t mirtk::GetCurrentRSS | ( | ) |
Returns the current resident set size (physical memory use) measured in bytes, or zero if the value cannot be determined on this OS.
string mirtk::GetDate | ( | ) |
Get current date in the format "%d %b %Y"
string mirtk::GetDateTime | ( | ) |
Get current date and time in the format "%c %Z"
void mirtk::GetMinMaxEdgeLength | ( | vtkSmartPointer< vtkPoints > | points, |
const EdgeTable & | edgeTable, | ||
double & | min, | ||
double & | max | ||
) |
Determine minimum and maximum edge length
[in] | points | Points. |
[in] | edgeTable | Edge table. |
[out] | min | Minimum edge length. |
[out] | max | Maximum edge length. |
void mirtk::GetMinMaxEdgeLength | ( | vtkSmartPointer< vtkPointSet > | pointset, |
double & | min, | ||
double & | max | ||
) |
Determine minimum and maximum edge length
[in] | pointset | Point set. |
[out] | min | Minimum edge length. |
[out] | max | Maximum edge length. |
size_t mirtk::GetPeakRSS | ( | ) |
Returns the peak (maximum so far) resident set size (physical memory use) measured in bytes, or zero if the value cannot be determined on this OS.
Get list of edges with given end point
[in] | edges | List of edges. |
[in] | ptId | Edge end point. |
string mirtk::GetTime | ( | ) |
Get current time in the format "%H:%M:%S %Z"
void mirtk::ImageStencilToMask | ( | vtkSmartPointer< vtkImageStencilData > | stencil, |
vtkSmartPointer< vtkImageData > | image | ||
) |
Convert surface image stencil to binary mask
[out] | image | Image data with voxel type IRTK_VOXEL_BINARY. |
[in] | stencil | Image stencil. |
void mirtk::InitializeDeformableLibrary | ( | ) |
Initialize MIRTK Deformable library
Registers all available types with their respective object factories.
void mirtk::InitializeNumericsLibrary | ( | ) |
Initialize MIRTK Numerics library
Registers all available types with their respective object factories.
void mirtk::InitializeRegistrationLibrary | ( | ) |
Initialize MIRTK Registration library
Registers all available types with their respective object factories.
void mirtk::InitializeTransformationLibrary | ( | ) |
Initialize MIRTK Transformation library
Registers all available types with their respective object factories.
UnorderedSet<T> mirtk::Intersection | ( | const UnorderedSet< T > & | a, |
const UnorderedSet< T > & | b | ||
) |
Intersection of two unordered sets
Definition at line 302 of file Algorithm.h.
bool mirtk::IsCategoricalArrayName | ( | const string & | name | ) |
Determine whether data array name suggests it contains categorical values
[in] | name | Data array name. |
bool mirtk::IsTransformation | ( | const char * | name | ) |
Check whether a named file is an MIRTK transformation file
[in] | name | File name. |
Compute log-Euclidean mean of transformation matrices
\[ mu = \exp\left( \sum w_i \log\left( matrices_i \right) \right) \]
[in] | n | Number of matrices. |
[in] | matrices | Transformation matrices. |
[in] | weights | Weights of transformation matrices. Uniform weighting if NULL . |
void mirtk::MatrixToAffineParameters | ( | const Matrix & | m, |
double & | tx, | ||
double & | ty, | ||
double & | tz, | ||
double & | rx, | ||
double & | ry, | ||
double & | rz, | ||
double & | sx, | ||
double & | sy, | ||
double & | sz, | ||
double & | sxy, | ||
double & | sxz, | ||
double & | syz | ||
) |
Extract affine transformation parameters from 4x4 homogeneous coordinate transformation matrix. The input transformation matrix is assumed to be the composition of a shearing, followed by a scaling, followed by a rotation, followed by a translation, i.e.,
T = Translate * Rotate * Scale * Shear, where Rotate = (Rz Ry Rx)^T
[in] | m | Homogeneous coordinate transformation matrix. |
[out] | tx | Translation along x axis. |
[out] | ty | Translation along y axis. |
[out] | tz | Translation along z axis. |
[out] | rx | Rotation around x axis in radians. |
[out] | ry | Rotation around y axis in radians. |
[out] | rz | Rotation around z axis in radians. |
[out] | sx | Scaling of x axis (factor, not percentage). |
[out] | sy | Scaling of y axis (factor, not percentage). |
[out] | sz | Scaling of z axis (factor, not percentage). |
[out] | sxy | Skew between x and y axes in radians. |
[out] | sxz | Skew between x and z axes in radians. |
[out] | syz | Skew between y and z axes in radians. |
void mirtk::MatrixToEulerAngles | ( | const Matrix & | m, |
double & | rx, | ||
double & | ry, | ||
double & | rz | ||
) |
Extract Euler angles from 4x4 homogeneous coordinate transformation matrix. The input transformation matrix is assumed to be the composition of a rotation followed by a translation, i.e.,
T = Translate * Rotate, where Rotate = (Rz Ry Rx)^T
[in] | m | Homogeneous coordinate transformation matrix. |
[out] | rx | Rotation around x axis in radians. |
[out] | ry | Rotation around y axis in radians. |
[out] | rz | Rotation around z axis in radians. |
void mirtk::MatrixToRigidParameters | ( | const Matrix & | m, |
double & | tx, | ||
double & | ty, | ||
double & | tz, | ||
double & | rx, | ||
double & | ry, | ||
double & | rz | ||
) |
Extract rigid transformation parameters from 4x4 homogeneous coordinate transformation matrix. The input transformation matrix is assumed to be the composition of a rotation followed by a translation, i.e.,
T = Translate * Rotate, where Rotate = (Rz Ry Rx)^T
[in] | m | Homogeneous coordinate transformation matrix. |
[out] | tx | Translation along x axis. |
[out] | ty | Translation along y axis. |
[out] | tz | Translation along z axis. |
[out] | rx | Rotation around x axis in radians. |
[out] | ry | Rotation around y axis in radians. |
[out] | rz | Rotation around z axis in radians. |
double mirtk::MaxEdgeLength | ( | vtkSmartPointer< vtkPoints > | points, |
const EdgeTable & | edgeTable | ||
) |
Determine maximum edge length
[in] | points | Points. |
[in] | edgeTable | Edge table. |
double mirtk::MaxEdgeLength | ( | vtkSmartPointer< vtkPointSet > | pointset | ) |
double mirtk::MinEdgeLength | ( | vtkSmartPointer< vtkPoints > | points, |
const EdgeTable & | edgeTable | ||
) |
Determine minimum edge length
[in] | points | Points. |
[in] | edgeTable | Edge table. |
double mirtk::MinEdgeLength | ( | vtkSmartPointer< vtkPointSet > | pointset | ) |
vtkSmartPointer<vtkDataArray> mirtk::NewVtkDataArray | ( | int | type = VTK_VOID , |
int | tuples = 0 , |
||
int | comps = 1 , |
||
const char * | name = nullptr |
||
) |
Instantiate new VTK data array of given type
[in] | type | VTK data type ID, e.g., VTK_FLOAT. When VTK_VOID, a floating point data array with default precision, i.e., either single or double is returned. |
[in] | tuples | Number of tuples. The array is uninitialized when non-positive. |
[in] | comps | Number of components per tuple. |
[in] | name | Data array name. |
vtkSmartPointer<vtkDataArray> mirtk::NewVTKDataArray | ( | int | type = VTK_VOID | ) |
vtkSmartPointer<vtkImageData> mirtk::NewVtkMask | ( | int | nx, |
int | ny, | ||
int | nz | ||
) |
Instantiate new VTK image mask
Note that vtkImageData has no implicit orientation. Therefore we just convert the image in voxel coordinates (origin at 0 and voxel size 1x1x1) and instead convert points to voxel coordinates.
T& mirtk::NthElement | ( | Array< T > & | values, |
int | n | ||
) |
Sort values of array such that values before the n-th element are smaller than this element and elements after are greater or equal
Definition at line 181 of file Algorithm.h.
T& mirtk::NthElement | ( | Array< T > & | values, |
int | n, | ||
Compare | comp | ||
) |
Sort values of array such that values before the n-th element are smaller than this element and elements after are greater or equal according to a custom comparator functor
Definition at line 191 of file Algorithm.h.
ImageAttributes mirtk::OrthogonalFieldOfView | ( | const ImageAttributes & | ) |
Ensure that image domain has orthogonal basis vectors, i.e., no additional affine transformation which contains any shearing
ImageAttributes mirtk::OverallFieldOfView | ( | const Array< ImageAttributes > & | ) |
This method implements a method to find a common image grid which fully contains all given image grids in world space
The voxel size of the resulting grid corresponds to the average voxel size of the input images. The orientation and origin are chosen such that the resulting image domain overlaps all input images in world space with a near to minimal image volume. The current implementation only uses an heuristic approach to find such minimal oriented bounding box of the input domains. When the Geometric Tools Engine (GTEngine) library is available, the minimum-volume bounding box is returned.
Additional information regarding algorithms to find the optimal minimum-volume oriented bounding box (OBB) can be found at:
string mirtk::ParameterUnits | ( | const string & | str, |
string * | name = nullptr , |
||
const char * | dflt = "" |
||
) |
Splits a parameter name string such as "Resolution [mm]" into prefix and units
[in] | str | Parameter name string with optional units specification. |
[out] | name | Name of parameter without units specification. |
[in] | dflt | Default units if none specified. |
dflt
string if units specification missing. Array<T> mirtk::Permutation | ( | const Array< int > & | order, |
const Array< T > & | values | ||
) |
Get permutation of array values given a permutation of array indices
Definition at line 233 of file Algorithm.h.
ImageAttributes mirtk::PointSetDomain | ( | vtkPointSet * | data, |
double | dx = -1 , |
||
double | dy = -1 , |
||
double | dz = -1 |
||
) |
Determine bounding box of point set
[in] | data | Data set. |
[in] | dx | Desired lattice spacing along x axis. If non-positive, the average interval between the x coordinates of the input points is used. |
[in] | dy | Desired lattice spacing along y axis. If non-positive, the average interval between the y coordinates of the input points is used. |
[in] | dz | Desired lattice spacing along z axis. If non-positive, the average interval between the z coordinates of the input points is used. |
ImageAttributes mirtk::PointSetDomain | ( | vtkPointSet * | data, |
const Vector3D< double > & | ds | ||
) |
Determine bounding box of point set
[in] | data | Data set. |
[in] | ds | Desired lattice spacing. If an entry is non-positive, the average interval between the coordinates of the input points along this axis is used. |
int mirtk::PolyDataAttributeType | ( | const char * | type | ) |
Map string to vtkDataSetAttributes::AttributeTypes enumeration value
type | Case insensitive attribute type name (e.g. "scalars", "NORMALS") |
ImageAttributes mirtk::PolyDataDomain | ( | vtkPolyData * | data, |
double | dx = -1 , |
||
double | dy = -1 , |
||
double | dz = -1 |
||
) |
Determine bounding box of polydata points
[in] | data | Data set. |
[in] | dx | Desired lattice spacing along x axis. If non-positive, the average interval between the x coordinates of the input points is used. |
[in] | dy | Desired lattice spacing along y axis. If non-positive, the average interval between the y coordinates of the input points is used. |
[in] | dz | Desired lattice spacing along z axis. If non-positive, the average interval between the z coordinates of the input points is used. |
ImageAttributes mirtk::PolyDataDomain | ( | vtkPolyData * | data, |
const Vector3D< double > & | ds | ||
) |
Determine bounding box of polydata points
[in] | data | Data set. |
[in] | ds | Desired lattice spacing. If an entry is non-positive, the average interval between the coordinates of the input points along this axis is used. |
Get list of edges with given end point and remove them from input list
[in] | edges | List of edges. |
[in] | ptId | Edge end point. |
std::ostream& mirtk::Print | ( | std::ostream & | os, |
T | value, | ||
Args... | args | ||
) |
vtkSmartPointer<vtkPolyData> mirtk::ReadDFS | ( | const char * | fname | ) |
Read BrainSuite surface from .dfs file
[in] | fname | File name. |
vtkSmartPointer<vtkPolyData> mirtk::ReadOFF | ( | const char * | fname | ) |
Read polygonal dataset from Object File Format (.off) file
[in] | fname | File name. |
vtkSmartPointer<vtkPointSet> mirtk::ReadPointSet | ( | const char * | fname, |
bool | exit_on_failure = true |
||
) |
Read point set from file
[in] | fname | File name. |
[in] | exit_on_failure | Call exit when point set could not be read. |
exit_on_failure
is false
. vtkSmartPointer<vtkPointSet> mirtk::ReadPointSet | ( | const char * | fname, |
FileOption & | fopt, | ||
bool | exit_on_failure = true |
||
) |
Read point set from file
[in] | fname | File name. |
[out] | fopt | Input file type option to be passed to WritePointSet in order to save point set again in an equivalent file format when the same file format extension is used. |
[in] | exit_on_failure | Call exit when point set could not be read. |
exit_on_failure
is false
. vtkSmartPointer<vtkPointSet> mirtk::ReadPointSetTable | ( | const char * | fname, |
char | sep = ',' , |
||
vtkPointSet * | pointset = nullptr |
||
) |
Read point set (attributes) from CSV file
This function reads point data arrays from the columns of a CSV file. The first line must contain the column names, i.e., a CSV header is expected. The number of rows must match the number of points in the reference point set when the CSV file does not contain three columns whose name matches the regular expression "((Point|Coord)\.)?(X|Y|Z)". Columns with a common name prefix including a trailing dot are combined into a single multi-component data array with component names following the '.' separator in the column name. For example, columns "Gradient.X", "Gradient.Y", and "Gradient.Z" are combined into one output point data array named "Gradient" with components "X", "Y", and "Z". The data is initially read into data arrays of type VTK_FLOAT. When all components can be converted lossless to an integral type, the output data array is converted to either VTK_SHORT or VTK_INT.
[in] | fname | File name. |
[in] | sep | Separator. |
[in] | pointset | Reference point set. When the table does not contain 'X', 'Y', and 'Z' columns with point set coordinates, the points of this reference point set are used. Moreover, topological information is not read from a table file and is thus inherited from the reference pointset . The output point set will have the same type as the reference pointset of which a shallow copy is made. |
vtkSmartPointer<vtkPolyData> mirtk::ReadPolyData | ( | const char * | fname, |
bool | exit_on_failure = true |
||
) |
Read polygonal dataset from file
[in] | fname | File name. |
[in] | exit_on_failure | Call exit when point set could not be read. |
exit_on_failure
is false
. vtkSmartPointer<vtkPolyData> mirtk::ReadPolyData | ( | const char * | fname, |
FileOption & | fopt, | ||
bool | exit_on_failure = true |
||
) |
Read polygonal dataset from file
[in] | fname | File name. |
[out] | fopt | Input file type option to be passed to WritePointSet in order to save point set again in an equivalent file format when the same file format extension is used. |
[in] | exit_on_failure | Call exit when point set could not be read. |
exit_on_failure
is false
. void mirtk::RigidParametersToMatrix | ( | double | tx, |
double | ty, | ||
double | tz, | ||
double | cosrx, | ||
double | cosry, | ||
double | cosrz, | ||
double | sinrx, | ||
double | sinry, | ||
double | sinrz, | ||
Matrix & | m | ||
) |
Construct 4x4 homogeneous coordinate transformation matrix from rigid transformation parameters. The output transformation matrix is the composition of a rotation followed by a translation, i.e.,
T = Translate * Rotate, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | cosrx | Cosine of rotation around x axis in radians. |
[in] | cosry | Cosine of rotation around y axis in radians. |
[in] | cosrz | Cosine of rotation around z axis in radians. |
[in] | sinrx | Sine of rotation around x axis in radians. |
[in] | sinry | Sine of rotation around y axis in radians. |
[in] | sinrz | Sine of rotation around z axis in radians. |
[out] | m | Homogeneous transformation matrix. |
void mirtk::RigidParametersToMatrix | ( | double | tx, |
double | ty, | ||
double | tz, | ||
double | rx, | ||
double | ry, | ||
double | rz, | ||
Matrix & | m | ||
) |
Construct 4x4 homogeneous coordinate transformation matrix from rigid transformation parameters. The output transformation matrix is the composition of a rotation followed by a translation, i.e.,
T = Translate * Rotate
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
[out] | m | Homogeneous transformation matrix. |
|
inline |
Construct 4x4 homogeneous coordinate transformation matrix from rigid transformation parameters. The output transformation matrix is the composition of a rotation followed by a translation, i.e.,
T = Translate * Rotate, where Rotate = (Rz Ry Rx)^T
[in] | tx | Translation along x axis. |
[in] | ty | Translation along y axis. |
[in] | tz | Translation along z axis. |
[in] | rx | Rotation around x axis in radians. |
[in] | ry | Rotation around y axis in radians. |
[in] | rz | Rotation around z axis in radians. |
double mirtk::RobustAverageEdgeLength | ( | vtkSmartPointer< vtkPoints > | , |
const EdgeTable & | |||
) |
Determine average edge length of point set given a precomputed edge table
This function only considers edges with a length within in the 5th and 95th percentile of all edge lengths. It thus ignores extrem short/long edges.
Array<string> mirtk::Split | ( | string | s, |
const char * | d, | ||
int | n = 0 , |
||
bool | e = false , |
||
bool | q = false |
||
) |
Split string into parts separated by specified delimiting sequence of characters
s | String to be split. |
d | Delimiting sequence of characters. |
n | Maximum number of parts. If zero, all parts are returned, if negative, the last n parts are returned, and if positive, the first n parts are returned. |
e | Discard empty strings. |
q | Do not split quoted parts. Double quotes within quotes have to be escaped with a preceding backslash character. |
Array<string> mirtk::Split | ( | string | s, |
char | d, | ||
int | n = 0 , |
||
bool | e = false , |
||
bool | q = false |
||
) |
Split string into parts separated by specified delimiting character
s | String to be split. |
d | Delimiting character. |
n | Maximum number of parts. If zero, all parts are returned, if negative, the last n parts are returned, and if positive, the first n parts are returned. |
e | Discard empty strings. |
q | Do not split quoted parts. Double quotes within quotes have to be escaped with a preceding backslash character. |
|
inline |
string mirtk::StandardUnits | ( | const string & | str | ) |
Convert units specification to standard lowercase string
For example, this function returns "vox" for any units specification allowed for voxel units including "voxel" and "VOxELS". Same for other units for which alternative units specifications are allowed. Removes enclosing brackets from units string if present, e.g., returns "mm" when the input string is "[mm]".
[in] | str | Units specification string. |
void mirtk::Throw | ( | ErrorType | err, |
const char * | func, | ||
Args... | args | ||
) |
Raise error in function
The current implementation prints the error message to STDERR and terminates the program with exit code 1. In future releases, when all library code has been rewritten to use this function, a suitable runtime exception may be thrown instead.
[in] | err | Type of error/exception. |
[in] | func | Name of function which is throwing the error (i.e., func). |
[in] | args | Error message. The given arguments are converted to strings using the ToString template function. These strings are then concatenated to produce the complete error message. |
Definition at line 74 of file Exception.h.
|
inline |
Get type of (default) transformation which implements a specific model
The mapping from transformation model to transformtion type is not one-to-one. More then one transformation can be suitable for a transformation model. This function defines the default type used for each model. The base registration filter implementations make use of it, but a specialized registration filter can choose another transformation for a given model if desired.
For example, see ImageRegistrationFilter::TransformationType.
Definition at line 202 of file TransformationModel.h.
string mirtk::Trim | ( | const string & | str | ) |
Trim leading and trailing (whitespace) characters from string
[in] | str | Input string. |
[in] | what | Set of characters to remove from start and end of string. |
string mirtk::TrimAll | ( | const string & | str | ) |
Remove (whitespace) characters from string
[in] | str | Input string. |
[in] | what | Set of characters to remove from string. |
UnorderedSet<T> mirtk::Union | ( | const UnorderedSet< T > & | a, |
const UnorderedSet< T > & | b | ||
) |
Intersection of two unordered sets
Definition at line 319 of file Algorithm.h.
string mirtk::ValueUnits | ( | const string & | str, |
string * | value = nullptr , |
||
const char * | dflt = "" |
||
) |
Splits a parameter value string such as "1 mm", "1 [mm]", "1 2 3 mm", "foo [rel]"
[in] | str | Numeric parameter value string with optional units specification. |
[out] | value | Value(s) of parameter without units specification. |
[in] | dflt | Default units if none specified. |
dflt
string if units specification missing. bool mirtk::WriteDFS | ( | const char * | fname, |
vtkPolyData * | polydata | ||
) |
Write surface in BrainSuite .dfs format
[in] | fname | File name. |
[in] | polydata | Polygonal dataset. |
bool mirtk::WriteOFF | ( | const char * | fname, |
vtkPolyData * | polydata | ||
) |
Write polygonal dataset to Object File Format (.off) file
[in] | fname | File name. |
[in] | polydata | Polygonal dataset. |
bool mirtk::WritePointSet | ( | const char * | fname, |
vtkPointSet * | pointset, | ||
FileOption | fopt = FO_Default |
||
) |
Write point set to file
fname | File name. The extension determines the output format. |
pointset | Point set to write. |
fopt | Whether to use ASCII, binary, or compressed binary file format. |
bool mirtk::WritePointSetTable | ( | const char * | fname, |
vtkPointSet * | pointset, | ||
char | sep = ',' , |
||
bool | ids = true , |
||
bool | coords = true |
||
) |
Write point set (attributes) to CSV file
[in] | fname | File name. |
[in] | pointset | Point set. |
[in] | ids | Whether to save point IDs in first column. |
[in] | coords | Whether to save x, y, z point coordinate columns. |
[in] | sep | Separator. |
bool mirtk::WritePolyData | ( | const char * | fname, |
vtkPolyData * | polydata, | ||
FileOption | fopt = FO_Default |
||
) |
Write polygonal dataset to file
fname | File name. The extension determines the output format. |
polydata | Polydata to write. |
fopt | Whether to use ASCII, binary, or compressed binary file format. |
bool mirtk::WriteTetGenNode | ( | const char * | fname, |
vtkPointSet * | pointset | ||
) |
Write point set to TetGen .node file
fname | File name. |
pointset | Point set. |
bool mirtk::WriteTetGenPoly | ( | const char * | fname, |
vtkPolyData * | polydata, | ||
const PointSet * | holes = nullptr |
||
) |
Write polygonal dataset to TetGen .poly file
fname | File name. |
polydata | Polygonal dataset. |
holes | Hole list. |
bool mirtk::WriteTetGenSMesh | ( | const char * | fname, |
vtkPolyData * | polydata, | ||
const PointSet * | holes = nullptr |
||
) |
Write polygonal dataset to TetGen .smesh file
fname | File name. |
polydata | Polygonal dataset. |
holes | Hole list. |
MIRTK_Common_EXPORT int mirtk::debug |
MIRTK_Common_EXPORT int mirtk::debug_time |
Enable/disable profiling of execution time.
Should be set in the main function before any processing starts, e.g., depending on a command-line flag (for example -v -verbose). If less or equal to zero, no timing measurements are printed to screen. Otherwise, whether a timing measure is output or not depends on the set debugging level.