3D distance transform for high resolution data More...
#include <mia/3d/distance.hh>
Public Member Functions | |
C3DDistance () | |
C3DDistance (const C3DDistance &other)=delete | |
float | get_distance_at (const C3DFVector &p) const |
C2DFImage | get_distance_slice (int z) const |
C3DDistance & | operator= (const C3DDistance &other)=delete |
void | push_slice (int z, const C2DImage &slice) |
~C3DDistance () | |
![]() | |
const std::string & | get_source_format () const |
void | set_source_format (const std::string &format) |
3D distance transform for high resolution data
This class represents a 3D distance transform for high resolution data. Other than distance_transform(const C3DImage& f), this class does not store the distances for the whole grid. Instead the distances can ether be obtained slice-wise, or by evaluating the distance at certain points.
Definition at line 51 of file 3d/distance.hh.
C3DDistance::C3DDistance | ( | ) |
Initializes the distance transform
C3DDistance::~C3DDistance | ( | ) |
|
delete |
float C3DDistance::get_distance_at | ( | const C3DFVector & | p) | const |
Evaluate the distance of a point to the input function
p | point |
C2DFImage C3DDistance::get_distance_slice | ( | int | z) | const |
Evaluate the distance of a slice to the represented input function
z | the slice to evaluate the distance to |
|
delete |
void C3DDistance::push_slice | ( | int | z, |
const C2DImage & | slice | ||
) |
Add another z-slice to the distance transform. Note, the slices have to be added in the order of increasing z. Thr input data should be prepared using the distance_transform_prepare function.
z | current z-position |
slice | of the function to measure the distance to |