00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkQuadEdgeMeshEulerOperatorCreateCenterVertexFunction_h
00018 #define __itkQuadEdgeMeshEulerOperatorCreateCenterVertexFunction_h
00019
00020 #include "itkQuadEdgeMeshFunctionBase.h"
00021
00022 namespace itk
00023 {
00031 template < class TMesh, class TQEType >
00032 class ITK_EXPORT QuadEdgeMeshEulerOperatorCreateCenterVertexFunction :
00033 public QuadEdgeMeshFunctionBase< TMesh, TQEType* >
00034 {
00035 public:
00036
00038 typedef QuadEdgeMeshEulerOperatorCreateCenterVertexFunction Self;
00039 typedef QuadEdgeMeshFunctionBase< TMesh, TQEType* > Superclass;
00040 typedef SmartPointer< Self > Pointer;
00041 typedef SmartPointer< const Self > ConstPointer;
00042
00043 itkNewMacro( Self );
00045 itkTypeMacro( QuadEdgeMeshEulerOperatorCreateCenterVertexFunction, QuadEdgeMeshFunctionBase );
00046
00048 typedef TQEType QEType;
00049
00050 typedef typename Superclass::MeshType MeshType;
00051 typedef typename Superclass::OutputType OutputType;
00052
00053 typedef typename MeshType::PointIdentifier PointIdentifier;
00054 typedef typename MeshType::PointType PointType;
00055 typedef typename MeshType::CoordRepType CoordRepType;
00056 typedef typename MeshType::VectorType VectorType;
00057
00059 virtual OutputType Evaluate( QEType* e );
00060 PointIdentifier GetNewPointID( )
00061 {
00062 return( this->m_NewPointID );
00063 };
00065
00066 protected:
00067 QuadEdgeMeshEulerOperatorCreateCenterVertexFunction( )
00068 {
00069 this->m_NewPointID = (PointIdentifier)0;
00070 }
00071
00072 ~QuadEdgeMeshEulerOperatorCreateCenterVertexFunction( ) { };
00073
00074 private:
00075 QuadEdgeMeshEulerOperatorCreateCenterVertexFunction( const Self& );
00076
00077 void operator=( const Self& );
00078
00079 PointIdentifier m_NewPointID;
00080
00081 };
00082
00083 }
00084
00085 #include "itkQuadEdgeMeshEulerOperatorCreateCenterVertexFunction.txx"
00086
00087 #endif // __ITKQUADEDGEMESH__ITKQEEULEROPERATORCREATECENTERVERTEXFUNCTION__H__
00088
00089
00090