18 #ifndef sitkCollidingFrontsImageFilter_h
19 #define sitkCollidingFrontsImageFilter_h
71 SITK_RETURN_SELF_TYPE_HEADER
SetSeedPoints1 (
const std::vector< std::vector<unsigned int> >& SeedPoints1 ) { this->m_SeedPoints1 = SeedPoints1;
return *
this; }
76 std::vector< std::vector< unsigned int > >
GetSeedPoints1()
const {
return this->m_SeedPoints1; }
78 SITK_RETURN_SELF_TYPE_HEADER
AddSeedPoint1(
const std::vector< unsigned int > &point ) { this->m_SeedPoints1.push_back(point);
return *
this;}
80 SITK_RETURN_SELF_TYPE_HEADER
ClearSeedPoints1( ) { this->m_SeedPoints1.clear();
return *
this;}
86 SITK_RETURN_SELF_TYPE_HEADER
SetSeedPoints2 (
const std::vector< std::vector<unsigned int> >& SeedPoints2 ) { this->m_SeedPoints2 = SeedPoints2;
return *
this; }
91 std::vector< std::vector< unsigned int > >
GetSeedPoints2()
const {
return this->m_SeedPoints2; }
93 SITK_RETURN_SELF_TYPE_HEADER
AddSeedPoint2(
const std::vector< unsigned int > &point ) { this->m_SeedPoints2.push_back(point);
return *
this;}
95 SITK_RETURN_SELF_TYPE_HEADER
ClearSeedPoints2( ) { this->m_SeedPoints2.clear();
return *
this;}
100 SITK_RETURN_SELF_TYPE_HEADER
SetApplyConnectivity (
bool ApplyConnectivity ) { this->m_ApplyConnectivity = ApplyConnectivity;
return *
this; }
112 SITK_RETURN_SELF_TYPE_HEADER
SetNegativeEpsilon (
double NegativeEpsilon ) { this->m_NegativeEpsilon = NegativeEpsilon;
return *
this; }
120 SITK_RETURN_SELF_TYPE_HEADER
SetStopOnTargets (
bool StopOnTargets ) { this->m_StopOnTargets = StopOnTargets;
return *
this; }
123 SITK_RETURN_SELF_TYPE_HEADER
StopOnTargetsOn() {
return this->SetStopOnTargets(
true); }
130 std::string
GetName()
const {
return std::string (
"CollidingFrontsImageFilter"); }
133 std::string ToString()
const;
141 Image Execute (
const Image& image1,
const std::vector< std::vector<unsigned int> > & seedPoints1,
const std::vector< std::vector<unsigned int> > & seedPoints2,
bool applyConnectivity,
double negativeEpsilon,
bool stopOnTargets );
147 typedef Image (Self::*MemberFunctionType)(
const Image& image1 );
148 template <
class TImageType>
Image ExecuteInternal (
const Image& image1 );
172 SITKBasicFilters_EXPORT Image CollidingFronts (
const Image& image1,
const std::vector< std::vector<unsigned int> > & seedPoints1 = std::vector< std::vector<unsigned int > >(),
const std::vector< std::vector<unsigned int> > & seedPoints2 = std::vector< std::vector<unsigned int > >(),
bool applyConnectivity =
true,
double negativeEpsilon = -1e-6,
bool stopOnTargets =
false );
Self & AddSeedPoint1(const std::vector< unsigned int > &point)
Add SeedPoints1 point.
#define SITKBasicFilters_EXPORT
std::vector< std::vector< unsigned int > > GetSeedPoints2() const
typelist::MakeTypeList< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > >::Type BasicPixelIDTypeList
Self & ClearSeedPoints2()
Remove all SeedPoints2 points.
bool GetStopOnTargets() const
BasicPixelIDTypeList PixelIDTypeList
std::vector< std::vector< unsigned int > > m_SeedPoints1
CollidingFrontsImageFilter Self
Self & SetSeedPoints1(const std::vector< std::vector< unsigned int > > &SeedPoints1)
Self & AddSeedPoint2(const std::vector< unsigned int > &point)
Add SeedPoints2 point.
std::string GetName() const
Self & SetNegativeEpsilon(double NegativeEpsilon)
The Image class for SimpleITK.
bool GetApplyConnectivity() const
Self & ClearSeedPoints1()
Remove all SeedPoints1 points.
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Self & SetApplyConnectivity(bool ApplyConnectivity)
std::vector< std::vector< unsigned int > > GetSeedPoints1() const
Self & StopOnTargetsOff()
Image CollidingFronts(const Image &image1, const std::vector< std::vector< unsigned int > > &seedPoints1=std::vector< std::vector< unsigned int > >(), const std::vector< std::vector< unsigned int > > &seedPoints2=std::vector< std::vector< unsigned int > >(), bool applyConnectivity=true, double negativeEpsilon=-1e-6, bool stopOnTargets=false)
Selects a region of space where two independent fronts run towards each other.
std::vector< std::vector< unsigned int > > m_SeedPoints2
Self & SetSeedPoints2(const std::vector< std::vector< unsigned int > > &SeedPoints2)
Self & SetStopOnTargets(bool StopOnTargets)
Self & ApplyConnectivityOn()
Selects a region of space where two independent fronts run towards each other.
Self & ApplyConnectivityOff()
The base interface for SimpleITK filters that take one input image.
double GetNegativeEpsilon() const