itk::ParticleRegionNeighborhood
#include <itkParticleRegionNeighborhood.h>
Inherits from itk::ParticleNeighborhood< 3 >, DataObject
Protected Classes
Name | |
---|---|
struct | IteratorNodePair |
Public Types
Name | |
---|---|
typedef ParticleRegionNeighborhood | Self |
typedef ParticleNeighborhood< VDimension > | Superclass |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const Self > | ConstPointer |
typedef WeakPointer< const Self > | ConstWeakPointer |
using shapeworks::ParticleDomain | DomainType |
typedef Superclass::PointType | PointType |
typedef Superclass::PointContainerType | PointContainerType |
typedef Superclass::PointVectorType | PointVectorType |
typedef PowerOfTwoPointTree< VDimension > | PointTreeType |
Protected Types
Name | |
---|---|
typedef ParticleContainer< IteratorNodePair > | IteratorMapType |
Public Functions
Name | |
---|---|
itkNewMacro(Self ) | |
itkTypeMacro(ParticleRegionNeighborhood , ParticleNeighborhood ) | |
itkStaticConstMacro(Dimension , unsigned int , VDimension ) | |
virtual PointVectorType | FindNeighborhoodPoints(const PointType & , int idx, double ) const |
virtual void | SetDomain(DomainType::Pointer p) override |
itkSetMacro(TreeLevels , unsigned int ) | |
itkGetMacro(TreeLevels , unsigned int ) | |
void | PrintSelf(std::ostream & os, Indent indent) const |
virtual void | AddPosition(const PointType & p, unsigned int idx, int threadId =0) |
virtual void | SetPosition(const PointType & p, unsigned int idx, int threadId =0) |
virtual void | RemovePosition(unsigned int idx, int threadId =0) |
Protected Functions
Name | |
---|---|
ParticleRegionNeighborhood() | |
virtual | ~ParticleRegionNeighborhood() |
Protected Attributes
Name | |
---|---|
PointTreeType::Pointer | m_Tree |
IteratorMapType::Pointer | m_IteratorMap |
unsigned int | m_TreeLevels |
Additional inherited members
Public Functions inherited from itk::ParticleNeighborhood< 3 >
Name | |
---|---|
itkSetObjectMacro(PointContainer , PointContainerType ) | |
itkGetConstObjectMacro(PointContainer , PointContainerType ) | |
DomainType::Pointer | GetDomain() const |
Protected Functions inherited from itk::ParticleNeighborhood< 3 >
Name | |
---|---|
ParticleNeighborhood() | |
virtual | ~ParticleNeighborhood() |
Detailed Description
template <unsigned int VDimension =3>
class itk::ParticleRegionNeighborhood;
ParticleRegionNeighborhood is a general purpose neighborhood object that computes neighborhoods based on distance from a point. It requires a domain that provides bounds information and a distance metric. This class uses a PowerOfTwoPointTree to cache point and index values so that FindNeighborhoodPoints is somewhat optimized.
Public Types Documentation
typedef Self
typedef ParticleRegionNeighborhood itk::ParticleRegionNeighborhood< VDimension >::Self;
Standard class typedefs
typedef Superclass
typedef ParticleNeighborhood<VDimension> itk::ParticleRegionNeighborhood< VDimension >::Superclass;
typedef Pointer
typedef SmartPointer<Self> itk::ParticleRegionNeighborhood< VDimension >::Pointer;
typedef ConstPointer
typedef SmartPointer<const Self> itk::ParticleRegionNeighborhood< VDimension >::ConstPointer;
typedef ConstWeakPointer
typedef WeakPointer<const Self> itk::ParticleRegionNeighborhood< VDimension >::ConstWeakPointer;
using DomainType
using itk::ParticleRegionNeighborhood< VDimension >::DomainType = shapeworks::ParticleDomain;
typedef PointType
typedef Superclass::PointType itk::ParticleRegionNeighborhood< VDimension >::PointType;
Inherited typedefs from parent class.
typedef PointContainerType
typedef Superclass::PointContainerType itk::ParticleRegionNeighborhood< VDimension >::PointContainerType;
typedef PointVectorType
typedef Superclass::PointVectorType itk::ParticleRegionNeighborhood< VDimension >::PointVectorType;
typedef PointTreeType
typedef PowerOfTwoPointTree<VDimension> itk::ParticleRegionNeighborhood< VDimension >::PointTreeType;
PowerOfTwoTree type used to sort points according to location.
Protected Types Documentation
typedef IteratorMapType
typedef ParticleContainer<IteratorNodePair> itk::ParticleRegionNeighborhood< VDimension >::IteratorMapType;
Public Functions Documentation
function itkNewMacro
itkNewMacro(
Self
)
Method for creation through the object factory.
function itkTypeMacro
itkTypeMacro(
ParticleRegionNeighborhood ,
ParticleNeighborhood
)
Run-time type information (and related methods).
function itkStaticConstMacro
itkStaticConstMacro(
Dimension ,
unsigned int ,
VDimension
)
Dimensionality of the domain of the particle system.
function FindNeighborhoodPoints
virtual PointVectorType FindNeighborhoodPoints(
const PointType & ,
int idx,
double
) const
Reimplements: itk::ParticleNeighborhood::FindNeighborhoodPoints
Compile a list of points that are within a specified radius of a given point. This implementation uses a PowerOfTwoTree to sort points according to location.
function SetDomain
virtual void SetDomain(
DomainType::Pointer p
) override
Reimplements: itk::ParticleNeighborhood::SetDomain
Override SetDomain so that we can grab the region extent info and construct our tree.
function itkSetMacro
itkSetMacro(
TreeLevels ,
unsigned int
)
Set/Get the number of levels in the sorting tree.
function itkGetMacro
itkGetMacro(
TreeLevels ,
unsigned int
)
function PrintSelf
inline void PrintSelf(
std::ostream & os,
Indent indent
) const
function AddPosition
virtual void AddPosition(
const PointType & p,
unsigned int idx,
int threadId =0
)
Reimplements: itk::ParticleNeighborhood::AddPosition
For efficiency, itkNeighborhoods are not necessarily observers of itkParticleSystem, but have specific methods invoked for various events. AddPosition is called by itkParticleSystem when a particle location is added. SetPosition is called when a particle location is set. RemovePosition is called when a particle location is removed.
function SetPosition
virtual void SetPosition(
const PointType & p,
unsigned int idx,
int threadId =0
)
Reimplements: itk::ParticleNeighborhood::SetPosition
function RemovePosition
virtual void RemovePosition(
unsigned int idx,
int threadId =0
)
Reimplements: itk::ParticleNeighborhood::RemovePosition
Protected Functions Documentation
function ParticleRegionNeighborhood
inline ParticleRegionNeighborhood()
function ~ParticleRegionNeighborhood
inline virtual ~ParticleRegionNeighborhood()
Protected Attributes Documentation
variable m_Tree
PointTreeType::Pointer m_Tree;
variable m_IteratorMap
IteratorMapType::Pointer m_IteratorMap;
variable m_TreeLevels
unsigned int m_TreeLevels;
Updated on 2022-07-23 at 16:40:06 -0600