aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a03760.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a03760.html')
-rw-r--r--docs/doxygen/nel/a03760.html411
1 files changed, 411 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a03760.html b/docs/doxygen/nel/a03760.html
new file mode 100644
index 00000000..23fd90e2
--- /dev/null
+++ b/docs/doxygen/nel/a03760.html
@@ -0,0 +1,411 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NL3D::CZoneSmoother class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NL3D::CZoneSmoother Class Reference</h1><code>#include &lt;<a class="el" href="a06777.html">zone_smoother.h</a>&gt;</code>
+<p>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+A class used to make Bezier patch of zones G1. <dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p>
+Nevrax France </dd></dl>
+<dl compact><dt><b>Date:</b></dt><dd>2000 </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00046">46</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmoothera0">CZoneSmoother</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <a href="#NL3D_1_1CZoneSmoothera0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmoothera1">smoothTangents</a> (<a class="el" href="a03761.html">CZoneInfo</a> zones[5], float angleThreshold=<a class="el" href="a05378.html#a44">NLMISC::Pi</a>/6, bool continuityC1=false)</td></tr>
+
+<tr><td colspan=2><br><h2>Private Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map&lt; <a class="el" href="a04558.html#a14">sint</a>, <a class="el" href="a03761.html">CZoneInfo</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmoothery0">TZoneInfoMap</a></td></tr>
+
+<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmootherd0">smoothTangent</a> (const <a class="el" href="a03128.html">CVector</a> &amp;tgt, const <a class="el" href="a03128.html">CVector</a> &amp;int0, const <a class="el" href="a03128.html">CVector</a> &amp;int1, <a class="el" href="a03128.html">CVector</a> &amp;tgtres)</td></tr>
+
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr0">_ContinuityC1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>float&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr1">_CosThreshold</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03760.html#NL3D_1_1CZoneSmoothery0">TZoneInfoMap</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr2">_Zones</a></td></tr>
+
+</table>
+<hr><h2>Member Typedef Documentation</h2>
+<a class="anchor" name="NL3D_1_1CZoneSmoothery0" doxytag="NL3D::CZoneSmoother::TZoneInfoMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::map&lt;<a class="el" href="a04558.html#a14">sint</a>, <a class="el" href="a03761.html">CZoneInfo</a>&gt; <a class="el" href="a03760.html#NL3D_1_1CZoneSmoothery0">NL3D::CZoneSmoother::TZoneInfoMap</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00090">90</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>. </td>
+ </tr>
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NL3D_1_1CZoneSmoothera0" doxytag="NL3D::CZoneSmoother::CZoneSmoother" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NL3D::CZoneSmoother::CZoneSmoother </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00066">66</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>.
+<p>
+<div class="fragment"><pre>00066 {}
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NL3D_1_1CZoneSmootherd0" doxytag="NL3D::CZoneSmoother::smoothTangent" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NL3D::CZoneSmoother::smoothTangent </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>tgt</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const <a class="el" href="a03128.html">CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>int0</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const <a class="el" href="a03128.html">CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>int1</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a03128.html">CVector</a> &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>tgtres</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06776.html#l00036">36</a> of file <a class="el" href="a06776.html">zone_smoother.cpp</a>.
+<p>
+References <a class="el" href="a06777.html#l00093">_ContinuityC1</a>, <a class="el" href="a06777.html#l00092">_CosThreshold</a>, <a class="el" href="a06682.html#l00115">NLMISC::CVector::norm()</a>, and <a class="el" href="a06682.html#l00119">NLMISC::CVector::normalize()</a>.
+<p>
+Referenced by <a class="el" href="a06776.html#l00067">smoothTangents()</a>.
+<p>
+<div class="fragment"><pre>00037 {
+00038 <span class="comment">// First, test anglethreshold.</span>
+00039 CVector dir0= tgt-int0;
+00040 CVector dir1= int1-tgt;
+00041 <span class="keywordtype">float</span> norm0= dir0.norm();
+00042 <span class="keywordtype">float</span> norm1= dir1.norm();
+00043 dir0.normalize();
+00044 dir1.normalize();
+00045 <span class="comment">// If not so colinear...</span>
+00046 <span class="keywordflow">if</span>(dir0*dir1&lt;<a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr1">_CosThreshold</a>)
+00047 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00048
+00049 <span class="comment">// Then smooth.</span>
+00050 <span class="keywordflow">if</span>(<a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr0">_ContinuityC1</a>)
+00051 {
+00052 tgtres= (int0+int1)/2;
+00053 }
+00054 <span class="keywordflow">else</span>
+00055 {
+00056 <span class="comment">// Make it colinear, but not at the middle.</span>
+00057 <span class="comment">// Respect the old distance ratio.</span>
+00058 tgtres= (int0*norm1 + int1*norm0)/ (norm0+norm1);
+00059 }
+00060
+00061
+00062 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00063 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CZoneSmoothera1" doxytag="NL3D::CZoneSmoother::smoothTangents" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NL3D::CZoneSmoother::smoothTangents </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03761.html">CZoneInfo</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>zones</em>[5], </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>float&nbsp;</td>
+ <td class="mdname" nowrap> <em>angleThreshold</em> = <a class="el" href="a05378.html#a44">NLMISC::Pi</a>/6, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>continuityC1</em> = false</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Smooth the tangents of those zones. Zones must be correclty welded. Only all patchs of zones[0] are parsed. But other zones may be modified on their edge (so you must save them).<p>
+NB: tangent smoothing is only done on bind 1/1.<p>
+<dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>zones</em>&nbsp;</td><td>The 0 is the center zone to be computed. Other are the 4 zones around (no special order needed). Doesn't matter if zones[i].Patchs is NULL. Also, if a neighbor patch is not found on a edge, then no error is generated: this patch edge is not modified. nlstop if zones[0]==NULL. </td></tr>
+ <tr><td valign=top><em>angleThreshold</em>&nbsp;</td><td>if angle beetween (patch_interior - tangent) and (neighbor_patch_interior - tangent) is above angleThreshold, no smooth is done on this tangent. Default: 30deg. </td></tr>
+ <tr><td valign=top><em>continuityC1.</em>&nbsp;</td><td>when a smooth is done on a tangent, tangent is forced such that the 2 interiors and the tangent are colinear, so continuity G1 is assured. if continuityC1 is true, then tangent is set to the middle of the interiors (continuity C1). If false, tangent is setup so that previous distance ratio are kept.</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06776.html#l00067">67</a> of file <a class="el" href="a06776.html">zone_smoother.cpp</a>.
+<p>
+References <a class="el" href="a06777.html#l00093">_ContinuityC1</a>, <a class="el" href="a06777.html#l00092">_CosThreshold</a>, <a class="el" href="a06760.html#l00236">NL3D::CPatchInfo::BindEdges</a>, <a class="el" href="a06760.html#l00108">NL3D::CPatchInfo::CBindInfo::Edge</a>, <a class="el" href="a06760.html#l00192">NL3D::CPatchInfo::getSmoothFlag()</a>, <a class="el" href="a05479.html#l00081">NL3D::CBezierPatch::Interiors</a>, <a class="el" href="a06760.html#l00106">NL3D::CPatchInfo::CBindInfo::Next</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06760.html#l00101">NL3D::CPatchInfo::CBindInfo::NPatchs</a>, <a class="el" href="a06760.html#l00120">NL3D::CPatchInfo::Patch</a>, <a class="el" href="a06777.html#l00055">NL3D::CZoneSmoother::CZoneInfo::Patchs</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a06776.html#l00036">smoothTangent()</a>, <a class="el" href="a05479.html#l00079">NL3D::CBezierPatch::Tangents</a>, and <a class="el" href="a06760.html#l00104">NL3D::CPatchInfo::CBindInfo::ZoneId</a>.
+<p>
+<div class="fragment"><pre>00068 {
+00069 <a class="code" href="a04558.html#a14">sint</a> i,j;
+00070
+00071 <a class="code" href="a04199.html#a6">nlassert</a>(zones[0].Patchs);
+00072
+00073 <span class="comment">// Local info.</span>
+00074 <a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr1">_CosThreshold</a>= (<span class="keywordtype">float</span>)cos(angleThreshold);
+00075 <a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr0">_ContinuityC1</a>= continuityC1;
+00076
+00077 <span class="comment">// 0. fill local Zone map.</span>
+00078 <span class="comment">//========================</span>
+00079 <a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr2">_Zones</a>.clear();
+00080 <span class="keywordflow">for</span>(i=0;i&lt;5;i++)
+00081 {
+00082 <span class="comment">// If not NULL</span>
+00083 <span class="keywordflow">if</span>(zones[i].Patchs)
+00084 {
+00085 <a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr2">_Zones</a>.insert( TZoneInfoMap::value_type(zones[i].ZoneId, zones[i]) );
+00086 }
+00087 }
+00088
+00089 <span class="comment">// 1. Fot all patchs of zones[0].</span>
+00090 <span class="comment">//===============================</span>
+00091 std::vector&lt;CPatchInfo&gt; &amp;patchs= *(zones[0].Patchs);
+00092 <span class="keywordflow">for</span>(i=0;i&lt;(<a class="code" href="a04558.html#a14">sint</a>)patchs.size();i++)
+00093 {
+00094 CPatchInfo &amp;pat0= patchs[i];
+00095
+00096 <span class="comment">// For all edges.</span>
+00097 <span class="keywordflow">for</span>(j=0;j&lt;4;j++)
+00098 {
+00099 <span class="keywordflow">if</span> (pat0.getSmoothFlag (i))
+00100 {
+00101 CPatchInfo::CBindInfo &amp;bd= pat0.BindEdges[j];
+00102 <span class="comment">// If normal bind (1/1), we can do the smooth.</span>
+00103 <span class="keywordflow">if</span>(bd.NPatchs==1)
+00104 {
+00105 <span class="comment">// Retrieve the good neighbor zone.</span>
+00106 TZoneInfoMap::iterator itZone= <a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr2">_Zones</a>.find(bd.ZoneId);
+00107 <span class="comment">// If zone here.</span>
+00108 <span class="keywordflow">if</span>(itZone!=<a class="code" href="a03760.html#NL3D_1_1CZoneSmootherr2">_Zones</a>.end())
+00109 {
+00110 CZoneInfo &amp;zi= itZone-&gt;second;
+00111 CPatchInfo &amp;pat1= (*zi.Patchs)[bd.Next[0]];
+00112 <span class="comment">// Here, we have the 2 patchs, and we must smooth 2 tangents.</span>
+00113 CVector tgtRes;
+00114 <a class="code" href="a04558.html#a14">sint</a> edge0= j;
+00115 <a class="code" href="a04558.html#a14">sint</a> edge1= bd.Edge[0];
+00116
+00117 <span class="comment">// Make a draw to understand (see Bezier patchs conventions).</span>
+00118 <span class="comment">// The key is: Patchs are always CCW, so must smooth the patchs one front of the other.</span>
+00119
+00120 <span class="comment">// a. First tangent.</span>
+00121 <span class="comment">//==================</span>
+00122 <span class="keywordflow">if</span>(<a class="code" href="a03760.html#NL3D_1_1CZoneSmootherd0">smoothTangent</a>(pat0.Patch.Tangents[edge0*2], pat0.Patch.Interiors[edge0],
+00123 pat1.Patch.Interiors[(edge1+1)%4], tgtRes))
+00124 {
+00125 <span class="comment">// Set the result on the 2 patchs.</span>
+00126 pat0.Patch.Tangents[edge0*2]= tgtRes;
+00127 pat1.Patch.Tangents[edge1*2+1]= tgtRes;
+00128 }
+00129
+00130 <span class="comment">// b. Second tangent.</span>
+00131 <span class="comment">//==================</span>
+00132 <span class="keywordflow">if</span>(<a class="code" href="a03760.html#NL3D_1_1CZoneSmootherd0">smoothTangent</a>(pat0.Patch.Tangents[edge0*2+1], pat0.Patch.Interiors[(edge0+1)%4],
+00133 pat1.Patch.Interiors[edge1], tgtRes))
+00134 {
+00135 <span class="comment">// Set the result on the 2 patchs.</span>
+00136 pat0.Patch.Tangents[edge0*2+1]= tgtRes;
+00137 pat1.Patch.Tangents[edge1*2]= tgtRes;
+00138 }
+00139
+00140 }
+00141 }
+00142 }
+00143 }
+00144 }
+00145
+00146 <span class="comment">// End!!</span>
+00147 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NL3D_1_1CZoneSmootherr0" doxytag="NL3D::CZoneSmoother::_ContinuityC1" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr0">NL3D::CZoneSmoother::_ContinuityC1</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00093">93</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>.
+<p>
+Referenced by <a class="el" href="a06776.html#l00036">smoothTangent()</a>, and <a class="el" href="a06776.html#l00067">smoothTangents()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CZoneSmootherr1" doxytag="NL3D::CZoneSmoother::_CosThreshold" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> float <a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr1">NL3D::CZoneSmoother::_CosThreshold</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00092">92</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>.
+<p>
+Referenced by <a class="el" href="a06776.html#l00036">smoothTangent()</a>, and <a class="el" href="a06776.html#l00067">smoothTangents()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NL3D_1_1CZoneSmootherr2" doxytag="NL3D::CZoneSmoother::_Zones" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a03760.html#NL3D_1_1CZoneSmoothery0">TZoneInfoMap</a> <a class="el" href="a03760.html#NL3D_1_1CZoneSmootherr2">NL3D::CZoneSmoother::_Zones</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06777.html#l00091">91</a> of file <a class="el" href="a06777.html">zone_smoother.h</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a06777.html">zone_smoother.h</a><li><a class="el" href="a06776.html">zone_smoother.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 08:36:25 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>