diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a02774.html | 648 |
1 files changed, 648 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02774.html b/docs/doxygen/nel/a02774.html new file mode 100644 index 00000000..34a1b5e1 --- /dev/null +++ b/docs/doxygen/nel/a02774.html @@ -0,0 +1,648 @@ +<!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::CLoadBalancingGroup 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 Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CLoadBalancingGroup Class Reference</h1><code>#include <<a class="el" href="a05924.html">load_balancing_trav.h</a>></code> +<p> +<hr><a name="_details"></a><h2>Detailed Description</h2> +A LoadBalancing Group. Models are owned by a group. Groups are created in <a class="el" href="a02775.html">CLoadBalancingTrav</a>.<p> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03348.html">CScene</a> <a class="el" href="a02775.html">CLoadBalancingTrav</a> </dd></dl> +<dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p> +Nevrax France </dd></dl> +<dl compact><dt><b>Date:</b></dt><dd>2002 </dd></dl> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00060">60</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4">TPolygonBalancingMode</a> { <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw2">PolygonBalancingOff</a> = 0, +<a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw3">PolygonBalancingOn</a>, +<a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw1">PolygonBalancingClamp</a>, +<a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw0">CountPolygonBalancing</a> + }</td></tr> + +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa0">addNbFacesPass0</a> (float <a class="el" href="a04223.html#a576">v</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa1">CLoadBalancingGroup</a> ()</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa2">computeModelNbFace</a> (float faceIn)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the number of face to be rendered for thismodel, according to the number of faces he want to draw. <a href="#NL3D_1_1CLoadBalancingGroupa2"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa3">getNbFaceAsked</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa4">getNbFaceWanted</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupa5">setNbFaceWanted</a> (<a class="el" href="a04558.html#a15">uint</a> nFaces)</td></tr> + +<tr><td colspan=2><br><h2>Data Fields</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>std::string </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupo0">Name</a></td></tr> + +<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupd0">computeRatioAndSmooth</a> (<a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4">TPolygonBalancingMode</a> polMode)</td></tr> + +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr0">_DefaultGroup</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4">TPolygonBalancingMode</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr4">_PrecPolygonBalancingMode</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03642.html">NLMISC::CValueSmoother</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a></td></tr> + +<tr><td colspan=2><br><h2>Friends</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>class </td><td class="memItemRight" valign=bottom><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupn0">CLoadBalancingTrav</a></td></tr> + +</table> +<hr><h2>Member Enumeration Documentation</h2> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupw4" doxytag="NL3D::CLoadBalancingGroup::TPolygonBalancingMode" ></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"> enum <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4">NL3D::CLoadBalancingGroup::TPolygonBalancingMode</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw2" doxytag="PolygonBalancingOff" ></a>PolygonBalancingOff</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw3" doxytag="PolygonBalancingOn" ></a>PolygonBalancingOn</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw1" doxytag="PolygonBalancingClamp" ></a>PolygonBalancingClamp</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw0" doxytag="CountPolygonBalancing" ></a>CountPolygonBalancing</em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a05924.html#l00064">64</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +<div class="fragment"><pre>00064 {<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw2">PolygonBalancingOff</a>=0, <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw3">PolygonBalancingOn</a>, <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw1">PolygonBalancingClamp</a>, <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw0">CountPolygonBalancing</a> }; +</pre></div> </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa1" doxytag="NL3D::CLoadBalancingGroup::CLoadBalancingGroup" ></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::CLoadBalancingGroup::CLoadBalancingGroup </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05923.html#l00054">54</a> of file <a class="el" href="a05923.html">load_balancing_trav.cpp</a>. +<p> +References <a class="el" href="a05924.html#l00089">_DefaultGroup</a>, <a class="el" href="a05924.html#l00098">_FaceRatio</a>, <a class="el" href="a05924.html#l00092">_NbFacePass0</a>, <a class="el" href="a05924.html#l00095">_NbFaceWanted</a>, <a class="el" href="a05924.html#l00103">_PrecPolygonBalancingMode</a>, <a class="el" href="a05924.html#l00101">_ValueSmoother</a>, <a class="el" href="a06657.html#l00056">NLMISC::CValueSmootherTemplate< float >::init()</a>, and <a class="el" href="a05923.html#l00041">NL3D_DEFAULT_LOADBALANCING_VALUE_SMOOTHER</a>. +<p> +<div class="fragment"><pre>00055 { +00056 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr4">_PrecPolygonBalancingMode</a>= CLoadBalancingGroup::PolygonBalancingOff; +00057 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a>= 20000; +00058 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea5">init</a>(NL3D_DEFAULT_LOADBALANCING_VALUE_SMOOTHER); +00059 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr0">_DefaultGroup</a>= <span class="keyword">false</span>; +00060 +00061 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>= 0; +00062 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= 1; +00063 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa0" doxytag="NL3D::CLoadBalancingGroup::addNbFacesPass0" ></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::CLoadBalancingGroup::addNbFacesPass0 </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float </td> + <td class="mdname1" valign="top" nowrap> <em>v</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00080">80</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +References <a class="el" href="a05924.html#l00092">_NbFacePass0</a>, and <a class="el" href="a05646.html#l00237">v</a>. +<p> +Referenced by <a class="el" href="a06570.html#l00274">NL3D::CTransformShape::traverseLoadBalancingPass0()</a>. +<p> +<div class="fragment"><pre>00080 {<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>+= <a class="code" href="a04223.html#a576">v</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa2" doxytag="NL3D::CLoadBalancingGroup::computeModelNbFace" ></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 NL3D::CLoadBalancingGroup::computeModelNbFace </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float </td> + <td class="mdname1" valign="top" nowrap> <em>faceIn</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Compute the number of face to be rendered for thismodel, according to the number of faces he want to draw. +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00083">83</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +References <a class="el" href="a05924.html#l00098">_FaceRatio</a>. +<p> +Referenced by <a class="el" href="a06570.html#l00308">NL3D::CTransformShape::traverseLoadBalancingPass1()</a>. +<p> +<div class="fragment"><pre>00083 {<span class="keywordflow">return</span> faceIn * <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupd0" doxytag="NL3D::CLoadBalancingGroup::computeRatioAndSmooth" ></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::CLoadBalancingGroup::computeRatioAndSmooth </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4">TPolygonBalancingMode</a> </td> + <td class="mdname1" valign="top" nowrap> <em>polMode</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [private]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05923.html#l00067">67</a> of file <a class="el" href="a05923.html">load_balancing_trav.cpp</a>. +<p> +References <a class="el" href="a05924.html#l00089">_DefaultGroup</a>, <a class="el" href="a05924.html#l00098">_FaceRatio</a>, <a class="el" href="a05924.html#l00092">_NbFacePass0</a>, <a class="el" href="a05924.html#l00095">_NbFaceWanted</a>, <a class="el" href="a05924.html#l00103">_PrecPolygonBalancingMode</a>, <a class="el" href="a05924.html#l00101">_ValueSmoother</a>, <a class="el" href="a06657.html#l00080">NLMISC::CValueSmootherTemplate< float >::addValue()</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a06657.html#l00104">NLMISC::CValueSmootherTemplate< float >::getSmoothValue()</a>, <a class="el" href="a06657.html#l00056">NLMISC::CValueSmootherTemplate< float >::init()</a>, <a class="el" href="a05587.html#l00186">NLMISC::isValidDouble()</a>, <a class="el" href="a05923.html#l00041">NL3D_DEFAULT_LOADBALANCING_VALUE_SMOOTHER</a>, <a class="el" href="a05923.html#l00042">NL3D_LOADBALANCING_SMOOTHER_MAX_RATIO</a>, <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw1">PolygonBalancingClamp</a>, <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw2">PolygonBalancingOff</a>, <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw3">PolygonBalancingOn</a>, and <a class="el" href="a06657.html#l00070">NLMISC::CValueSmootherTemplate< float >::reset()</a>. +<p> +<div class="fragment"><pre>00068 { +00069 <span class="comment">// If Default group, disable load balancing</span> +00070 <span class="keywordflow">if</span>(<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr0">_DefaultGroup</a>) +00071 polMode= <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw2">PolygonBalancingOff</a>; +00072 +00073 <span class="comment">// Compute ratio</span> +00074 <span class="keywordflow">switch</span>(polMode) +00075 { +00076 <span class="keywordflow">case</span> PolygonBalancingOff: +00077 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= 1; +00078 <span class="keywordflow">break</span>; +00079 <span class="keywordflow">case</span> <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw3">PolygonBalancingOn</a> : +00080 <span class="keywordflow">if</span>(<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>!=0) +00081 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= (<span class="keywordtype">float</span>)<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a> / <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>; +00082 <span class="keywordflow">else</span> +00083 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= 1; +00084 <span class="keywordflow">break</span>; +00085 <span class="keywordflow">case</span> <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupw4NL3D_1_1CLoadBalancingGroupw1">PolygonBalancingClamp</a>: +00086 <span class="keywordflow">if</span>(<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>!=0) +00087 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= (<span class="keywordtype">float</span>)<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a> / <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>; +00088 <span class="keywordflow">else</span> +00089 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= 1; +00090 <a class="code" href="a05378.html#a374">clamp</a>(_FaceRatio, 0, 1); +00091 <span class="keywordflow">break</span>; +00092 <span class="keywordflow">default</span>: <span class="keywordflow">break</span>; +00093 }; +00094 +00095 <span class="comment">// smooth the value.</span> +00096 <span class="comment">// if change of PolygonBalancingMode, reset the _ValueSmoother.</span> +00097 <span class="keywordflow">if</span>(polMode!=<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr4">_PrecPolygonBalancingMode</a>) +00098 { +00099 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea5">init</a>(NL3D_DEFAULT_LOADBALANCING_VALUE_SMOOTHER); +00100 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr4">_PrecPolygonBalancingMode</a>= polMode; +00101 } +00102 <span class="comment">// if not PolygonBalancingOff, smooth the ratio.</span> +00103 <span class="keywordflow">if</span>(polMode!=PolygonBalancingOff) +00104 { +00105 <span class="comment">// FIX: If the _FaceRatio is not a float (NaN or +-oo), don't add it!!</span> +00106 <span class="keywordflow">if</span>(<a class="code" href="a05378.html#a384">isValidDouble</a>(_FaceRatio)) +00107 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea0">addValue</a>(_FaceRatio); +00108 <span class="keywordtype">float</span> fSmooth= <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea4">getSmoothValue</a>(); +00109 +00110 <span class="comment">// If after smoothing, the number of faces is still too big, reduce smooth effect! (frustrum clip effect)</span> +00111 <span class="keywordflow">if</span>(fSmooth*<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a> > <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a>*<a class="code" href="a04500.html#a1">NL3D_LOADBALANCING_SMOOTHER_MAX_RATIO</a>) +00112 { +00113 <span class="comment">// reset the smoother</span> +00114 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea6">reset</a>(); +00115 <span class="comment">// reduce smooth effect</span> +00116 fSmooth= <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>*<a class="code" href="a04500.html#a1">NL3D_LOADBALANCING_SMOOTHER_MAX_RATIO</a>; +00117 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">_ValueSmoother</a>.<a class="code" href="a03643.html#NLMISC_1_1CValueSmootherTemplatea0">addValue</a>(fSmooth); +00118 } +00119 +00120 <span class="comment">// take the smoothed value.</span> +00121 <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr1">_FaceRatio</a>= fSmooth; +00122 } +00123 +00124 +00125 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa3" doxytag="NL3D::CLoadBalancingGroup::getNbFaceAsked" ></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 NL3D::CLoadBalancingGroup::getNbFaceAsked </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00076">76</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +References <a class="el" href="a05924.html#l00092">_NbFacePass0</a>. +<p> +<div class="fragment"><pre>00076 {<span class="keywordflow">return</span> <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr2">_NbFacePass0</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa4" doxytag="NL3D::CLoadBalancingGroup::getNbFaceWanted" ></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="a04558.html#a15">uint</a> NL3D::CLoadBalancingGroup::getNbFaceWanted </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00074">74</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +References <a class="el" href="a05924.html#l00095">_NbFaceWanted</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00251">NL3D::CLoadBalancingTrav::getGroupNbFaceWanted()</a>. +<p> +<div class="fragment"><pre>00074 {<span class="keywordflow">return</span> <a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupa5" doxytag="NL3D::CLoadBalancingGroup::setNbFaceWanted" ></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::CLoadBalancingGroup::setNbFaceWanted </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname1" valign="top" nowrap> <em>nFaces</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00073">73</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +References <a class="el" href="a05924.html#l00095">_NbFaceWanted</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00244">NL3D::CLoadBalancingTrav::setGroupNbFaceWanted()</a>. +<p> +<div class="fragment"><pre>00073 {<a class="code" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">_NbFaceWanted</a>= nFaces;} +</pre></div> </td> + </tr> +</table> +<hr><h2>Friends And Related Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupn0" doxytag="NL3D::CLoadBalancingGroup::CLoadBalancingTrav" ></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"> friend class <a class="el" href="a02775.html">CLoadBalancingTrav</a><code> [friend]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00086">86</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr0" doxytag="NL3D::CLoadBalancingGroup::_DefaultGroup" ></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="a02774.html#NL3D_1_1CLoadBalancingGroupr0">NL3D::CLoadBalancingGroup::_DefaultGroup</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00089">89</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, and <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr1" doxytag="NL3D::CLoadBalancingGroup::_FaceRatio" ></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="a02774.html#NL3D_1_1CLoadBalancingGroupr1">NL3D::CLoadBalancingGroup::_FaceRatio</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00098">98</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, <a class="el" href="a05924.html#l00083">computeModelNbFace()</a>, and <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr2" doxytag="NL3D::CLoadBalancingGroup::_NbFacePass0" ></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="a02774.html#NL3D_1_1CLoadBalancingGroupr2">NL3D::CLoadBalancingGroup::_NbFacePass0</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00092">92</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05924.html#l00080">addNbFacesPass0()</a>, <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>, and <a class="el" href="a05924.html#l00076">getNbFaceAsked()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr3" doxytag="NL3D::CLoadBalancingGroup::_NbFaceWanted" ></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="a04558.html#a15">uint</a> <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr3">NL3D::CLoadBalancingGroup::_NbFaceWanted</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00095">95</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>, <a class="el" href="a05924.html#l00074">getNbFaceWanted()</a>, and <a class="el" href="a05924.html#l00073">setNbFaceWanted()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr4" doxytag="NL3D::CLoadBalancingGroup::_PrecPolygonBalancingMode" ></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="a02774.html#NL3D_1_1CLoadBalancingGroupw4">TPolygonBalancingMode</a> <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr4">NL3D::CLoadBalancingGroup::_PrecPolygonBalancingMode</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00103">103</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, and <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupr5" doxytag="NL3D::CLoadBalancingGroup::_ValueSmoother" ></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="a03642.html">NLMISC::CValueSmoother</a> <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupr5">NL3D::CLoadBalancingGroup::_ValueSmoother</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00101">101</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a05923.html#l00054">CLoadBalancingGroup()</a>, and <a class="el" href="a05923.html#l00067">computeRatioAndSmooth()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLoadBalancingGroupo0" doxytag="NL3D::CLoadBalancingGroup::Name" ></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"> std::string <a class="el" href="a02774.html#NL3D_1_1CLoadBalancingGroupo0">NL3D::CLoadBalancingGroup::Name</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05924.html#l00068">68</a> of file <a class="el" href="a05924.html">load_balancing_trav.h</a>. +<p> +Referenced by <a class="el" href="a06568.html#l00532">NL3D::CTransform::getLoadBalancingGroup()</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05924.html">load_balancing_trav.h</a><li><a class="el" href="a05923.html">load_balancing_trav.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:49:40 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> |