Shapeworks Studio  2.1
Shape analysis software suite
List of all members | Public Types | Public Member Functions | Protected Member Functions
itk::PSMRegionDomain< VDimension > Class Template Reference
+ Inheritance diagram for itk::PSMRegionDomain< VDimension >:
+ Collaboration diagram for itk::PSMRegionDomain< VDimension >:

Public Types

typedef PSMRegionDomain Self
 
typedef PSMDomain< VDimension > Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef WeakPointer< const SelfConstWeakPointer
 
typedef Point< double, VDimension > PointType
 
- Public Types inherited from itk::PSMDomain< VDimension >
typedef PSMDomain Self
 
typedef DataObject Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef WeakPointer< const SelfConstWeakPointer
 
typedef Point< double, VDimension > PointType
 

Public Member Functions

 itkNewMacro (Self)
 
 itkTypeMacro (PSMRegionDomain, PSMDomain)
 
 itkStaticConstMacro (Dimension, unsigned int, VDimension)
 
virtual bool ApplyConstraints (PointType &p) const
 
 itkSetMacro (LowerBound, PointType)
 
 itkSetMacro (UpperBound, PointType)
 
virtual const PointTypeGetUpperBound () const
 
virtual const PointTypeGetLowerBound () const
 
void SetRegion (const PointType &l, const PointType &u)
 
- Public Member Functions inherited from itk::PSMDomain< VDimension >
 itkNewMacro (Self)
 
 itkTypeMacro (PSMDomain, DataObject)
 
 itkStaticConstMacro (Dimension, unsigned int, VDimension)
 
virtual double Distance (const PointType &a, const PointType &b) const
 
void DisableConstraints ()
 
void EnableConstraints ()
 
bool GetConstraintsEnabled () const
 
void SetConstraintsEnabled (bool g)
 

Protected Member Functions

void PrintSelf (std::ostream &os, Indent indent) const
 
- Protected Member Functions inherited from itk::PSMDomain< VDimension >
void PrintSelf (std::ostream &os, Indent indent) const
 

Additional Inherited Members

- Protected Attributes inherited from itk::PSMDomain< VDimension >
bool m_ConstraintsEnabled
 

Detailed Description

template<unsigned int VDimension>
class itk::PSMRegionDomain< VDimension >

Definition at line 33 of file itkPSMRegionDomain.h.

Member Typedef Documentation

template<unsigned int VDimension>
typedef Point<double, VDimension> itk::PSMRegionDomain< VDimension >::PointType

Point type used to store particle locations.

Definition at line 53 of file itkPSMRegionDomain.h.

template<unsigned int VDimension>
typedef PSMRegionDomain itk::PSMRegionDomain< VDimension >::Self

Standard class typedefs

Definition at line 37 of file itkPSMRegionDomain.h.

Member Function Documentation

template<unsigned int VDimension>
virtual bool itk::PSMRegionDomain< VDimension >::ApplyConstraints ( PointType p) const
inlinevirtual

Apply any constraints to the given point location. This method may, for example, implement boundary conditions or restrict points to lie on a surface. This class will throw an exception if the point is outside of the region. To specify other behaviors, create a subclass and override this method.

Reimplemented from itk::PSMDomain< VDimension >.

Reimplemented in itk::PSMImplicitSurfaceDomain< T, VDimension >.

Definition at line 60 of file itkPSMRegionDomain.h.

61  {
62  for (unsigned int i = 0; i < VDimension; i++)
63  {
64  if ( p[i] < m_LowerBound[i] || p[i] > m_UpperBound[i])
65  {
66  itkExceptionMacro(<< "Point " << p << " is outside of the specified Domain, with bounding box "
67  << m_LowerBound << " - " << m_UpperBound
68  << std::endl;);
69 
70  }
71  }
72  return false;
73  }
template<unsigned int VDimension>
virtual const PointType& itk::PSMRegionDomain< VDimension >::GetLowerBound ( ) const
inlinevirtual

A Domain may optionally return a bounding box. The lower bound method gives the upper-left-hand corner of the domain. The upper bound method gives the lower-right-hand-corner of the domain. If a domain does not define boundaries, these methods will throw an exceptions

Reimplemented from itk::PSMDomain< VDimension >.

Definition at line 80 of file itkPSMRegionDomain.h.

81  { return m_LowerBound; }
template<unsigned int VDimension>
itk::PSMRegionDomain< VDimension >::itkNewMacro ( Self  )

Method for creation through the object factory.

template<unsigned int VDimension>
itk::PSMRegionDomain< VDimension >::itkSetMacro ( LowerBound  ,
PointType   
)

Set the lower/upper bound of the bounded region.

template<unsigned int VDimension>
itk::PSMRegionDomain< VDimension >::itkStaticConstMacro ( Dimension  ,
unsigned  int,
VDimension   
)

Dimensionality of the domain of the particle system.

template<unsigned int VDimension>
itk::PSMRegionDomain< VDimension >::itkTypeMacro ( PSMRegionDomain< VDimension >  ,
PSMDomain   
)

Run-time type information (and related methods).

template<unsigned int VDimension>
void itk::PSMRegionDomain< VDimension >::SetRegion ( const PointType l,
const PointType u 
)
inline

Specify the lower and upper bounds (1st and 2nd parameters, respectively) of the region.

Definition at line 85 of file itkPSMRegionDomain.h.

86  {
87  this->SetLowerBound(l);
88  this->SetUpperBound(u);
89  }

The documentation for this class was generated from the following file: