![]() |
ImFusion SDK 4.3
|
#include <ImFusion/CL/ClPointDistanceReg.h>
Registers a point set to a distance volume. More...
Registers a point set to a distance volume.
Public Member Functions | |
ClPointDistanceReg (const TypedImage< float > *dist) | |
Constructor providing the distance volume. | |
double | evaluate (int n, const double *x, double *dx=0) override |
Returns point distance for a certain pose. | |
void | setPoints (const std::vector< vec3 > &points) |
Set the vector of points, will be converted to single precision and uploaded as CL buffer here. | |
void | setPoints (const std::vector< vec3f > &points) |
Set the vector of points directly with single float precision, will be uploaded as CL buffer here. | |
Methods that have equivalent behaviour to the CPU class PointDistanceReg | |
void | setInitialMatrix (const mat4 *m) |
void | setReferenceMatrix (const mat4 &m) |
Set the optional reference matrix around which the relative pose will be applied. | |
void | setMatrix (const mat4 &mat) |
Set the current transformation matrix. | |
const mat4 & | matrix () const |
Access the current transformation matrix. | |
mat4 | matrix (int n, const double *x) const |
Return transformation matrix given relative pose parameters. | |
|
overridevirtual |
Returns point distance for a certain pose.
Implements CostFunction.
void setInitialMatrix | ( | const mat4 * | m | ) |
Optionally provide an initial alignment matrix