plastimatch
Loading...
Searching...
No Matches
distance_map.h
Go to the documentation of this file.
1/* -----------------------------------------------------------------------
2 See COPYRIGHT.TXT and LICENSE.TXT for copyright and license information
3 ----------------------------------------------------------------------- */
4#ifndef _distance_map_h_
5#define _distance_map_h_
6
7#include "plmutil_config.h"
8#include "itk_image_type.h"
9#include "plm_image.h"
10#include "threading.h"
13
14class Distance_map_private;
15class Plm_image;
16
18public:
19 Distance_map ();
21public:
22 Distance_map_private *d_ptr;
23
24public:
26 enum Algorithm {
32 };
33
34public:
37
39 void set_input_image (const std::string& image_fn);
40 void set_input_image (const char* image_fn);
42 void set_input_image (const UCharImageType::Pointer image);
44 void set_input_image (const Plm_image::Pointer& image);
47 void set_use_squared_distance (bool use_squared_distance);
50 void set_inside_is_positive (bool inside_is_positive);
52 void set_absolute_distance (bool absolute_distance);
54 void set_algorithm (const std::string& algorithm);
56 void set_maximum_distance (float max_distance);
59 void set_volume_boundary_behavior (Volume_boundary_behavior vbb);
62 void set_volume_boundary_type (Volume_boundary_type vbt);
64 void set_threading (Threading threading);
66
69
70 void run ();
72
75
76 FloatImageType::Pointer get_output_image ();
78};
79
80#endif
Definition: distance_map.h:17
Algorithm
Different distance map algorithms.
Definition: distance_map.h:26
@ SONG_MAURER
Definition: distance_map.h:31
@ MAURER
Definition: distance_map.h:28
@ ITK_DANIELSSON
Definition: distance_map.h:29
@ DANIELSSON
Definition: distance_map.h:27
@ ITK_MAURER
Definition: distance_map.h:30
Distance_map_private * d_ptr
Definition: distance_map.h:22
The Plm_image class represents a three-dimensional volume. The volume is an abstraction that can co...
Definition: plm_image.h:27
#define PLMUTIL_API
Definition: plmutil_config.h:26
int Threading
Definition: threading.h:12
Volume_boundary_behavior
This enum is used to control the algorithm behavior for voxels at the edge of the volume....
Definition: volume_boundary_behavior.h:18
Volume_boundary_type
This enum is used to control the output type for volume bounary detection. If INTERIOR_EDGE,...
Definition: volume_boundary_type.h:23