18#ifndef itkBinaryMask3DMeshSource_h
19#define itkBinaryMask3DMeshSource_h
21#include "vnl/vnl_matrix_fixed.h"
70template <
typename TInputImage,
typename TOutputMesh>
134 using Superclass::SetInput;
141 if (iRegion != m_RegionOfInterest)
143 this->m_RegionOfInterest = iRegion;
144 this->m_RegionOfInterestProvidedByUser =
true;
161 bool m_RegionOfInterestProvidedByUser{
false };
200 AddCells(
unsigned char celltype,
unsigned char celltran,
int index);
204 unsigned char * nodesid,
218 unsigned char m_LUT[256][2]{};
228 int m_CurrentRowIndex{ 0 };
229 int m_CurrentFrameIndex{ 0 };
230 int m_LastRowNum{ 0 };
231 int m_LastFrameNum{ 0 };
232 int m_CurrentRowNum{ 200 };
233 int m_CurrentFrameNum{ 2000 };
234 unsigned char m_AvailableNodes[14]{};
236 double m_LocationOffset[14][3]{};
241 int m_NodeLimit{ 2000 };
242 int m_CellLimit{ 4000 };
243 int m_ImageWidth{ 0 };
244 int m_ImageHeight{ 0 };
245 int m_ImageDepth{ 0 };
248 int m_FrameFlag{ 0 };
249 int m_LastRowIndex{ 0 };
250 int m_LastVoxelIndex{ 0 };
251 int m_LastFrameIndex{ 0 };
253 unsigned char m_PointFound{ 0 };
264#ifndef ITK_MANUAL_INSTANTIATION
265# include "itkBinaryMask3DMeshSource.hxx"
itk::IdentifierType IdentifierType
typename OutputMeshType::PointsContainerPointer PointsContainerPointer
typename InputImageType::Pointer InputImagePointer
typename OutputMeshType::PointType OPointType
typename InputImageType::RegionType RegionType
typename InputImageType::PointType OriginType
typename OutputMeshType::CellsContainerPointer CellsContainerPointer
typename OutputMeshType::PointsContainer PointsContainer
void XRotation(unsigned char *x)
~BinaryMask3DMeshSource() override
TInputImage InputImageType
virtual void SetInput(const InputImageType *image)
void YRotation(unsigned char *x)
void inverse(unsigned char *x)
typename OutputMeshType::MeshTraits OMeshTraits
typename InputImageType::ConstPointer InputImageConstPointer
void SetRegionOfInterest(const RegionType &iRegion)
typename OutputMeshType::CellTraits CellTraits
TOutputMesh OutputMeshType
void XFlip(unsigned char *x)
void ZRotation(unsigned char *x)
itk::SizeValueType SizeValueType
typename InputImageType::IndexType InputImageIndexType
void GenerateData() override
typename InputImageType::SizeType SizeType
typename OutputMeshType::CellsContainer CellsContainer
typename TriCell::SelfAutoPointer TriCellAutoPointer
void GenerateOutputInformation() override
typename InputImageType::SpacingType SpacingType
typename InputImageType::SizeType InputImageSizeType
IdentifierType SearchThroughLastFrame(int index, int start, int end)
typename OMeshTraits::PixelType OPixelType
typename OutputMeshType::Pointer OutputMeshPointer
typename InputImageType::PixelType InputPixelType
IdentifierType SearchThroughLastRow(int index, int start, int end)
void CellTransfer(unsigned char *nodesid, unsigned char celltran)
void PrintSelf(std::ostream &os, Indent indent) const override
void YFlip(unsigned char *x)
void AddNodes(int index, unsigned char *nodesid, IdentifierType *globalnodesid, IdentifierType **currentrowtmp, IdentifierType **currentframetmp)
void AddCells(unsigned char celltype, unsigned char celltran, int index)
void ZFlip(unsigned char *x)
An abstract interface for cells.
A templated class holding a n-Dimensional covariant vector.
A multi-dimensional iterator templated over image type that walks a region of pixels.
ImageToMeshFilter is the base class for all process objects that output Mesh data and require image d...
Control indentation during Print() invocation.
Light weight base class for most itk classes.
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
ImageBaseType::RegionType RegionType
ImageBaseType::IndexType IndexType
ImageBaseType::PointType PointType
ImageBaseType::SizeType SizeType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
SizeValueType IdentifierType
unsigned long SizeValueType