<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Crystal Space 1.2.1: csTriangleVerticesCost Class Reference (Crystal Space 1.2.1 Public API Reference)</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="head"> <tr height="59"> <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td> <td class="head"><h2>Public API Reference</h2></td> </tr> <tr height="11"> <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td> </tr> </table> <div class="content"> <!-- Generated by Doxygen 1.5.3 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>csTriangleVerticesCost Class Reference<br> <small> [<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small> </h1><!-- doxytag: class="csTriangleVerticesCost" -->A class which holds vertices and connectivity information for a triangle mesh. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="trimeshlod_8h-source.html">csgeom/trimeshlod.h</a>></code> <p> <p> <a href="classcsTriangleVerticesCost-members.html">List of all members.</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">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#4e6ca18483dc52fd53dbc0c81b1e90d9">CalculateCost</a> (<a class="el" href="classcsTriangleLODAlgo.html">csTriangleLODAlgo</a> *lodalgo)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Calculate the cost of all vertices. <a href="#4e6ca18483dc52fd53dbc0c81b1e90d9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#330ec2bf9cc9950d730119a7bd9693b3">csTriangleVerticesCost</a> (<a class="el" href="classcsTriangleMesh.html">csTriangleMesh</a> *mesh, <a class="el" href="classcsVector3.html">csVector3</a> *verts, int num_verts)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Build vertex table for a triangle mesh. <a href="#330ec2bf9cc9950d730119a7bd9693b3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#5c5fd02f66cd0205188202f6e45f6429">Dump</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Dump connectivity information. <a href="#5c5fd02f66cd0205188202f6e45f6429"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#b1277ddb69bbd6ca7d51a55cb828982c">GetMinimalCostVertex</a> (float &min_cost)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the vertex id with minimal cost. <a href="#b1277ddb69bbd6ca7d51a55cb828982c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="babc45298b2ba69339d5efe66cc781a3"></a><!-- doxytag: member="csTriangleVerticesCost::GetVertex" ref="babc45298b2ba69339d5efe66cc781a3" args="(int idx)" --> <a class="el" href="classcsTriangleVertexCost.html">csTriangleVertexCost</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#babc45298b2ba69339d5efe66cc781a3">GetVertex</a> (int idx)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b5b017818f96336072e145125fa76949"></a><!-- doxytag: member="csTriangleVerticesCost::GetVertexCount" ref="b5b017818f96336072e145125fa76949" args="() const " --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#b5b017818f96336072e145125fa76949">GetVertexCount</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7609ffd04d482ab2c040bbc2df5fb2be"></a><!-- doxytag: member="csTriangleVerticesCost::GetVertices" ref="7609ffd04d482ab2c040bbc2df5fb2be" args="() const " --> <a class="el" href="classcsTriangleVertexCost.html">csTriangleVertexCost</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#7609ffd04d482ab2c040bbc2df5fb2be">GetVertices</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsTriangleVerticesSorted.html">csTriangleVerticesSorted</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#328effabc9a2449ed24e3eafe010397a">SortVertices</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sort all vertices so that the lowest cost vertex is first. <a href="#328effabc9a2449ed24e3eafe010397a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsTriangleVerticesCost.html#828ccb94dd859b5259595c12b9a03d30">UpdateVertices</a> (<a class="el" href="classcsVector3.html">csVector3</a> *verts)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Update vertex table for a given set of vertices (with the same number as at init). <a href="#828ccb94dd859b5259595c12b9a03d30"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A class which holds vertices and connectivity information for a triangle mesh. <p> This is a general vertices structure but it is mostly useful for LOD generation since every vertex contains information which helps selecting the best vertices for collapsing. <p>Definition at line <a class="el" href="trimeshlod_8h-source.html#l00129">129</a> of file <a class="el" href="trimeshlod_8h-source.html">trimeshlod.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="330ec2bf9cc9950d730119a7bd9693b3"></a><!-- doxytag: member="csTriangleVerticesCost::csTriangleVerticesCost" ref="330ec2bf9cc9950d730119a7bd9693b3" args="(csTriangleMesh *mesh, csVector3 *verts, int num_verts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csTriangleVerticesCost::csTriangleVerticesCost </td> <td>(</td> <td class="paramtype"><a class="el" href="classcsTriangleMesh.html">csTriangleMesh</a> * </td> <td class="paramname"> <em>mesh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classcsVector3.html">csVector3</a> * </td> <td class="paramname"> <em>verts</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>num_verts</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Build vertex table for a triangle mesh. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>mesh</em> </td><td>is the triangle mesh from which to calculate connectivity information. </td></tr> <tr><td valign="top"></td><td valign="top"><em>verts</em> </td><td>is an array of vertices that will be used to fill the cost vertex table. </td></tr> <tr><td valign="top"></td><td valign="top"><em>num_verts</em> </td><td>is the size of that table. </td></tr> </table> </dl> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="4e6ca18483dc52fd53dbc0c81b1e90d9"></a><!-- doxytag: member="csTriangleVerticesCost::CalculateCost" ref="4e6ca18483dc52fd53dbc0c81b1e90d9" args="(csTriangleLODAlgo *lodalgo)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csTriangleVerticesCost::CalculateCost </td> <td>(</td> <td class="paramtype"><a class="el" href="classcsTriangleLODAlgo.html">csTriangleLODAlgo</a> * </td> <td class="paramname"> <em>lodalgo</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Calculate the cost of all vertices. <p> </div> </div><p> <a class="anchor" name="5c5fd02f66cd0205188202f6e45f6429"></a><!-- doxytag: member="csTriangleVerticesCost::Dump" ref="5c5fd02f66cd0205188202f6e45f6429" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csTriangleVerticesCost::Dump </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Dump connectivity information. <p> </div> </div><p> <a class="anchor" name="b1277ddb69bbd6ca7d51a55cb828982c"></a><!-- doxytag: member="csTriangleVerticesCost::GetMinimalCostVertex" ref="b1277ddb69bbd6ca7d51a55cb828982c" args="(float &min_cost)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int csTriangleVerticesCost::GetMinimalCostVertex </td> <td>(</td> <td class="paramtype">float & </td> <td class="paramname"> <em>min_cost</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Return the vertex id with minimal cost. <p> </div> </div><p> <a class="anchor" name="328effabc9a2449ed24e3eafe010397a"></a><!-- doxytag: member="csTriangleVerticesCost::SortVertices" ref="328effabc9a2449ed24e3eafe010397a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsTriangleVerticesSorted.html">csTriangleVerticesSorted</a>* csTriangleVerticesCost::SortVertices </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Sort all vertices so that the lowest cost vertex is first. <p> </div> </div><p> <a class="anchor" name="828ccb94dd859b5259595c12b9a03d30"></a><!-- doxytag: member="csTriangleVerticesCost::UpdateVertices" ref="828ccb94dd859b5259595c12b9a03d30" args="(csVector3 *verts)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csTriangleVerticesCost::UpdateVertices </td> <td>(</td> <td class="paramtype"><a class="el" href="classcsVector3.html">csVector3</a> * </td> <td class="paramname"> <em>verts</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Update vertex table for a given set of vertices (with the same number as at init). <p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li>csgeom/<a class="el" href="trimeshlod_8h-source.html">trimeshlod.h</a></ul> <hr size="1"><address><small>Generated for Crystal Space 1.2.1 by <a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 </small></address> </div></body> </html>