<!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: itkBSplineScatteredDataPointSetToImageFilter.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> <a href="modules.html" class="qindex">Groups</a> <a href="namespaces.html" class="qindex">Namespace List</a> <a href="hierarchy.html" class="qindex">Class Hierarchy</a> <a href="classes.html" class="qindex">Alphabetical List</a> <a href="annotated.html" class="qindex">Compound List</a> <a href="files.html" class="qindex">File List</a> <a href="namespacemembers.html" class="qindex">Namespace Members</a> <a href="functions.html" class="qindex">Compound Members</a> <a href="globals.html" class="qindex">File Members</a> <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> » <a class="el" href="dir_dd352b1cbb04f9ff09fa5f33693fed9f.html">Review</a> </div> <div class="contents"> <h1>itkBSplineScatteredDataPointSetToImageFilter.h</h1><a href="itkBSplineScatteredDataPointSetToImageFilter_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 & Registration Toolkit</span> <a name="l00004"></a>00004 <span class="comment"> Module: $RCSfile: itkBSplineScatteredDataPointSetToImageFilter.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-10 12:16:55 $</span> <a name="l00007"></a>00007 <span class="comment"> Version: $Revision: 1.6 $</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 __itkBSplineScatteredDataPointSetToImageFilter_h</span> <a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#define __itkBSplineScatteredDataPointSetToImageFilter_h</span> <a name="l00019"></a>00019 <span class="preprocessor"></span> <a name="l00020"></a>00020 <span class="preprocessor">#include "<a class="code" href="itkPointSetToImageFilter_8h.html">itkPointSetToImageFilter.h</a>"</span> <a name="l00021"></a>00021 <span class="preprocessor">#include "<a class="code" href="itkCoxDeBoorBSplineKernelFunction_8h.html">itkCoxDeBoorBSplineKernelFunction.h</a>"</span> <a name="l00022"></a>00022 <span class="preprocessor">#include "<a class="code" href="itkFixedArray_8h.html">itkFixedArray.h</a>"</span> <a name="l00023"></a>00023 <span class="preprocessor">#include "<a class="code" href="itkVariableSizeMatrix_8h.html">itkVariableSizeMatrix.h</a>"</span> <a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="itkVector_8h.html">itkVector.h</a>"</span> <a name="l00025"></a>00025 <span class="preprocessor">#include "<a class="code" href="itkVectorContainer_8h.html">itkVectorContainer.h</a>"</span> <a name="l00026"></a>00026 <a name="l00027"></a>00027 <span class="preprocessor">#include "vnl/vnl_matrix.h"</span> <a name="l00028"></a>00028 <a name="l00029"></a>00029 <span class="keyword">namespace </span>itk <a name="l00030"></a>00030 { <a name="l00031"></a>00031 <a name="l00073"></a>00073 <span class="keyword">template</span> <<span class="keyword">class</span> TInputPo<span class="keywordtype">int</span>Set, <span class="keyword">class</span> TOutputImage> <a name="l00074"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html">00074</a> <span class="keyword">class </span><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html">BSplineScatteredDataPointSetToImageFilter</a> <a name="l00075"></a>00075 : <span class="keyword">public</span> <a class="code" href="classitk_1_1PointSetToImageFilter.html" title="Base class for filters that take a PointSet as input and produce an image as output...">PointSetToImageFilter</a><TInputPointSet, TOutputImage> <a name="l00076"></a>00076 { <a name="l00077"></a>00077 <span class="keyword">public</span>: <a name="l00078"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#09f096c413e564d870563489b5c2f116">00078</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html">BSplineScatteredDataPointSetToImageFilter</a> <a class="code" href="classitk_1_1LightObject.html" title="Light weight base class for most itk classes.">Self</a>; <a name="l00079"></a>00079 <span class="keyword">typedef</span> <a class="code" href="classitk_1_1PointSetToImageFilter.html" title="Base class for filters that take a PointSet as input and produce an image as output...">PointSetToImageFilter</a> <a name="l00080"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a2494c19419b5a842038417899809745">00080</a> <TInputPointSet, TOutputImage> <a class="code" href="classitk_1_1LightObject.html" title="Light weight base class for most itk classes.">Superclass</a>; <a name="l00081"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#d0401f3390e9582c1316d68d1b133779">00081</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer<Self></a> <a class="code" href="classitk_1_1SmartPointer.html">Pointer</a>; <a name="l00082"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#7bd3a27a589935fac33fb1036053eced">00082</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer<const Self></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#0fdc15685afa271857c57e7cd482f30c">itkNewMacro</a>(<a class="code" href="classitk_1_1LightObject.html" title="Light weight base class for most itk classes.">Self</a>); <a name="l00086"></a>00086 <a name="l00088"></a>00088 <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#44eaf9b44895d9362488482c0f873856">itkStaticConstMacro</a>( ImageDimension, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>, <a name="l00089"></a>00089 TOutputImage::ImageDimension ); <a name="l00090"></a>00090 <a name="l00091"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#11144894db055ac7f13ccdaed05603f7">00091</a> <span class="keyword">typedef</span> TOutputImage <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#11144894db055ac7f13ccdaed05603f7">ImageType</a>; <a name="l00092"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#19cb7eea329fdb6a6adacc9f08c6fa12">00092</a> <span class="keyword">typedef</span> TInputPointSet <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#19cb7eea329fdb6a6adacc9f08c6fa12">PointSetType</a>; <a name="l00093"></a>00093 <a name="l00095"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a79551e58c41f9e5a90cf3161ac11a5c">00095</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> ImageType::PixelType <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a79551e58c41f9e5a90cf3161ac11a5c">PixelType</a>; <a name="l00096"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#ce6e29e85a7b15f205472954ea6af473">00096</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#ed8c4a40607d317c666eb96ea265e126">ImageType::RegionType</a> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#ce6e29e85a7b15f205472954ea6af473">RegionType</a>; <a name="l00097"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#8f0af58cbe9538c6a7423930dba67343">00097</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#5bf82236e1e50e653de84c8ead448599">ImageType::SizeType</a> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#8f0af58cbe9538c6a7423930dba67343">SizeType</a>; <a name="l00098"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#2b0240b3eac0e228daadba0865fca4fa">00098</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#be32dc19e71d40322ad9828b9ab40853">ImageType::IndexType</a> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#2b0240b3eac0e228daadba0865fca4fa">IndexType</a>; <a name="l00099"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#7b7f5238dcc3c428a54c594856f2af7d">00099</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> ImageType::PointType <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#7b7f5238dcc3c428a54c594856f2af7d">ContinuousIndexType</a>; <a name="l00100"></a>00100 <a name="l00102"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">00102</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> PointSetType::PointType <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">PointType</a>; <a name="l00103"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">00103</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> PointSetType::PixelType <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a>; <a name="l00104"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#f46c18578df56327ed28a51433ca4841">00104</a> <span class="keyword">typedef</span> <span class="keyword">typename</span> PointSetType::PointDataContainer <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#f46c18578df56327ed28a51433ca4841">PointDataContainerType</a>; <a name="l00105"></a>00105 <a name="l00107"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#21368cadf2a970554a94d878c54e040a">00107</a> <span class="keyword">typedef</span> <span class="keywordtype">float</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#21368cadf2a970554a94d878c54e040a">RealType</a>; <a name="l00108"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#133df5fe37ae259014fd19290e672709">00108</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1VectorContainer.html">VectorContainer<unsigned, RealType></a> <a class="code" href="classitk_1_1VectorContainer.html">WeightsContainerType</a>; <a name="l00109"></a>00109 <span class="keyword">typedef</span> <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">Image</a><<a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a>, <a name="l00110"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#8b7aa633b2c6497e4c2f14ad5c15c752">00110</a> <a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>( ImageDimension )> <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">PointDataImageType</a>; <a name="l00111"></a>00111 <span class="keyword">typedef</span> <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">Image</a><<a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#21368cadf2a970554a94d878c54e040a">RealType</a>, <a name="l00112"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#f80db04d116e76a46841cc02e8ffa3f4">00112</a> <a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>( ImageDimension )> <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">RealImageType</a>; <a name="l00113"></a>00113 <span class="keyword">typedef</span> <a class="code" href="classitk_1_1FixedArray.html" title="Simulate a standard C array with copy semnatics.">FixedArray</a><unsigned, <a name="l00114"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#bf0efa4bc42ebc972fcf00499cae0dec">00114</a> <a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>( ImageDimension )> <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a>; <a name="l00115"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#756d50772e9a5fc3d65789eb9cadb4c3">00115</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">VariableSizeMatrix<RealType></a> <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">GradientType</a>; <a name="l00117"></a>00117 <a name="l00121"></a><a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#13c806941388ea98e0d55a987766fd9d">00121</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1CoxDeBoorBSplineKernelFunction.html" title="BSpline kernel used for density estimation and nonparameteric regression.">CoxDeBoorBSplineKernelFunction<3></a> <a class="code" href="classitk_1_1CoxDeBoorBSplineKernelFunction.html" title="BSpline kernel used for density estimation and nonparameteric regression.">KernelType</a>; <a name="l00122"></a>00122 <a name="l00125"></a>00125 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#e8573972a6b6011f331c462b61f36373">SetNumberOfLevels</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ); <a name="l00126"></a>00126 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#e8573972a6b6011f331c462b61f36373">SetNumberOfLevels</a>( <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00127"></a>00127 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( NumberOfLevels, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00128"></a>00128 <a name="l00129"></a>00129 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#e9fd01c25efedd585921d6663c037ca8">SetSplineOrder</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ); <a name="l00130"></a>00130 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#e9fd01c25efedd585921d6663c037ca8">SetSplineOrder</a>( <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00131"></a>00131 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( SplineOrder, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00132"></a>00132 <a name="l00133"></a>00133 <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>( NumberOfControlPoints, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00134"></a>00134 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( NumberOfControlPoints, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00135"></a>00135 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( CurrentNumberOfControlPoints, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00136"></a>00136 <a name="l00137"></a>00137 <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>( CloseDimension, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00138"></a>00138 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( CloseDimension, <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> ); <a name="l00139"></a>00139 <a name="l00140"></a>00140 <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>( GenerateOutputImage, <span class="keywordtype">bool</span> ); <a name="l00141"></a>00141 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>( GenerateOutputImage, <span class="keywordtype">bool</span> ); <a name="l00142"></a>00142 <a class="code" href="itkMacro_8h.html#9e7d129ffebb09fd28bc213e02d87248">itkBooleanMacro</a>( GenerateOutputImage ); <a name="l00143"></a>00143 <a name="l00144"></a>00144 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#91384f90db1d04255ac2d9a73de198b5">SetPointWeights</a>( <a class="code" href="classitk_1_1VectorContainer.html">WeightsContainerType</a> * weights ); <a name="l00145"></a>00145 <a name="l00149"></a>00149 <a class="code" href="itkMacro_8h.html#7ebdd33cc5e7d74720ced9099c034faa">itkSetMacro</a>( PhiLattice, <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html">PointDataImageType::Pointer</a> ); <a name="l00150"></a>00150 <a class="code" href="itkMacro_8h.html#89294335d94b115d40e2603f2fff7950">itkGetConstMacro</a>( PhiLattice, <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html">PointDataImageType::Pointer</a> ); <a name="l00152"></a>00152 <a name="l00157"></a>00157 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#4d1439f7603a7d320c409bc56a532c69">EvaluateAtPoint</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">PointType</a>, <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a> & ); <a name="l00158"></a>00158 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#edf1a88db62705198a6142c1e8066009">EvaluateAtIndex</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#2b0240b3eac0e228daadba0865fca4fa">IndexType</a>, <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a> & ); <a name="l00159"></a>00159 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#c705fa280c1d6b9d7d8b70297b4bfa5e">EvaluateAtContinuousIndex</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#7b7f5238dcc3c428a54c594856f2af7d">ContinuousIndexType</a>, <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a> & ); <a name="l00161"></a>00161 <a name="l00167"></a>00167 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#d75dbae040d3f7d6263a20f025ef1241">Evaluate</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">PointType</a>, <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#3378e202fb377f84e0ede05d4ca22ee7">PointDataType</a> & ); <a name="l00168"></a>00168 <a name="l00173"></a>00173 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#e5bea75b5fa30dc16edc4f0dd7898ebf">EvaluateGradientAtPoint</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">PointType</a>, <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">GradientType</a> & ); <a name="l00174"></a>00174 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#4d3945384464ca15c13ad05ebe43a602">EvaluateGradientAtIndex</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#2b0240b3eac0e228daadba0865fca4fa">IndexType</a>, <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">GradientType</a> & ); <a name="l00175"></a>00175 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a7654b39d908e73fc05cd483b1c44072">EvaluateGradientAtContinuousIndex</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#7b7f5238dcc3c428a54c594856f2af7d">ContinuousIndexType</a>, <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">GradientType</a> & ); <a name="l00177"></a>00177 <a name="l00184"></a>00184 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#fd2ffacf099d2decd561bed93e82b646">EvaluateGradient</a>( <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#a056ccf791acec625bdd668ede9c3db8">PointType</a>, <a class="code" href="classitk_1_1VariableSizeMatrix.html" title="A templated class holding a M x N size Matrix This class contains a vnl_matrix in...">GradientType</a> & ); <a name="l00185"></a>00185 <a name="l00186"></a>00186 <span class="keyword">protected</span>: <a name="l00187"></a>00187 <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#ac31e1875f138d594caee0ac3d1bacec">BSplineScatteredDataPointSetToImageFilter</a>(); <a name="l00188"></a>00188 <span class="keyword">virtual</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#5254eca3ca886e693e5ce74289d7ccfc">~BSplineScatteredDataPointSetToImageFilter</a>(); <a name="l00189"></a>00189 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#32a9de0bcbb36a00d6930a1fce865799">PrintSelf</a>( std::ostream& 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="l00190"></a>00190 <a name="l00191"></a>00191 <span class="keywordtype">void</span> <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#9119ad4376cdf2ee8a9c6aa70ea0009f">GenerateData</a>(); <a name="l00192"></a>00192 <a name="l00193"></a>00193 <span class="keyword">private</span>: <a name="l00194"></a>00194 <a name="l00195"></a>00195 <span class="comment">//purposely not implemented</span> <a name="l00196"></a>00196 <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#ac31e1875f138d594caee0ac3d1bacec">BSplineScatteredDataPointSetToImageFilter</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1LightObject.html" title="Light weight base class for most itk classes.">Self</a>&); <a name="l00197"></a>00197 <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="classitk_1_1LightObject.html" title="Light weight base class for most itk classes.">Self</a>&); <a name="l00198"></a>00198 <a name="l00199"></a>00199 <span class="keywordtype">void</span> GenerateControlLattice(); <a name="l00200"></a>00200 <span class="keywordtype">void</span> RefineControlLattice(); <a name="l00201"></a>00201 <span class="keywordtype">void</span> UpdatePointSet(); <a name="l00202"></a>00202 <span class="keywordtype">void</span> GenerateOutputImage(); <a name="l00203"></a>00203 <span class="keywordtype">void</span> GenerateOutputImageFast(); <a name="l00204"></a>00204 <span class="keywordtype">void</span> CollapsePhiLattice( <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">PointDataImageType</a> *, <a name="l00205"></a>00205 <a class="code" href="classitk_1_1Image.html" title="Templated n-dimensional image class.">PointDataImageType</a> *, <a name="l00206"></a>00206 <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#21368cadf2a970554a94d878c54e040a">RealType</a>, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ); <a name="l00207"></a>00207 <a name="l00208"></a>00208 <a name="l00209"></a>00209 <span class="keywordtype">bool</span> m_DoMultilevel; <a name="l00210"></a>00210 <span class="keywordtype">bool</span> m_GenerateOutputImage; <a name="l00211"></a>00211 <span class="keywordtype">bool</span> m_UsePointWeights; <a name="l00212"></a>00212 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> m_MaximumNumberOfLevels; <a name="l00213"></a>00213 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> m_CurrentLevel; <a name="l00214"></a>00214 <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> m_NumberOfControlPoints; <a name="l00215"></a>00215 <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> m_CurrentNumberOfControlPoints; <a name="l00216"></a>00216 <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> m_CloseDimension; <a name="l00217"></a>00217 <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> m_SplineOrder; <a name="l00218"></a>00218 <a class="code" href="classitk_1_1FixedArray.html">ArrayType</a> m_NumberOfLevels; <a name="l00219"></a>00219 <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html" title="Implements transparent reference counting.">WeightsContainerType::Pointer</a> m_PointWeights; <a name="l00220"></a>00220 <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html">KernelType::Pointer</a> m_Kernel[ImageDimension]; <a name="l00221"></a>00221 <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html">PointDataImageType::Pointer</a> m_PhiLattice; <a name="l00222"></a>00222 <span class="keyword">typename</span> <a class="code" href="classitk_1_1SmartPointer.html">PointDataImageType::Pointer</a> m_PsiLattice; <a name="l00223"></a>00223 <span class="keyword">typename</span> <a class="code" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">PointDataContainerType::Pointer</a> m_InputPointData; <a name="l00224"></a>00224 <span class="keyword">typename</span> <a class="code" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">PointDataContainerType::Pointer</a> m_OutputPointData; <a name="l00225"></a>00225 <a name="l00226"></a>00226 <a class="code" href="classitk_1_1BSplineScatteredDataPointSetToImageFilter.html#21368cadf2a970554a94d878c54e040a">RealType</a> m_BSplineEpsilon; <a name="l00227"></a>00227 <a name="l00228"></a>00228 <a class="code" href="classvnl__matrix.html">vnl_matrix<RealType></a> <a name="l00229"></a>00229 m_RefinedLatticeCoefficients[ImageDimension]; <a name="l00230"></a>00230 <a name="l00231"></a>00231 <span class="keyword">inline</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Image.html#42409699ba5aa72fcfdcdd05a910db6b">RealImageType::IndexType</a> <a name="l00232"></a>00232 NumberToIndex( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> number, <span class="keyword">typename</span> <a class="code" href="classitk_1_1Image.html#9c22529e667e574952547da68d0f0322">RealImageType::SizeType</a> size ) <a name="l00233"></a>00233 { <a name="l00234"></a>00234 <span class="keyword">typename</span> <a class="code" href="classitk_1_1Image.html#42409699ba5aa72fcfdcdd05a910db6b">RealImageType::IndexType</a> k; <a name="l00235"></a>00235 k[0] = 1; <a name="l00236"></a>00236 <a name="l00237"></a>00237 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 1; i < ImageDimension; i++ ) <a name="l00238"></a>00238 { <a name="l00239"></a>00239 k[i] = size[ImageDimension-i-1]*k[i-1]; <a name="l00240"></a>00240 } <a name="l00241"></a>00241 <span class="keyword">typename</span> <a class="code" href="classitk_1_1Image.html#42409699ba5aa72fcfdcdd05a910db6b">RealImageType::IndexType</a> index; <a name="l00242"></a>00242 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i < ImageDimension; i++ ) <a name="l00243"></a>00243 { <a name="l00244"></a>00244 index[ImageDimension-i-1] <a name="l00245"></a>00245 = <span class="keyword">static_cast<</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">></span>( number/k[ImageDimension-i-1] ); <a name="l00246"></a>00246 number %= k[ImageDimension-i-1]; <a name="l00247"></a>00247 } <a name="l00248"></a>00248 <span class="keywordflow">return</span> index; <a name="l00249"></a>00249 } <a name="l00250"></a>00250 }; <a name="l00251"></a>00251 <a name="l00252"></a>00252 } <span class="comment">// end namespace itk</span> <a name="l00253"></a>00253 <a name="l00254"></a>00254 <span class="preprocessor">#ifndef ITK_MANUAL_INSTANTIATION</span> <a name="l00255"></a>00255 <span class="preprocessor"></span><span class="preprocessor">#include "itkBSplineScatteredDataPointSetToImageFilter.txx"</span> <a name="l00256"></a>00256 <span class="preprocessor">#endif</span> <a name="l00257"></a>00257 <span class="preprocessor"></span> <a name="l00258"></a>00258 <span class="preprocessor">#endif</span> <a name="l00259"></a>00259 <span class="preprocessor"></span> </pre></div></div> <hr><address><small> Generated at Thu May 7 22:20:48 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>, © 1997-2000</small></address> </body> </html>