Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d5e74628f0e673bb8680aebce32b2c04 > files > 16185

itk-doc-3.12.0-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ITK: itkImplicitManifoldNormalVectorFilter.h Source File</title>
<link href="DoxygenStyle.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">


<!--  Section customized for INSIGHT : Tue Jul 17 01:02:45 2001 -->
<center>
<a href="index.html" class="qindex">Main Page</a>&nbsp;&nbsp; 
<a href="modules.html" class="qindex">Groups</a>&nbsp;&nbsp;
<a href="namespaces.html" class="qindex">Namespace List</a>&nbsp;&nbsp;
<a href="hierarchy.html" class="qindex">Class Hierarchy</a>&nbsp;&nbsp;
<a href="classes.html" class="qindex">Alphabetical List</a>&nbsp;&nbsp;
<a href="annotated.html" class="qindex">Compound List</a>&nbsp;&nbsp; 
<a href="files.html" class="qindex">File
List</a>&nbsp;&nbsp; 
<a href="namespacemembers.html" class="qindex">Namespace Members</a>&nbsp;&nbsp; 
<a href="functions.html" class="qindex">Compound Members</a>&nbsp;&nbsp; 
<a href="globals.html" class="qindex">File Members</a>&nbsp;&nbsp;
<a href="pages.html" class="qindex">Concepts</a></center>


<!-- Generated by Doxygen 1.5.9 -->
  <div class="navpath"><a class="el" href="dir_02e23d841c198393a6e961e9a0678fff.html">Code</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_00ffda33c24cbbf617b202f4f3bcb7e8.html">BasicFilters</a>
  </div>
<div class="contents">
<h1>itkImplicitManifoldNormalVectorFilter.h</h1><a href="itkImplicitManifoldNormalVectorFilter_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*=========================================================================</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment">  Program:   Insight Segmentation &amp; Registration Toolkit</span>
<a name="l00004"></a>00004 <span class="comment">  Module:    $RCSfile: itkImplicitManifoldNormalVectorFilter.h,v $</span>
<a name="l00005"></a>00005 <span class="comment">  Language:  C++</span>
<a name="l00006"></a>00006 <span class="comment">  Date:      $Date: 2008-10-16 16:45:10 $</span>
<a name="l00007"></a>00007 <span class="comment">  Version:   $Revision: 1.4 $</span>
<a name="l00008"></a>00008 <span class="comment"></span>
<a name="l00009"></a>00009 <span class="comment">  Copyright (c) Insight Software Consortium. All rights reserved.</span>
<a name="l00010"></a>00010 <span class="comment">  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.</span>
<a name="l00011"></a>00011 <span class="comment"></span>
<a name="l00012"></a>00012 <span class="comment">     This software is distributed WITHOUT ANY WARRANTY; without even </span>
<a name="l00013"></a>00013 <span class="comment">     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR </span>
<a name="l00014"></a>00014 <span class="comment">     PURPOSE.  See the above copyright notices for more information.</span>
<a name="l00015"></a>00015 <span class="comment"></span>
<a name="l00016"></a>00016 <span class="comment">     =========================================================================*/</span>
<a name="l00017"></a>00017 <span class="preprocessor">#ifndef __itkImplicitManifoldNormalVectorFilter_h</span>
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __itkImplicitManifoldNormalVectorFilter_h</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span>
<a name="l00020"></a>00020 <span class="preprocessor">#include "<a class="code" href="itkConstNeighborhoodIterator_8h.html">itkConstNeighborhoodIterator.h</a>"</span>
<a name="l00021"></a>00021 <span class="preprocessor">#include "<a class="code" href="itkNormalVectorFunctionBase_8h.html">itkNormalVectorFunctionBase.h</a>"</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="itkFiniteDifferenceSparseImageFilter_8h.html">itkFiniteDifferenceSparseImageFilter.h</a>"</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include "<a class="code" href="itkVector_8h.html">itkVector.h</a>"</span>
<a name="l00024"></a>00024 
<a name="l00025"></a>00025 <span class="keyword">namespace </span>itk {
<a name="l00026"></a>00026 
<a name="l00070"></a>00070 <span class="keyword">template</span> &lt;<span class="keyword">class</span> TInputImage, <span class="keyword">class</span> TSparseOutputImage&gt;
<a name="l00071"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html">00071</a> <span class="keyword">class </span><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html" title="This class implements the filter for computing the normal vectors from a scalar implicit...">ImplicitManifoldNormalVectorFilter</a>  
<a name="l00072"></a>00072   : <span class="keyword">public</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html" title="This class implements a multi-threaded base class for Image to SparseImage finite...">FiniteDifferenceSparseImageFilter</a> &lt;TInputImage, TSparseOutputImage&gt;
<a name="l00073"></a>00073 {
<a name="l00074"></a>00074 <span class="keyword">public</span>:  
<a name="l00075"></a>00075 
<a name="l00077"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#07fcd99623962dcf05ea0e68dc555619">00077</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html" title="This class implements the filter for computing the normal vectors from a scalar implicit...">ImplicitManifoldNormalVectorFilter</a> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html" title="This class implements the filter for computing the normal vectors from a scalar implicit...">Self</a>;
<a name="l00078"></a>00078   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html" title="This class implements a multi-threaded base class for Image to SparseImage finite...">FiniteDifferenceSparseImageFilter</a> &lt;
<a name="l00079"></a>00079     TInputImage,
<a name="l00080"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#6c0bffbc684f3321d497c34282704286">00080</a>     TSparseOutputImage&gt;                      <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html">Superclass</a>;
<a name="l00081"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#279750ea8a9ea4f05beb918d18eecd6a">00081</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer&lt;Self&gt;</a>                 <a class="code" href="classitk_1_1SmartPointer.html">Pointer</a>;
<a name="l00082"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#bc9768ad79a37ff1c7e1ee76cb249ea3">00082</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer&lt;const Self&gt;</a>           <a class="code" href="classitk_1_1SmartPointer.html">ConstPointer</a>;
<a name="l00083"></a>00083 
<a name="l00085"></a>00085   <a class="code" href="itkMacro_8h.html#574c1f86661d409dd32c742307a0e96a">itkTypeMacro</a>(<a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html" title="This class implements the filter for computing the normal vectors from a scalar implicit...">ImplicitManifoldNormalVectorFilter</a>,
<a name="l00086"></a>00086                <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html" title="This class implements a multi-threaded base class for Image to SparseImage finite...">FiniteDifferenceSparseImageFilter</a>);
<a name="l00087"></a>00087 
<a name="l00089"></a>00089   <a class="code" href="itkMacro_8h.html#0fdc15685afa271857c57e7cd482f30c">itkNewMacro</a>(<a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html" title="This class implements the filter for computing the normal vectors from a scalar implicit...">Self</a>);
<a name="l00090"></a>00090 
<a name="l00092"></a>00092   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#01553c4dd683f370dbddcc93cc95e89c">itkStaticConstMacro</a>(ImageDimension, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>,Superclass::ImageDimension);
<a name="l00093"></a>00093 
<a name="l00095"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#6f290881c3b99f4ad29a66cd73de27ef">00095</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#e37c14b0abb6855bbff59e9446197a2a">Superclass::InputImageType</a>  <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#6f290881c3b99f4ad29a66cd73de27ef">InputImageType</a>;
<a name="l00096"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f428a056730037cb61c7264495bef87a">00096</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#52437ba578aa7775b5a714c7567b9066">Superclass::IndexType</a>       <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f428a056730037cb61c7264495bef87a">IndexType</a>;
<a name="l00097"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f3294b359337e6bca3eb9463abc3cf3b">00097</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#7f93a93055e1ca738e6d16b8308d3491">Superclass::NodeDataType</a>    <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f3294b359337e6bca3eb9463abc3cf3b">NormalVectorType</a>;
<a name="l00098"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">00098</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#6b775e50fc17f636ff5ff8c83d98dd69">Superclass::NodeValueType</a>   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>;
<a name="l00099"></a>00099   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceFunction.html">Superclass::FiniteDifferenceFunctionType</a>
<a name="l00100"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#b5135d98cb6f4f225c7ebb74f0eef784">00100</a>                                                <a class="code" href="classitk_1_1FiniteDifferenceFunction.html">FiniteDifferenceFunctionType</a>;
<a name="l00101"></a>00101 
<a name="l00102"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a7ce406e29518dc5e977058d8066fb36">00102</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#f65fd4221afa6be020a50cb6cdad244a">Superclass::SparseOutputImageType</a> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a7ce406e29518dc5e977058d8066fb36">SparseOutputImageType</a>;
<a name="l00103"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#98ea4a58a9b090a103e4e9d75dfde75e">00103</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#364d696d2d4b979c202f29e5c20cc285">Superclass::OutputNodeType</a>        <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#98ea4a58a9b090a103e4e9d75dfde75e">NormalBandNodeType</a>;
<a name="l00104"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#4c0a661d35f211e005b545f5b37f7267">00104</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceSparseImageFilter.html#fe8ccd68092f82ede7741c061f95d619">Superclass::NodeListType</a>          <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#4c0a661d35f211e005b545f5b37f7267">NodeListType</a>;
<a name="l00105"></a>00105   
<a name="l00107"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a3b8279a4e35886b53f8f590531320cf">00107</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1ConstNeighborhoodIterator.html" title="Const version of NeighborhoodIterator, defining iteration of a local N-dimensional...">ConstNeighborhoodIterator &lt;InputImageType&gt;</a> <a class="code" href="classitk_1_1ConstNeighborhoodIterator.html" title="Const version of NeighborhoodIterator, defining iteration of a local N-dimensional...">InputImageIteratorType</a>;
<a name="l00108"></a>00108 
<a name="l00111"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#190c24de9b4e77890a5e28869eebc004">00111</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1NormalVectorFunctionBase.html" title="This class defines the common functionality for Sparse Image neighborhoods of unit...">NormalVectorFunctionBase &lt;SparseOutputImageType&gt;</a> <a class="code" href="classitk_1_1NormalVectorFunctionBase.html" title="This class defines the common functionality for Sparse Image neighborhoods of unit...">NormalFunctionType</a>;
<a name="l00112"></a>00112 
<a name="l00114"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#078765070b8b54b242c61c3985acbdcd">00114</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1FiniteDifferenceFunction.html#856791a253185b8e83e418fbd01d5bc5">FiniteDifferenceFunctionType::RadiusType</a> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#078765070b8b54b242c61c3985acbdcd">RadiusType</a>;
<a name="l00115"></a>00115 
<a name="l00117"></a>00117   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#98601e258fb45ea82ca3009cdd10a394">SetNormalFunction</a>( <a class="code" href="classitk_1_1NormalVectorFunctionBase.html" title="This class defines the common functionality for Sparse Image neighborhoods of unit...">NormalFunctionType</a> *nf );  
<a name="l00118"></a>00118 
<a name="l00119"></a>00119   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(MaxIteration, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>);
<a name="l00120"></a>00120   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(MaxIteration, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>);
<a name="l00121"></a>00121   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(IsoLevelLow,  <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00122"></a>00122   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(IsoLevelLow,  <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00123"></a>00123   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(IsoLevelHigh, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00124"></a>00124   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(IsoLevelHigh, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00125"></a>00125   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(MinVectorNorm, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00126"></a>00126   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(MinVectorNorm, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00127"></a>00127   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(UnsharpMaskingFlag, <span class="keywordtype">bool</span>);
<a name="l00128"></a>00128   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(UnsharpMaskingFlag, <span class="keywordtype">bool</span>);
<a name="l00129"></a>00129   <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>(UnsharpMaskingWeight, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00130"></a>00130   <a class="code" href="itkMacro_8h.html#1600305bb01e39e87c472d8bf29bd1cf">itkGetMacro</a>(UnsharpMaskingWeight, <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a>);
<a name="l00131"></a>00131  
<a name="l00132"></a>00132 <span class="keyword">protected</span>:   
<a name="l00133"></a>00133   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#370a89519b0cd6f63ab31e9e149a355d">ImplicitManifoldNormalVectorFilter</a>();  
<a name="l00134"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#91326aa2016565f059f0f03043df91ff">00134</a>   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#91326aa2016565f059f0f03043df91ff">~ImplicitManifoldNormalVectorFilter</a>() {};
<a name="l00135"></a>00135   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#45fe6398a823ba7c639ff68c081072eb">PrintSelf</a>(std::ostream&amp; os, <a class="code" href="classitk_1_1Indent.html" title="Control indentation during Print() invocation.">Indent</a> indent) <span class="keyword">const</span>;
<a name="l00136"></a>00136 
<a name="l00138"></a>00138   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#fa523b341feb9de40618aaa14d0bd65b">Initialize</a>();
<a name="l00139"></a>00139 
<a name="l00141"></a>00141   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a3e2e59eb0266c247d764caf15113467">SetNormalBand</a>();
<a name="l00142"></a>00142 
<a name="l00145"></a>00145   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#12253b10390d9d6d35fcf062a1b57ccb">InitializeNormalBandNode</a>( <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#98ea4a58a9b090a103e4e9d75dfde75e">NormalBandNodeType</a> *node,
<a name="l00146"></a>00146                                  <span class="keyword">const</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a3b8279a4e35886b53f8f590531320cf">InputImageIteratorType</a> &amp;it );
<a name="l00147"></a>00147 
<a name="l00150"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#7631c1d6926b5b7974c82b23a80f907a">00150</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#7631c1d6926b5b7974c82b23a80f907a">CopyInputToOutput</a>() {};
<a name="l00151"></a>00151 
<a name="l00154"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#5cfae3bb93d8b813e388fb3c81ea7d86">00154</a>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#5cfae3bb93d8b813e388fb3c81ea7d86">Halt</a>()
<a name="l00155"></a>00155     {
<a name="l00156"></a>00156     <span class="keywordflow">if</span> (this-&gt;<a class="code" href="classitk_1_1FiniteDifferenceImageFilter.html#2521f5d6289be1e221e82483cb76cd50">GetElapsedIterations</a>() == m_MaxIteration)
<a name="l00157"></a>00157       {
<a name="l00158"></a>00158       <span class="keywordflow">return</span> <span class="keyword">true</span>;
<a name="l00159"></a>00159       }
<a name="l00160"></a>00160     <span class="keywordflow">else</span>
<a name="l00161"></a>00161       {
<a name="l00162"></a>00162       <span class="keywordflow">return</span> <span class="keyword">false</span>;
<a name="l00163"></a>00163       }
<a name="l00164"></a>00164     }
<a name="l00165"></a>00165 <span class="keyword">protected</span>:
<a name="l00166"></a>00166 
<a name="l00168"></a><a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9645ac6c5c27469e4ec67da4e2fc4fc3">00168</a>   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f3294b359337e6bca3eb9463abc3cf3b">NormalVectorType</a> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9645ac6c5c27469e4ec67da4e2fc4fc3">DataConstraint</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#f3294b359337e6bca3eb9463abc3cf3b">NormalVectorType</a> &amp;data )<span class="keyword"> const </span>
<a name="l00169"></a>00169 <span class="keyword">    </span>{
<a name="l00170"></a>00170     <span class="keywordflow">return</span> (data / (m_MinVectorNorm + data.GetNorm()));
<a name="l00171"></a>00171     }
<a name="l00172"></a>00172 
<a name="l00176"></a>00176   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#a263a333881173d77e178829f1ec8965">PostProcessOutput</a>();
<a name="l00177"></a>00177 
<a name="l00178"></a>00178 <span class="keyword">private</span>:
<a name="l00179"></a>00179   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#370a89519b0cd6f63ab31e9e149a355d">ImplicitManifoldNormalVectorFilter</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#07fcd99623962dcf05ea0e68dc555619">Self</a>&amp;); <span class="comment">//purposely not implemented</span>
<a name="l00180"></a>00180   <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#07fcd99623962dcf05ea0e68dc555619">Self</a>&amp;); <span class="comment">//purposely not implemented</span>
<a name="l00181"></a>00181     
<a name="l00183"></a>00183   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#190c24de9b4e77890a5e28869eebc004">NormalFunctionType</a> *m_NormalFunction;
<a name="l00184"></a>00184 
<a name="l00186"></a>00186   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> m_MaxIteration;
<a name="l00187"></a>00187 
<a name="l00190"></a>00190   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a> m_IsoLevelLow, m_IsoLevelHigh;
<a name="l00191"></a>00191 
<a name="l00193"></a>00193   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a> m_MinVectorNorm;
<a name="l00194"></a>00194 
<a name="l00196"></a>00196   <span class="keywordtype">bool</span> m_UnsharpMaskingFlag;
<a name="l00197"></a>00197 
<a name="l00200"></a>00200   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a> m_UnsharpMaskingWeight;
<a name="l00201"></a>00201 
<a name="l00203"></a>00203   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> m_Indicator[<a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>(ImageDimension)];
<a name="l00204"></a>00204   <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>  m_NumVertex;
<a name="l00205"></a>00205   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a> m_DimConst;
<a name="l00206"></a>00206   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#9f7858c841a9f1b06bc64ad93681732b">NodeValueType</a> m_DimConst2;
<a name="l00207"></a>00207   <a class="code" href="classitk_1_1ImplicitManifoldNormalVectorFilter.html#078765070b8b54b242c61c3985acbdcd">RadiusType</a>    m_ManifoldRadius;
<a name="l00208"></a>00208 
<a name="l00209"></a>00209 };
<a name="l00210"></a>00210 
<a name="l00211"></a>00211 }<span class="comment">// end namespace itk</span>
<a name="l00212"></a>00212 
<a name="l00213"></a>00213 <span class="preprocessor">#ifndef ITK_MANUAL_INSTANTIATION</span>
<a name="l00214"></a>00214 <span class="preprocessor"></span><span class="preprocessor">#include "itkImplicitManifoldNormalVectorFilter.txx"</span>
<a name="l00215"></a>00215 <span class="preprocessor">#endif</span>
<a name="l00216"></a>00216 <span class="preprocessor"></span>
<a name="l00217"></a>00217 <span class="preprocessor">#endif</span>
<a name="l00218"></a>00218 <span class="preprocessor"></span>
</pre></div></div>
<hr><address><small>
Generated at Thu May 7 23:16:35 2009 for ITK  by <a href="http://www.stack.nl/~dimitri/doxygen/index.html"> <img 
src="http://www.stack.nl/~dimitri/doxygen/doxygen.png" alt="doxygen"
align="middle" border=0 width=110 height=53>
</a> 1.5.9 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2000</small></address>
</body>
</html>