Sophie

Sophie

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

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: itkQuadEdgeMesh.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_dd352b1cbb04f9ff09fa5f33693fed9f.html">Review</a>
  </div>
<div class="contents">
<h1>itkQuadEdgeMesh.h</h1><a href="itkQuadEdgeMesh_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: itkQuadEdgeMesh.h,v $</span>
<a name="l00005"></a>00005 <span class="comment">  Language:  C++</span>
<a name="l00006"></a>00006 <span class="comment">  Date:      $Date: 2009-02-07 23:16:28 $</span>
<a name="l00007"></a>00007 <span class="comment">  Version:   $Revision: 1.33 $</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 
<a name="l00018"></a>00018 <span class="preprocessor">#ifndef __itkQuadEdgeMesh_h</span>
<a name="l00019"></a>00019 <span class="preprocessor"></span><span class="preprocessor">#define __itkQuadEdgeMesh_h</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span>
<a name="l00021"></a>00021 <span class="preprocessor">#include "vcl_cstdarg.h"</span>
<a name="l00022"></a>00022 <span class="preprocessor">#include &lt;queue&gt;</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include &lt;vector&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#include &lt;list&gt;</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="itkMesh_8h.html">itkMesh.h</a>"</span>
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="preprocessor">#include "<a class="code" href="itkQuadEdgeMeshTraits_8h.html">itkQuadEdgeMeshTraits.h</a>"</span>
<a name="l00029"></a>00029 <span class="preprocessor">#include "<a class="code" href="itkQuadEdgeMeshLineCell_8h.html">itkQuadEdgeMeshLineCell.h</a>"</span>
<a name="l00030"></a>00030 <span class="preprocessor">#include "<a class="code" href="itkQuadEdgeMeshPolygonCell_8h.html">itkQuadEdgeMeshPolygonCell.h</a>"</span>
<a name="l00031"></a>00031 
<a name="l00032"></a>00032 <span class="preprocessor">#include "<a class="code" href="itkQuadEdgeMeshFrontIterator_8h.html">itkQuadEdgeMeshFrontIterator.h</a>"</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include "<a class="code" href="itkConceptChecking_8h.html">itkConceptChecking.h</a>"</span>
<a name="l00034"></a>00034 
<a name="l00097"></a>00097 <span class="keyword">namespace </span>itk
<a name="l00098"></a>00098 {
<a name="l00099"></a>00099 
<a name="l00111"></a>00111 <span class="keyword">template</span>&lt; <span class="keyword">typename</span> TPixel, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> VDimension,
<a name="l00112"></a>00112   <span class="keyword">typename</span> TTraits = QuadEdgeMeshTraits&lt; TPixel, VDimension, bool, bool &gt; &gt;
<a name="l00113"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html">00113</a> <span class="keyword">class </span><a class="code" href="classitk_1_1QuadEdgeMesh.html" title="Mesh class for 2D manifolds embedded in ND space.">QuadEdgeMesh</a> : <span class="keyword">public</span> <a class="code" href="classitk_1_1Mesh.html" title="Implements the N-dimensional mesh structure.">Mesh</a>&lt; TPixel, VDimension, TTraits &gt;
<a name="l00114"></a>00114 {
<a name="l00115"></a>00115 <span class="keyword">public</span>:
<a name="l00116"></a>00116 
<a name="l00118"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#0f85eb2bc39533d9ca9fb20843e3e881">00118</a>   <span class="keyword">typedef</span> TTraits <a class="code" href="classitk_1_1QuadEdgeMesh.html#0f85eb2bc39533d9ca9fb20843e3e881">Traits</a>;
<a name="l00119"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#33329a31a7d2fc01cdee1ed7168f790f">00119</a>   <span class="keyword">typedef</span> TPixel  <a class="code" href="classitk_1_1QuadEdgeMesh.html#33329a31a7d2fc01cdee1ed7168f790f">PixelType</a>;
<a name="l00120"></a>00120 
<a name="l00122"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#e71b7455a7cd8ed3f3bd7ff39bb143f0">00122</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html" title="Mesh class for 2D manifolds embedded in ND space.">QuadEdgeMesh</a>                            <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a>;
<a name="l00123"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#85e2319a5627c1ef2b9241a47dd58e46">00123</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1Mesh.html" title="Implements the N-dimensional mesh structure.">Mesh&lt; TPixel, VDimension, Traits &gt;</a>      <a class="code" href="classitk_1_1Object.html" title="Base class for most itk classes.">Superclass</a>;
<a name="l00124"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#39759883977de58c707b05305c004025">00124</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="l00125"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#9e75dcb65aafa26d8934405c471091ad">00125</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="l00126"></a>00126 
<a name="l00128"></a>00128   <a class="code" href="classitk_1_1QuadEdgeMesh.html#6e727a49415fad7617c5f38be127ca40">itkStaticConstMacro</a>( PointDimension, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>,
<a name="l00129"></a>00129                        Traits::PointDimension );
<a name="l00130"></a>00130   <a class="code" href="classitk_1_1QuadEdgeMesh.html#6e727a49415fad7617c5f38be127ca40">itkStaticConstMacro</a>( MaxTopologicalDimension, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>,
<a name="l00131"></a>00131                        Traits::MaxTopologicalDimension );
<a name="l00133"></a>00133 
<a name="l00135"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#c0f3ac589bddbe1a7e2058a3ee9052fc">00135</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#d3b778af7f3139bb620bfe7925ec4033">Superclass::CellPixelType</a>    <a class="code" href="classitk_1_1QuadEdgeMesh.html#c0f3ac589bddbe1a7e2058a3ee9052fc">CellPixelType</a>;
<a name="l00136"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#13d356d0bf430b22ae5b7e874b5e33a3">00136</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#6c3bd3b3b4c902a0bfac895652fcd820">Superclass::CoordRepType</a>     <a class="code" href="classitk_1_1QuadEdgeMesh.html#13d356d0bf430b22ae5b7e874b5e33a3">CoordRepType</a>;
<a name="l00137"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">00137</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#ed2fd3a942ea6f1119ade8923c676d39">Superclass::PointIdentifier</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>;
<a name="l00138"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#ae3810af7bda626aa38cff82f7c1a114">00138</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#84e70aad2db6c0d8aa9750493cdd623a">Superclass::PointHashType</a>    <a class="code" href="classitk_1_1QuadEdgeMesh.html#ae3810af7bda626aa38cff82f7c1a114">PointHashType</a>;
<a name="l00139"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#dade9a09348133ac90394562a7095ffb">00139</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#ab87c54f2113c452e56f438684ae7238">Superclass::PointType</a>        <a class="code" href="classitk_1_1QuadEdgeMesh.html#dade9a09348133ac90394562a7095ffb">PointType</a>;
<a name="l00140"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#98544f0af4f09b772d2ac96d2c23d87b">00140</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#5d92f60ec0c0053a292cd559d9872b12">Superclass::CellTraits</a>       <a class="code" href="classitk_1_1QuadEdgeMesh.html#98544f0af4f09b772d2ac96d2c23d87b">CellTraits</a>;
<a name="l00141"></a>00141 
<a name="l00142"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#077a3448c6833d68ca4b53baec670a53">00142</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> CellTraits::PointIdInternalIterator <a class="code" href="classitk_1_1QuadEdgeMesh.html#077a3448c6833d68ca4b53baec670a53">PointIdInternalIterator</a>;
<a name="l00143"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#0f95c7a76ba4092fe8cdd1c937b19caf">00143</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> CellTraits::PointIdIterator         <a class="code" href="classitk_1_1QuadEdgeMesh.html#0f95c7a76ba4092fe8cdd1c937b19caf">PointIdIterator</a>;
<a name="l00144"></a>00144 
<a name="l00145"></a>00145   <span class="comment">// Point section:</span>
<a name="l00146"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d9991afb2a50026c400dad0fd3e1dddf">00146</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#1487108504dfd527a1e058939788c751">Superclass::PointsContainer</a>        <a class="code" href="classitk_1_1QuadEdgeMesh.html#d9991afb2a50026c400dad0fd3e1dddf">PointsContainer</a>;
<a name="l00147"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#f2291f757753ce291aba35382b454b9a">00147</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#6061999ca70f2813791622966d31cd91">Superclass::PointsContainerPointer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#f2291f757753ce291aba35382b454b9a">PointsContainerPointer</a>;
<a name="l00148"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#76d7350d5523da4533ff2001b95eca10">00148</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#ae3897029bfb7ce453ab0e4fb6c65e0b">Superclass::PointLocatorPointer</a>    <a class="code" href="classitk_1_1QuadEdgeMesh.html#76d7350d5523da4533ff2001b95eca10">PointLocatorPointer</a>;
<a name="l00149"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#abcacf7b42a539de9b350397cd436730">00149</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#895b2287b3ed207fd344da3230855e49">Superclass::PointLocatorType</a>       <a class="code" href="classitk_1_1QuadEdgeMesh.html#abcacf7b42a539de9b350397cd436730">PointLocatorType</a>;
<a name="l00150"></a>00150   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#13d356d0bf430b22ae5b7e874b5e33a3">CoordRepType</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#d422b06f1f121fa1ce2c2b3e318e0516">CoordRepArrayType</a>[ 
<a name="l00151"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d422b06f1f121fa1ce2c2b3e318e0516">00151</a>                               <a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>( PointDimension ) ];
<a name="l00152"></a>00152 
<a name="l00153"></a>00153   <span class="comment">// Point data section:</span>
<a name="l00154"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#ad399a38e3a674d24a30810ab85bb5ee">00154</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#2e9e368b147eb9b5cb30e7a893cb873c">Superclass::PointDataContainer</a>     <a class="code" href="classitk_1_1QuadEdgeMesh.html#ad399a38e3a674d24a30810ab85bb5ee">PointDataContainer</a>;
<a name="l00155"></a>00155   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#b75afb989d9998ee8bc97ff9f161a0b3">Superclass::PointDataContainerPointer</a>
<a name="l00156"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#f0d491d82fa409c4ff0421db8523f2b6">00156</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#f0d491d82fa409c4ff0421db8523f2b6">PointDataContainerPointer</a>;
<a name="l00157"></a>00157   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#9678f2dfc76e642b2cc335242bf24bb7">Superclass::PointDataContainerIterator</a>
<a name="l00158"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#8f4f93e9c60ffce69e38b1b66f50eb36">00158</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#8f4f93e9c60ffce69e38b1b66f50eb36">PointDataContainerIterator</a>;
<a name="l00159"></a>00159   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#751cf00fde7d33d5c3be54d2a50f8871">Superclass::PointsContainerConstIterator</a>
<a name="l00160"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#75617fc5ca26de49a1cf2d27c69a6854">00160</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#75617fc5ca26de49a1cf2d27c69a6854">PointsContainerConstIterator</a>;
<a name="l00161"></a>00161   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#553809f3e6e36601a8dfbf492655efb4">Superclass::PointsContainerIterator</a>
<a name="l00162"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#97dad714b6e61b49f189369c39326339">00162</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#97dad714b6e61b49f189369c39326339">PointsContainerIterator</a>;
<a name="l00163"></a>00163 
<a name="l00164"></a>00164   <span class="comment">// Cell section:</span>
<a name="l00165"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">00165</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#16b220e4d1ae5fcd9de655f68f38c6aa">Superclass::CellIdentifier</a>         <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a>;
<a name="l00166"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#1281e25ff25bb7895e37b42004a64634">00166</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#2a3df15f1e404b0f65e30c92f5092aa3">Superclass::CellType</a>               <a class="code" href="classitk_1_1QuadEdgeMesh.html#1281e25ff25bb7895e37b42004a64634">CellType</a>;
<a name="l00167"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">00167</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#d1909b8733bf192565a263fbedec878d">Superclass::CellAutoPointer</a>        <a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">CellAutoPointer</a>;
<a name="l00168"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">00168</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#537ac36354b4a087195400c6bb6c198a">Superclass::CellFeatureIdentifier</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a>;
<a name="l00169"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#ef44e2b269302d5ae13beab97cebbacc">00169</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#40332c11aff00bd6a4e3fdda6551ce59">Superclass::CellFeatureCount</a>       <a class="code" href="classitk_1_1QuadEdgeMesh.html#ef44e2b269302d5ae13beab97cebbacc">CellFeatureCount</a>;
<a name="l00170"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#9ce327021d7b68d2db7d36153e7b477f">00170</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#c5b9507d9d651c352cdb85975dd02362">Superclass::CellMultiVisitorType</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#9ce327021d7b68d2db7d36153e7b477f">CellMultiVisitorType</a>;
<a name="l00171"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#fa0c4a254559c0ed6ed15d2622b364a6">00171</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#bf231b05468ea1f5fc9ef03af8eaca55">Superclass::CellsContainer</a>         <a class="code" href="classitk_1_1QuadEdgeMesh.html#fa0c4a254559c0ed6ed15d2622b364a6">CellsContainer</a>;
<a name="l00172"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">00172</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#ae0aaf22c4d33af53bb2cccd46f4e1cf">Superclass::CellsContainerPointer</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">CellsContainerPointer</a>;
<a name="l00173"></a>00173 
<a name="l00174"></a>00174   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#a7e0a98126e38e2a4c3817bc7e8db23b">Superclass::CellsContainerConstIterator</a>
<a name="l00175"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d831aa1924bfbf7f2550afed69fce85e">00175</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#d831aa1924bfbf7f2550afed69fce85e">CellsContainerConstIterator</a>;
<a name="l00176"></a>00176   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#f9067f5cb6824d27b05de69d6ca2c5fc">Superclass::CellsContainerIterator</a>
<a name="l00177"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#e7271633b7db01dba56e6b80c26f69ac">00177</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#e7271633b7db01dba56e6b80c26f69ac">CellsContainerIterator</a>;
<a name="l00178"></a>00178 
<a name="l00179"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#b29644a4584cb09af159ea7e5a659818">00179</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#f9878130a5826a61896d0d84085e5f8d">Superclass::CellLinksContainer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#b29644a4584cb09af159ea7e5a659818">CellLinksContainer</a>;
<a name="l00180"></a>00180   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#ac35475ff8e4d36a7d494ddc2bb3519b">Superclass::CellLinksContainerPointer</a>
<a name="l00181"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#f4ce9d32f1ed176af7d8c893e2941737">00181</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#f4ce9d32f1ed176af7d8c893e2941737">CellLinksContainerPointer</a>;
<a name="l00182"></a>00182   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#22193485aa6c763311c14d8080375b8a">Superclass::CellLinksContainerIterator</a>
<a name="l00183"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d3593c225c7487213cd50a9c46692d82">00183</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#d3593c225c7487213cd50a9c46692d82">CellLinksContainerIterator</a>;
<a name="l00184"></a>00184 
<a name="l00185"></a>00185   <span class="comment">// Cell data section:</span>
<a name="l00186"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#67f4b63621feabf315f96981985f5637">00186</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#7b22ed783a6abe5f543ee9d243ee76c0">Superclass::CellDataContainer</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#67f4b63621feabf315f96981985f5637">CellDataContainer</a>;
<a name="l00187"></a>00187   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#d52292cf5b0561af065ed8cbd085b341">Superclass::CellDataContainerPointer</a>
<a name="l00188"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#681a696764c3b22fb6d4e30e4c84c8cd">00188</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#681a696764c3b22fb6d4e30e4c84c8cd">CellDataContainerPointer</a>;
<a name="l00189"></a>00189   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#08126d249b758c440e175378bb5b6a39">Superclass::CellDataContainerIterator</a>
<a name="l00190"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#17df8ec22fa58e8caa414862a1a56cb6">00190</a>                                                   <a class="code" href="classitk_1_1QuadEdgeMesh.html#17df8ec22fa58e8caa414862a1a56cb6">CellDataContainerIterator</a>;
<a name="l00191"></a>00191 
<a name="l00192"></a>00192   <span class="comment">// Point / Cell correspondance section:</span>
<a name="l00193"></a>00193   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#1a9beb9a176d055bf1ff79936cd527d9">Superclass::PointCellLinksContainer</a>
<a name="l00194"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#65a5a2fdb5a4dc4a81b5b197fb24a4df">00194</a>                                         <a class="code" href="classitk_1_1QuadEdgeMesh.html#65a5a2fdb5a4dc4a81b5b197fb24a4df">PointCellLinksContainer</a>;
<a name="l00195"></a>00195   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#4c4b27a51addfc4b8f6c7b3d99f3a24a">Superclass::PointCellLinksContainerIterator</a>
<a name="l00196"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#49e18e6fefc973904ab3ad8d9869f1d5">00196</a>                                         <a class="code" href="classitk_1_1QuadEdgeMesh.html#49e18e6fefc973904ab3ad8d9869f1d5">PointCellLinksContainerIterator</a>;
<a name="l00197"></a>00197 
<a name="l00198"></a>00198   <span class="comment">// BoundaryAssignMents section:</span>
<a name="l00199"></a>00199   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#1ab9d83fdbd02543edc7d5a5f9509839">Superclass::BoundaryAssignmentsContainer</a>
<a name="l00200"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#0e720d34225a7656aba7abbd1a5e7be0">00200</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#0e720d34225a7656aba7abbd1a5e7be0">BoundaryAssignmentsContainer</a>;
<a name="l00201"></a>00201   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#1ed5ccb19edb811164f9772a2351f351">Superclass::BoundaryAssignmentsContainerPointer</a>
<a name="l00202"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">00202</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">BoundaryAssignmentsContainerPointer</a>;
<a name="l00203"></a>00203   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#c5049c74043f50101d4fd36624f6b651">Superclass::BoundaryAssignmentsContainerVector</a>
<a name="l00204"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#e12ce9d37f27053a35c07c34273da351">00204</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#e12ce9d37f27053a35c07c34273da351">BoundaryAssignmentsContainerVector</a>;
<a name="l00205"></a>00205 
<a name="l00206"></a>00206   <span class="comment">// Miscelaneous section:</span>
<a name="l00207"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#1e6f53191a046be5d3212482ada2780c">00207</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#319adc094426655b637fd63d85c39e76">Superclass::BoundingBoxPointer</a>         <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e6f53191a046be5d3212482ada2780c">BoundingBoxPointer</a>;
<a name="l00208"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#bee338d378be447b664475508c50b5ec">00208</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#1e2eab6dbb3200dbdca9d5a5864a1ddd">Superclass::BoundingBoxType</a>            <a class="code" href="classitk_1_1QuadEdgeMesh.html#bee338d378be447b664475508c50b5ec">BoundingBoxType</a>;
<a name="l00209"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#2796ca244c80b1c329c78989e453ca6d">00209</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#f40db84ad48d7f3827c835637a0d42a7">Superclass::RegionType</a>                 <a class="code" href="classitk_1_1QuadEdgeMesh.html#2796ca244c80b1c329c78989e453ca6d">RegionType</a>;
<a name="l00210"></a>00210   <span class="keyword">typedef</span> <span class="keyword">typename</span> <a class="code" href="classitk_1_1Mesh.html#943cbb71f4c8784ff06d1732a9e89efb">Superclass::InterpolationWeightType</a>
<a name="l00211"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#a1c52ba2cb4ae22686fbe48bbd256e32">00211</a>                                <a class="code" href="classitk_1_1QuadEdgeMesh.html#a1c52ba2cb4ae22686fbe48bbd256e32">InterpolationWeightType</a>;
<a name="l00212"></a>00212 
<a name="l00214"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#ed1c682a07d0fe0943ca7e85e99ced7c">00214</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::PrimalDataType <a class="code" href="classitk_1_1QuadEdgeMesh.html#ed1c682a07d0fe0943ca7e85e99ced7c">PrimalDataType</a>;
<a name="l00215"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#79f3267844ae15843662ed561c90fcf3">00215</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::DualDataType   <a class="code" href="classitk_1_1QuadEdgeMesh.html#79f3267844ae15843662ed561c90fcf3">DualDataType</a>;
<a name="l00216"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">00216</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::QEPrimal       <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>;
<a name="l00217"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#218ea1ddc0ce6bb72ffc9054e69daab0">00217</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::QEDual         <a class="code" href="classitk_1_1QuadEdgeMesh.html#218ea1ddc0ce6bb72ffc9054e69daab0">QEDual</a>;
<a name="l00218"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#5e3a006a3798d9dd812a20f1c4ecdb20">00218</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::QEPrimal       <a class="code" href="classitk_1_1QuadEdgeMesh.html#5e3a006a3798d9dd812a20f1c4ecdb20">QEType</a>;
<a name="l00219"></a>00219   <span class="comment">// See the TODO entry dated from 2005-05-28</span>
<a name="l00220"></a>00220   <span class="comment">// struct QEType : public QEPrimal, public QEDual {}</span>
<a name="l00221"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#5aa58171c39a676963a533408bf90da4">00221</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::VertexRefType  <a class="code" href="classitk_1_1QuadEdgeMesh.html#5aa58171c39a676963a533408bf90da4">VertexRefType</a>;
<a name="l00222"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#908ddc06ed69cab51cc474264c68a944">00222</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::FaceRefType    <a class="code" href="classitk_1_1QuadEdgeMesh.html#908ddc06ed69cab51cc474264c68a944">FaceRefType</a>;
<a name="l00223"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#5dcc8e053c0a5f12cfb28e3a101e8012">00223</a>   <span class="keyword">typedef</span> <span class="keyword">typename</span> Traits::VectorType     <a class="code" href="classitk_1_1QuadEdgeMesh.html#5dcc8e053c0a5f12cfb28e3a101e8012">VectorType</a>;
<a name="l00224"></a>00224 
<a name="l00226"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#0651cbad0070e41fe1cc3c7a4b9524ac">00226</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1QuadEdgeMeshLineCell.html" title="Class that connects the QuadEdgeMesh with the Mesh.">QuadEdgeMeshLineCell&lt; CellType &gt;</a>    <a class="code" href="classitk_1_1QuadEdgeMeshLineCell.html" title="Class that connects the QuadEdgeMesh with the Mesh.">EdgeCellType</a>;
<a name="l00227"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#ee76232d77acf6252f8b5c128725c218">00227</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1QuadEdgeMeshPolygonCell.html">QuadEdgeMeshPolygonCell&lt; CellType &gt;</a> <a class="code" href="classitk_1_1QuadEdgeMeshPolygonCell.html">PolygonCellType</a>;
<a name="l00228"></a>00228 
<a name="l00230"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#21e022232de4c1ecc085f920d97d82b0">00230</a>   <span class="keyword">typedef</span> std::queue&lt; PointIdentifier &gt; <a class="code" href="classitk_1_1QuadEdgeMesh.html#21e022232de4c1ecc085f920d97d82b0">FreePointIndexesType</a>;
<a name="l00231"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#9f642d9aaa3a9dfe86dbe895fb021756">00231</a>   <span class="keyword">typedef</span> std::queue&lt; CellIdentifier &gt;  <a class="code" href="classitk_1_1QuadEdgeMesh.html#9f642d9aaa3a9dfe86dbe895fb021756">FreeCellIndexesType</a>;
<a name="l00232"></a>00232 
<a name="l00234"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#2c8b45233fdfa39d8d289fd0541ec0c0">00234</a>   <span class="keyword">typedef</span> std::vector&lt; PointIdentifier &gt;    <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c8b45233fdfa39d8d289fd0541ec0c0">PointIdList</a>;
<a name="l00235"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#82fa229505c15d4377761600e047f648">00235</a>   <span class="keyword">typedef</span> std::list&lt; QEPrimal* &gt;            <a class="code" href="classitk_1_1QuadEdgeMesh.html#82fa229505c15d4377761600e047f648">EdgeListType</a>;
<a name="l00236"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#8732b4e2ddb8e138bfe8c43b3c354bba">00236</a>   <span class="keyword">typedef</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#82fa229505c15d4377761600e047f648">EdgeListType</a>*                     <a class="code" href="classitk_1_1QuadEdgeMesh.html#8732b4e2ddb8e138bfe8c43b3c354bba">EdgeListPointerType</a>;
<a name="l00237"></a>00237 
<a name="l00239"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#a4073f36c57f85de27050cc5d63c9135">00239</a>   <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#a4073f36c57f85de27050cc5d63c9135">m_NoPoint</a>;
<a name="l00240"></a>00240 
<a name="l00242"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d027755b86b0413695ae35ed732380b6">00242</a>   <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#d027755b86b0413695ae35ed732380b6">m_NoFace</a>;
<a name="l00243"></a>00243 
<a name="l00244"></a>00244 <span class="keyword">public</span>:
<a name="l00245"></a>00245 
<a name="l00247"></a>00247   <a class="code" href="itkMacro_8h.html#0fdc15685afa271857c57e7cd482f30c">itkNewMacro</a>( <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a> );
<a name="l00248"></a>00248   <a class="code" href="itkMacro_8h.html#574c1f86661d409dd32c742307a0e96a">itkTypeMacro</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html" title="Mesh class for 2D manifolds embedded in ND space.">QuadEdgeMesh</a>, <a class="code" href="classitk_1_1Mesh.html" title="Implements the N-dimensional mesh structure.">Mesh</a> );
<a name="l00250"></a>00250 
<a name="l00252"></a>00252   <a class="code" href="classitk_1_1QuadEdgeMesh.html#fbcbad042af81c0fe7dbace7528dd9a1">itkQEDefineFrontIteratorMethodsMacro</a>( <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a> );
<a name="l00253"></a>00253 
<a name="l00254"></a>00254 
<a name="l00255"></a>00255 <span class="keyword">public</span>:
<a name="l00256"></a>00256 
<a name="l00257"></a>00257   <span class="comment">// Multithreading framework: not tested yet.</span>
<a name="l00258"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#acd287bcf8b023ba3fd14d76722a1ca0">00258</a>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#acd287bcf8b023ba3fd14d76722a1ca0">RequestedRegionIsOutsideOfTheBufferedRegion</a>()
<a name="l00259"></a>00259     {
<a name="l00260"></a>00260     <span class="keywordflow">return</span>( <span class="keyword">false</span> );
<a name="l00261"></a>00261     }
<a name="l00262"></a>00262 
<a name="l00263"></a>00263   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#f7877b6c4acca2f3f3be4d20a1d84a17">Initialize</a>();
<a name="l00264"></a>00264 
<a name="l00266"></a>00266   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#7fa29130c9713b8f10f599a509e90682">Clear</a>();
<a name="l00267"></a>00267 
<a name="l00268"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#3c0de97126f0c75779327d4b9d2e5f5d">00268</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">CellsContainerPointer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#3c0de97126f0c75779327d4b9d2e5f5d">GetEdgeCells</a>() {<span class="keywordflow">return</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">m_EdgeCellsContainer</a>;}
<a name="l00269"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#eaa439efa059913998b295ae61f26c40">00269</a>   <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">CellsContainerPointer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#eaa439efa059913998b295ae61f26c40">GetEdgeCells</a>()<span class="keyword"> const </span>{<span class="keywordflow">return</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">m_EdgeCellsContainer</a>;}
<a name="l00270"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#91a6c7aaa98b29f3203a3772684be3b2">00270</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#91a6c7aaa98b29f3203a3772684be3b2">SetEdgeCells</a>(<a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">CellsContainerPointer</a> edgeCells)
<a name="l00271"></a>00271     {<a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">m_EdgeCellsContainer</a> = edgeCells;}
<a name="l00272"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#682d2cedb3fb6e057b0a57c80a2e17b9">00272</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#682d2cedb3fb6e057b0a57c80a2e17b9">SetEdgeCell</a>(<a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId, <a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">CellAutoPointer</a> &amp; cellPointer )
<a name="l00273"></a>00273     {<a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">m_EdgeCellsContainer</a>-&gt;InsertElement(cellId,cellPointer.ReleaseOwnership());}
<a name="l00274"></a>00274 
<a name="l00275"></a>00275 
<a name="l00282"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#682d0c943e574e2887842b93fe441179">00282</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#682d0c943e574e2887842b93fe441179">CopyInformation</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>* data ) { (void)data; }
<a name="l00283"></a>00283   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#887a0a162828ac7114ffed693edacc0a">Graft</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>* data );
<a name="l00285"></a>00285 
<a name="l00287"></a>00287   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#e3b55e8ed3beb3dffb91933245a79906">SqueezePointsIds</a>( );
<a name="l00288"></a>00288 
<a name="l00290"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#6ea1938ac112fc266c526cb91e3c995a">00290</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#6ea1938ac112fc266c526cb91e3c995a">BuildCellLinks</a>() { }
<a name="l00291"></a>00291 
<a name="l00293"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#404d967a492f9d68b9c0cc8d0d6c6767">00293</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#404d967a492f9d68b9c0cc8d0d6c6767">SetBoundaryAssignments</a>(<span class="keywordtype">int</span> dimension,
<a name="l00294"></a>00294                               <a class="code" href="classitk_1_1QuadEdgeMesh.html#0e720d34225a7656aba7abbd1a5e7be0">BoundaryAssignmentsContainer</a>* container)
<a name="l00295"></a>00295     {
<a name="l00296"></a>00296     (void)dimension;
<a name="l00297"></a>00297     (void)container;
<a name="l00298"></a>00298     }
<a name="l00300"></a>00300 
<a name="l00302"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#7a6a351c44d204025f6368796738e913">00302</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">BoundaryAssignmentsContainerPointer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#7a6a351c44d204025f6368796738e913">GetBoundaryAssignments</a>(<span class="keywordtype">int</span> dimension)
<a name="l00303"></a>00303     {
<a name="l00304"></a>00304     (void)dimension;
<a name="l00305"></a>00305     <span class="keywordflow">return</span>( (<a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">BoundaryAssignmentsContainerPointer</a>)0 );
<a name="l00306"></a>00306     }
<a name="l00308"></a>00308 
<a name="l00310"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#8b37e96bb401d727bf22120520ec6aa2">00310</a>   <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">BoundaryAssignmentsContainerPointer</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#7a6a351c44d204025f6368796738e913">GetBoundaryAssignments</a>(
<a name="l00311"></a>00311     <span class="keywordtype">int</span> dimension)<span class="keyword"> const</span>
<a name="l00312"></a>00312 <span class="keyword">    </span>{
<a name="l00313"></a>00313     (void)dimension;
<a name="l00314"></a>00314     <span class="keywordflow">return</span>( (<span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#eab678bbda67bce7ca3f182374ce2ccd">BoundaryAssignmentsContainerPointer</a>)0 );
<a name="l00315"></a>00315     }
<a name="l00317"></a>00317 
<a name="l00319"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#0c3f790aaf8a8922613e0249052c8228">00319</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#0c3f790aaf8a8922613e0249052c8228">SetBoundaryAssignment</a>(<span class="keywordtype">int</span> dimension, <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00320"></a>00320                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId,
<a name="l00321"></a>00321                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> boundaryId)
<a name="l00322"></a>00322     {
<a name="l00323"></a>00323     (void)dimension;
<a name="l00324"></a>00324     (void)cellId;
<a name="l00325"></a>00325     (void)featureId;
<a name="l00326"></a>00326     (void)boundaryId;
<a name="l00327"></a>00327     }
<a name="l00329"></a>00329 
<a name="l00331"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#93cefd2452512e14cdc59106e169a69c">00331</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#93cefd2452512e14cdc59106e169a69c">GetBoundaryAssignment</a>(<span class="keywordtype">int</span> dimension, <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00332"></a>00332                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId,
<a name="l00333"></a>00333                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a>* boundaryId)<span class="keyword"> const</span>
<a name="l00334"></a>00334 <span class="keyword">    </span>{
<a name="l00335"></a>00335     (void)dimension;
<a name="l00336"></a>00336     (void)cellId;
<a name="l00337"></a>00337     (void)featureId;
<a name="l00338"></a>00338     (void)boundaryId;
<a name="l00339"></a>00339     <span class="keywordflow">return</span>( <span class="keyword">false</span> ); <span class="comment">// ALEX: is it the good way?</span>
<a name="l00340"></a>00340     }
<a name="l00342"></a>00342 
<a name="l00344"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#43e0dd051ee34b7ed547999d6beb032c">00344</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#43e0dd051ee34b7ed547999d6beb032c">RemoveBoundaryAssignment</a>(<span class="keywordtype">int</span> dimension, <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00345"></a>00345                                 <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId)
<a name="l00346"></a>00346     {
<a name="l00347"></a>00347     (void)dimension;
<a name="l00348"></a>00348     (void)cellId;
<a name="l00349"></a>00349     (void)featureId;
<a name="l00350"></a>00350     <span class="keywordflow">return</span>( <span class="keyword">false</span> ); <span class="comment">// ALEX: is it the good way?</span>
<a name="l00351"></a>00351     }
<a name="l00353"></a>00353 
<a name="l00355"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#158c76f44b7e52c599cef3aea8080e9b">00355</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#158c76f44b7e52c599cef3aea8080e9b">GetCellBoundaryFeature</a>(<span class="keywordtype">int</span> dimension, <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00356"></a>00356                               <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId,
<a name="l00357"></a>00357                               <a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">CellAutoPointer</a>&amp; cellAP)<span class="keyword"> const</span>
<a name="l00358"></a>00358 <span class="keyword">    </span>{ 
<a name="l00359"></a>00359     (void)dimension;
<a name="l00360"></a>00360     (void)cellId;
<a name="l00361"></a>00361     (void)featureId;
<a name="l00362"></a>00362     (void)cellAP;
<a name="l00363"></a>00363     <span class="keywordflow">return</span>( <span class="keyword">false</span> );
<a name="l00364"></a>00364     }
<a name="l00366"></a>00366 
<a name="l00368"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#458cf89bfc1de59378c50db7d69dc429">00368</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#458cf89bfc1de59378c50db7d69dc429">GetCellBoundaryFeatureNeighbors</a>(<span class="keywordtype">int</span> dimension,
<a name="l00369"></a>00369                                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00370"></a>00370                                              <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId,
<a name="l00371"></a>00371                                              std::set&lt;CellIdentifier&gt;* cellSet)
<a name="l00372"></a>00372     {
<a name="l00373"></a>00373     (void)dimension;
<a name="l00374"></a>00374     (void)cellId;
<a name="l00375"></a>00375     (void)featureId;
<a name="l00376"></a>00376     cellSet = (std::set&lt;CellIdentifier&gt;*)0;
<a name="l00377"></a>00377     <span class="keywordflow">return</span>( (<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)0 );
<a name="l00378"></a>00378     }
<a name="l00380"></a>00380 
<a name="l00382"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#4bc59cf1f7e057e76afa3e329715b93e">00382</a>   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#4bc59cf1f7e057e76afa3e329715b93e">GetCellNeighbors</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00383"></a>00383                                   std::set&lt;CellIdentifier&gt;* cellSet )
<a name="l00384"></a>00384     {
<a name="l00385"></a>00385     (void)cellId;
<a name="l00386"></a>00386     cellSet = (std::set&lt;CellIdentifier&gt;*)0;
<a name="l00387"></a>00387     <span class="keywordflow">return</span>( (<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)0 );
<a name="l00388"></a>00388     }
<a name="l00390"></a>00390 
<a name="l00392"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#7a2ddd1a96d78d61d9588c1833f9a1a3">00392</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#7a2ddd1a96d78d61d9588c1833f9a1a3">GetAssignedCellBoundaryIfOneExists</a>(<span class="keywordtype">int</span> dimension,
<a name="l00393"></a>00393                                           <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cellId,
<a name="l00394"></a>00394                                           <a class="code" href="classitk_1_1QuadEdgeMesh.html#8d386b3dd3224290d7a46edec9357665">CellFeatureIdentifier</a> featureId,
<a name="l00395"></a>00395                                           <a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">CellAutoPointer</a>&amp; cellAP)<span class="keyword"> const</span>
<a name="l00396"></a>00396 <span class="keyword">    </span>{
<a name="l00397"></a>00397     (void)dimension;
<a name="l00398"></a>00398     (void)featureId;
<a name="l00399"></a>00399     (void)cellAP;
<a name="l00400"></a>00400     <span class="keywordflow">return</span>( <span class="keyword">false</span> ); <span class="comment">// ALEX: is it the good way?</span>
<a name="l00401"></a>00401     }
<a name="l00403"></a>00403 
<a name="l00405"></a>00405   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#0c8ee9dd69b25842cdc1993282d352cb">SetCell</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> cId, <a class="code" href="classitk_1_1QuadEdgeMesh.html#bd87ca36ef8ef1d9ccf9e97680201618">CellAutoPointer</a>&amp; cell );
<a name="l00406"></a>00406 
<a name="l00408"></a>00408   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#822f9b2fe8bc4387bcefd43e2e0f909e">FindFirstUnusedPointIndex</a>();
<a name="l00409"></a>00409   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#5d63726860c8ad3461dfbf44579bb8c9">FindFirstUnusedCellIndex</a>();
<a name="l00411"></a>00411 
<a name="l00412"></a>00412   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#68b3559091aff79b3667f50b3044d4b9">PushOnContainer</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#0651cbad0070e41fe1cc3c7a4b9524ac">EdgeCellType</a>* newEdge );
<a name="l00413"></a>00413 
<a name="l00414"></a>00414   <span class="comment">// Adding Point/Edge/Face methods</span>
<a name="l00415"></a>00415   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#75536450563d48f16448d0ecbd1b3c1e">AddPoint</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#dade9a09348133ac90394562a7095ffb">PointType</a>&amp; p );
<a name="l00416"></a>00416   
<a name="l00418"></a>00418   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#fa4ce883ba30c448a0b43055d0bcfc37">AddEdge</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; orgPid,
<a name="l00419"></a>00419                              <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; destPid );
<a name="l00420"></a>00420   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#f74495df6c8a37c621c591e2c4ad9756">AddEdgeWithSecurePointList</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; orgPid,
<a name="l00421"></a>00421                              <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; destPid );
<a name="l00423"></a>00423 
<a name="l00425"></a>00425   <span class="keyword">virtual</span> <span class="keywordtype">void</span>      <a class="code" href="classitk_1_1QuadEdgeMesh.html#498264c4b0db984b4fa29a8a5e6f3573">AddFace</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* e );
<a name="l00426"></a>00426 
<a name="l00431"></a>00431   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#498264c4b0db984b4fa29a8a5e6f3573">AddFace</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c8b45233fdfa39d8d289fd0541ec0c0">PointIdList</a>&amp; points );
<a name="l00432"></a>00432   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#9cf919d7b0bae79ccea1dc6b16dc78ad">AddFaceWithSecurePointList</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c8b45233fdfa39d8d289fd0541ec0c0">PointIdList</a>&amp; points );
<a name="l00433"></a>00433   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#9cf919d7b0bae79ccea1dc6b16dc78ad">AddFaceWithSecurePointList</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c8b45233fdfa39d8d289fd0541ec0c0">PointIdList</a>&amp; points,
<a name="l00434"></a>00434                                                 <span class="keywordtype">bool</span> CheckEdges );
<a name="l00436"></a>00436 
<a name="l00438"></a>00438   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* <a class="code" href="classitk_1_1QuadEdgeMesh.html#015051f263621ac2bdc108702d108533">AddFaceTriangle</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; aPid,
<a name="l00439"></a>00439                                      <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; bPid,
<a name="l00440"></a>00440                                      <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; cPid );
<a name="l00441"></a>00441 
<a name="l00443"></a>00443   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#3679c75603d852ba8cd6d19d7042006b">DeletePoint</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid );
<a name="l00444"></a>00444   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#26a079f7e0d8ec22cc845c6d2ada7f8c">DeleteEdge</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; orgPid,
<a name="l00445"></a>00445                            <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; destPid );
<a name="l00446"></a>00446   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#26a079f7e0d8ec22cc845c6d2ada7f8c">DeleteEdge</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* e );
<a name="l00447"></a>00447   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#5a644c1050cca4c5e815c2bfee58a8a1">LightWeightDeleteEdge</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#0651cbad0070e41fe1cc3c7a4b9524ac">EdgeCellType</a>* e );
<a name="l00448"></a>00448   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#5a644c1050cca4c5e815c2bfee58a8a1">LightWeightDeleteEdge</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* e );
<a name="l00449"></a>00449   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#415d9d3ed7e23887e22bc66442510139">DeleteFace</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#908ddc06ed69cab51cc474264c68a944">FaceRefType</a> faceToDelete );
<a name="l00451"></a>00451 
<a name="l00452"></a>00452   <span class="comment">// </span>
<a name="l00453"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#f8067f06731c5d0a944041969ff81d27">00453</a>   <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#f8067f06731c5d0a944041969ff81d27">GetPoint</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a> pid, <a class="code" href="classitk_1_1QuadEdgeMesh.html#dade9a09348133ac90394562a7095ffb">PointType</a> * pt)<span class="keyword"> const</span>
<a name="l00454"></a>00454 <span class="keyword">    </span>{
<a name="l00455"></a>00455     <span class="keywordflow">return</span>( <a class="code" href="classitk_1_1PointSet.html#a46e3cf3adafe0799758790c0d97ff87">Superclass::GetPoint</a>( pid, pt ) );
<a name="l00456"></a>00456     }
<a name="l00457"></a>00457   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#dade9a09348133ac90394562a7095ffb">PointType</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#f8067f06731c5d0a944041969ff81d27">GetPoint</a> ( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid ) <span class="keyword">const</span>;
<a name="l00458"></a>00458   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#5dcc8e053c0a5f12cfb28e3a101e8012">VectorType</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#75ab7dd7c6d15effd0b30fc2ec2af73f">GetVector</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid ) <span class="keyword">const</span>;
<a name="l00459"></a>00459   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>*  <a class="code" href="classitk_1_1QuadEdgeMesh.html#3eaf50be8c78a554319b613c344c70ce">GetEdge</a>() <span class="keyword">const</span>;
<a name="l00460"></a>00460   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>*  <a class="code" href="classitk_1_1QuadEdgeMesh.html#3eaf50be8c78a554319b613c344c70ce">GetEdge</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a>&amp; eid ) <span class="keyword">const</span>;
<a name="l00461"></a>00461   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>*  <a class="code" href="classitk_1_1QuadEdgeMesh.html#cbe2a0040d7837972ef387f192867215">FindEdge</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid0 ) <span class="keyword">const</span>;
<a name="l00462"></a>00462   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>*  <a class="code" href="classitk_1_1QuadEdgeMesh.html#cbe2a0040d7837972ef387f192867215">FindEdge</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid0,
<a name="l00463"></a>00463                                <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid1 ) <span class="keyword">const</span>;
<a name="l00464"></a>00464 
<a name="l00465"></a>00465   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#0651cbad0070e41fe1cc3c7a4b9524ac">EdgeCellType</a>*  <a class="code" href="classitk_1_1QuadEdgeMesh.html#23088128b217cb14eb5b7408925e329a">FindEdgeCell</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid0,
<a name="l00466"></a>00466                                  <span class="keyword">const</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a>&amp; pid1 ) <span class="keyword">const</span>;
<a name="l00467"></a>00467 
<a name="l00469"></a>00469   <a class="code" href="classitk_1_1QuadEdgeMesh.html#13d356d0bf430b22ae5b7e874b5e33a3">CoordRepType</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#86298327450b1c735f4ad0dcca433580" title="Compute the euclidian length of argument edge.">ComputeEdgeLength</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* e );
<a name="l00470"></a>00470 
<a name="l00471"></a>00471   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#0239f07c14880d0f8f4e7588831efed1">ComputeNumberOfPoints</a>() <span class="keyword">const</span>;
<a name="l00472"></a>00472   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#976024cca8f93c5cf7bec0ef8259167f">ComputeNumberOfFaces</a>() <span class="keyword">const</span>;
<a name="l00473"></a>00473   <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#e4421457080bd18ca5cee3afd5527c4e">ComputeNumberOfEdges</a>() <span class="keyword">const</span>;
<a name="l00474"></a>00474 
<a name="l00475"></a>00475   <a class="code" href="classitk_1_1QuadEdgeMesh.html#2c439f239d0d3488c2d8e82311f4c60a">PointIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#a30f142756b94d83ba8cb644d98b7752">Splice</a>( <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* a, <a class="code" href="classitk_1_1QuadEdgeMesh.html#1e9b10569f9b19a8e335620e079d3a04">QEPrimal</a>* b );
<a name="l00476"></a>00476 
<a name="l00477"></a>00477 <span class="preprocessor">#ifdef ITK_USE_CONCEPT_CHECKING</span>
<a name="l00478"></a>00478 <span class="preprocessor"></span>
<a name="l00479"></a>00479   <a class="code" href="itkConceptChecking_8h.html#009eae6c305d9c390972159815e6a710">itkConceptMacro</a>(DimensionShouldBe3,
<a name="l00480"></a>00480     (<a class="code" href="structitk_1_1Concept_1_1SameDimension.html">Concept::SameDimension</a>&lt;<a class="code" href="itkMacro_8h.html#94ef2dc11d52c8ef0a78e34558feb8cb">itkGetStaticConstMacro</a>(PointDimension),3&gt;));
<a name="l00481"></a>00481 
<a name="l00483"></a>00483 <span class="preprocessor">#endif</span>
<a name="l00484"></a>00484 <span class="preprocessor"></span>
<a name="l00485"></a>00485   <span class="comment">// for reusability of a mesh in the MeshToMesh filter</span>
<a name="l00486"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#d0d797010c0f12c3e9a57a7e4448bcee">00486</a>   <span class="keywordtype">void</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#d0d797010c0f12c3e9a57a7e4448bcee">ClearFreePointAndCellIndexesLists</a>( )
<a name="l00487"></a>00487     {
<a name="l00488"></a>00488     <span class="keywordflow">while</span>( !this-&gt;<a class="code" href="classitk_1_1QuadEdgeMesh.html#c9d2f7651983f36851eb8abad3a286b9">m_FreePointIndexes</a>.empty( ) )
<a name="l00489"></a>00489       {
<a name="l00490"></a>00490       this-&gt;<a class="code" href="classitk_1_1QuadEdgeMesh.html#c9d2f7651983f36851eb8abad3a286b9">m_FreePointIndexes</a>.pop( );
<a name="l00491"></a>00491       }
<a name="l00492"></a>00492     <span class="keywordflow">while</span>( !this-&gt;<a class="code" href="classitk_1_1QuadEdgeMesh.html#aed65c1fbf7672336458e06d93add1f5">m_FreeCellIndexes</a>.empty( ) )
<a name="l00493"></a>00493       {
<a name="l00494"></a>00494       this-&gt;<a class="code" href="classitk_1_1QuadEdgeMesh.html#aed65c1fbf7672336458e06d93add1f5">m_FreeCellIndexes</a>.pop( );
<a name="l00495"></a>00495       }
<a name="l00496"></a>00496     }
<a name="l00497"></a>00497 
<a name="l00498"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#83da3b68d6ed44d9a43758ff5e5b3214">00498</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#83da3b68d6ed44d9a43758ff5e5b3214">GetNumberOfFaces</a>( )<span class="keyword"> const </span>{<span class="keywordflow">return</span>( m_NumberOfFaces ); }
<a name="l00499"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#84bbbb20dbf835d14db5a9f5d5a7d632">00499</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#84bbbb20dbf835d14db5a9f5d5a7d632">GetNumberOfEdges</a>( )<span class="keyword"> const </span>{<span class="keywordflow">return</span>( m_NumberOfEdges ); }
<a name="l00500"></a>00500 
<a name="l00501"></a>00501 <span class="keyword">protected</span>:
<a name="l00503"></a>00503   <a class="code" href="classitk_1_1QuadEdgeMesh.html#4bb3f148f4f7c87eaabc3b5d76e7fbc2">QuadEdgeMesh</a>();
<a name="l00504"></a>00504   <span class="keyword">virtual</span> <a class="code" href="classitk_1_1QuadEdgeMesh.html#48e40f9d14d4c03e144497b057421097">~QuadEdgeMesh</a>(); 
<a name="l00506"></a>00506 
<a name="l00507"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">00507</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#bab8b7d81a82f2ce4f42691801cb0ad6">CellsContainerPointer</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#41d97c23e67a57ccfe277aa090007514">m_EdgeCellsContainer</a>;
<a name="l00508"></a>00508 
<a name="l00509"></a>00509 <span class="keyword">private</span>:
<a name="l00510"></a>00510   <a class="code" href="classitk_1_1QuadEdgeMesh.html#4bb3f148f4f7c87eaabc3b5d76e7fbc2">QuadEdgeMesh</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a>&amp; );    <span class="comment">//purposely not implemented</span>
<a name="l00511"></a>00511   <span class="keywordtype">void</span> operator=( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a>&amp; );  <span class="comment">//purposely not implemented</span>
<a name="l00512"></a>00512   <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> m_NumberOfFaces;
<a name="l00513"></a>00513   <a class="code" href="classitk_1_1QuadEdgeMesh.html#344f57da773582fbb180247319b82809">CellIdentifier</a> m_NumberOfEdges;
<a name="l00514"></a>00514 
<a name="l00515"></a>00515 <span class="keyword">protected</span>:
<a name="l00516"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#c9d2f7651983f36851eb8abad3a286b9">00516</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#21e022232de4c1ecc085f920d97d82b0">FreePointIndexesType</a> <a class="code" href="classitk_1_1QuadEdgeMesh.html#c9d2f7651983f36851eb8abad3a286b9">m_FreePointIndexes</a>;
<a name="l00517"></a><a class="code" href="classitk_1_1QuadEdgeMesh.html#aed65c1fbf7672336458e06d93add1f5">00517</a>   <a class="code" href="classitk_1_1QuadEdgeMesh.html#9f642d9aaa3a9dfe86dbe895fb021756">FreeCellIndexesType</a>  <a class="code" href="classitk_1_1QuadEdgeMesh.html#aed65c1fbf7672336458e06d93add1f5">m_FreeCellIndexes</a>;
<a name="l00518"></a>00518 
<a name="l00519"></a>00519 };
<a name="l00520"></a>00520 
<a name="l00521"></a>00521 }
<a name="l00522"></a>00522 
<a name="l00523"></a>00523 
<a name="l00524"></a>00524 <span class="preprocessor">#ifndef ITK_MANUAL_INSTANTIATION</span>
<a name="l00525"></a>00525 <span class="preprocessor"></span><span class="preprocessor">#include "itkQuadEdgeMesh.txx"</span>
<a name="l00526"></a>00526 <span class="preprocessor">#endif</span>
<a name="l00527"></a>00527 <span class="preprocessor"></span>
<a name="l00528"></a>00528 <span class="preprocessor">#endif</span>
<a name="l00529"></a>00529 <span class="preprocessor"></span>
</pre></div></div>
<hr><address><small>
Generated at Thu May 7 23:54:01 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>