18#ifndef itkTubeSpatialObject_h
19#define itkTubeSpatialObject_h
41template <
unsigned int TDimension = 3,
class TSpatialObjectPo
intType = TubeSpatialObjectPo
int<TDimension>>
58 using typename Superclass::TransformType;
59 using typename Superclass::SpatialObjectPointType;
63 using typename Superclass::CovariantVectorType;
64 using typename Superclass::BoundingBoxType;
78 itkSetMacro(EndRounded,
bool);
79 itkGetConstMacro(EndRounded,
bool);
80 itkBooleanMacro(EndRounded);
87#if !defined(ITK_LEGACY_REMOVE)
89 itkLegacyMacro(
bool ComputeTangentAndNormals())
91 return ComputeTangentsAndNormals();
101 itkSetMacro(ParentPoint,
int);
105 itkGetConstMacro(ParentPoint,
int);
109 itkSetMacro(Root,
bool);
113 itkGetConstMacro(Root,
bool);
115 itkBooleanMacro(Root);
126 using Superclass::IsInsideInObjectSpace;
155#ifndef ITK_MANUAL_INSTANTIATION
156# include "itkTubeSpatialObject.hxx"
Base class for all data objects in ITK.
Control indentation during Print() invocation.
Base class for most ITK classes.
This class serves as the base class for point-based spatial objects.
A templated class holding a geometric point in n-Dimensional space.
Representation of a tube based on the spatial object classes.
virtual LightObject::Pointer InternalClone() const override
~TubeSpatialObject() override=default
bool ComputeTangentsAndNormals()
std::vector< TubePointType > TubePointListType
void PrintSelf(std::ostream &os, Indent indent) const override
TSpatialObjectPointType TubePointType
bool IsInsideInObjectSpace(const PointType &point) const override
unsigned int RemoveDuplicatePointsInObjectSpace(double minSpacingInObjectSpace=0)
void CopyInformation(const DataObject *data) override
void ComputeMyBoundingBox() override
Define a front-end to the STL "vector" container that conforms to the IndexedContainerInterface.
ImageBaseType::PointType PointType
ImageBaseType::SpacingType VectorType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
*par Constraints *The filter image with at least two dimensions and a vector *length of at least The theory supports extension to scalar but *the implementation of the itk vector classes do not **The template parameter TRealType must be floating point(float or double) or *a user-defined "real" numerical type with arithmetic operations defined *sufficient to compute derivatives. **\par Performance *This filter will automatically multithread if run with *SetUsePrincipleComponents