<!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: csPolygonMesh 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>csPolygonMesh Class Reference<br> <small> [<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small> </h1><!-- doxytag: class="csPolygonMesh" --><!-- doxytag: inherits="scfImplementation1< csPolygonMesh, iPolygonMesh >" -->A convenience polygon mesh implementation that you can feed with vertices and polygons from another source. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="csgeom_2polymesh_8h-source.html">csgeom/polymesh.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for csPolygonMesh:</div> <div class="dynsection"> <p><center><img src="classcsPolygonMesh__inherit__graph.png" border="0" usemap="#csPolygonMesh__inherit__map" alt="Inheritance graph"></center> <map name="csPolygonMesh__inherit__map"> <area shape="rect" href="classscfImplementation1.html" title="scfImplementation1\< csPolygonMesh, iPolygonMesh \>" alt="" coords="60,161,436,188"><area shape="rect" href="classscfImplementation.html" title="scfImplementation\< csPolygonMesh \>" alt="" coords="5,84,277,111"><area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="301,7,357,33"><area shape="rect" href="structiPolygonMesh.html" title="This interface reprents a mesh of polygons." alt="" coords="301,84,411,111"><area shape="rect" href="classCS_1_1Memory_1_1CustomAllocated.html" title="Class that overrides operator new/operator delete/etc." alt="" coords="31,7,252,33"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="classcsPolygonMesh-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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#eff9e520fbfa674e900dcbec0c2ec2be">csPolygonMesh</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a polygon mesh. <a href="#eff9e520fbfa674e900dcbec0c2ec2be"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="group__util.html#g1134b580f8da4de94ca6b1de4d37975e">uint32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#da143e03b40eb0ee1d8485f1b1b56421">GetChangeNumber</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">When this number changes you know the polygon mesh has changed (deformation has occured) since the last time you got another number from this function. <a href="#da143e03b40eb0ee1d8485f1b1b56421"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsFlags.html">csFlags</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#ee6c633b243c117b27981bb05426873a">GetFlags</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get flags for this polygon mesh. <a href="#ee6c633b243c117b27981bb05426873a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#e3650525813e3ec5af133066b0208835">GetPolygonCount</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of polygons for this mesh. <a href="#e3650525813e3ec5af133066b0208835"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#7c5d22cb500d9ec2740a4299f434d1f6">GetPolygonIndices</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the polygon index table. <a href="#7c5d22cb500d9ec2740a4299f434d1f6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structcsMeshedPolygon.html">csMeshedPolygon</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#4a5295c0d0184088a987f4c8dcf06cc0">GetPolygons</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the pointer to the array of polygons. <a href="#4a5295c0d0184088a987f4c8dcf06cc0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#2aab442821fa410ad72a8ee5aebbab3c">GetTriangleCount</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of triangles for this mesh. <a href="#2aab442821fa410ad72a8ee5aebbab3c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structcsTriangle.html">csTriangle</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#892b5ca50be45f4615ff6d37afefc790">GetTriangles</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the triangle table for this mesh. <a href="#892b5ca50be45f4615ff6d37afefc790"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#0894b7678120a09f00f7099379d15b00">GetVertexCount</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of vertices for this mesh. <a href="#0894b7678120a09f00f7099379d15b00"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsVector3.html">csVector3</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#99b286223c069141bcc3848869302017">GetVertices</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the pointer to the array of vertices. <a href="#99b286223c069141bcc3848869302017"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#362fba636662670eac393a9a0a14e1db">Lock</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Lock the polygon mesh. <a href="#362fba636662670eac393a9a0a14e1db"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#38b033ce87624eb552d758f2732b550f">SetPolygonCount</a> (int po_count)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set polygon count. <a href="#38b033ce87624eb552d758f2732b550f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#f987bb067bcee5967f1a35cc08637024">SetPolygonIndexCount</a> (int po_index_count)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set polygon index count. <a href="#f987bb067bcee5967f1a35cc08637024"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#7dd77f46bd02c053d946acd26a3cbfed">SetPolygonIndices</a> (int *po_indices, bool delete_po_indices)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set polygon indices used by <a class="el" href="classcsPolygonMesh.html#f1fb03ccc2f48f9fe46527fe9570538d" title="Set the polygons to use for this polygon mesh.">SetPolygons()</a>. <a href="#7dd77f46bd02c053d946acd26a3cbfed"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#f1fb03ccc2f48f9fe46527fe9570538d">SetPolygons</a> (<a class="el" href="structcsMeshedPolygon.html">csMeshedPolygon</a> *po, int po_count, bool delete_po)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the polygons to use for this polygon mesh. <a href="#f1fb03ccc2f48f9fe46527fe9570538d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#43c29853eb6f39a1aeaf2643cad2c972">SetVertexCount</a> (int vt_count)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set vertex count. <a href="#43c29853eb6f39a1aeaf2643cad2c972"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#7e0f298b9072c9817548c73fef14d449">SetVertices</a> (<a class="el" href="classcsVector3.html">csVector3</a> *vt, int vt_count, bool delete_vt)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the vertices to use for this polygon mesh. <a href="#7e0f298b9072c9817548c73fef14d449"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#6305e9e68a9e769207d1dfd0db1b97a1">ShapeChanged</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Indicate that the shape has changed. <a href="#6305e9e68a9e769207d1dfd0db1b97a1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#7f23e10a9b65f453b766fda9a2e9cffd">Unlock</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unlock the polygon mesh. <a href="#7f23e10a9b65f453b766fda9a2e9cffd"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="91a709566ca46c3f04ff68f7683808bc"></a><!-- doxytag: member="csPolygonMesh::~csPolygonMesh" ref="91a709566ca46c3f04ff68f7683808bc" args="()" --> virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsPolygonMesh.html#91a709566ca46c3f04ff68f7683808bc">~csPolygonMesh</a> ()</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A convenience polygon mesh implementation that you can feed with vertices and polygons from another source. <p> It will automatically calculate the triangles if requested. <dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Use <a class="el" href="classcsTriangleMesh.html" title="A mesh of triangles.">csTriangleMesh</a> instead. </dd></dl> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00052">52</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="eff9e520fbfa674e900dcbec0c2ec2be"></a><!-- doxytag: member="csPolygonMesh::csPolygonMesh" ref="eff9e520fbfa674e900dcbec0c2ec2be" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csPolygonMesh::csPolygonMesh </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Construct a polygon mesh. <p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00082">82</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="da143e03b40eb0ee1d8485f1b1b56421"></a><!-- doxytag: member="csPolygonMesh::GetChangeNumber" ref="da143e03b40eb0ee1d8485f1b1b56421" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="group__util.html#g1134b580f8da4de94ca6b1de4d37975e">uint32</a> csPolygonMesh::GetChangeNumber </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> When this number changes you know the polygon mesh has changed (deformation has occured) since the last time you got another number from this function. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#685ee356f1701b45565f3a12cfaf0b6a">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00212">212</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="ee6c633b243c117b27981bb05426873a"></a><!-- doxytag: member="csPolygonMesh::GetFlags" ref="ee6c633b243c117b27981bb05426873a" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsFlags.html">csFlags</a>& csPolygonMesh::GetFlags </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get flags for this polygon mesh. <p> This is zero or a combination of the following flags:<ul> <li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ce8e9aae34250cfee0c5bbdeee9c6737b8" title="The object is closed, if set.">CS_POLYMESH_CLOSED</a>: mesh is closed.</li><li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8cecf23a303139282162f48575477c27770" title="The object is not closed, if set.">CS_POLYMESH_NOTCLOSED</a>: mesh is not closed.</li><li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ce40a5b15272940f6cbc9ca9581f3ed3ce" title="The object is convex, if set.">CS_POLYMESH_CONVEX</a>: mesh is convex.</li><li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ced3c40a299420fbebed6542e771a7ded4" title="The object is not convex, if set.">CS_POLYMESH_NOTCONVEX</a>: mesh is not convex.</li><li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ce3f90c752cbb5be9e8ef4871380eaab50" title="Set this flag if the polygon mesh is deformable.">CS_POLYMESH_DEFORMABLE</a>: mesh is deformable.</li><li><a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8cedc8fef75d8bcac18d711d1bafb503138" title="Set this flag if the native or desired format of the polygon mesh is a triangle mesh...">CS_POLYMESH_TRIANGLEMESH</a>: mesh prefers triangle mesh.</li></ul> <p> Note that if neither <a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ce8e9aae34250cfee0c5bbdeee9c6737b8" title="The object is closed, if set.">CS_POLYMESH_CLOSED</a> nor <a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8cecf23a303139282162f48575477c27770" title="The object is not closed, if set.">CS_POLYMESH_NOTCLOSED</a> are set then the closed state is not known. Setting both is illegal. Note that if neither <a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ce40a5b15272940f6cbc9ca9581f3ed3ce" title="The object is convex, if set.">CS_POLYMESH_CONVEX</a> nor <a class="el" href="group__geom__utils.html#gg83e8bc15645f9d99ab91a152bb3dc8ced3c40a299420fbebed6542e771a7ded4" title="The object is not convex, if set.">CS_POLYMESH_NOTCONVEX</a> are set then the convex state is not known. Setting both is illegal. <p>Implements <a class="el" href="structiPolygonMesh.html#fc5c61c3f0335342dc62959f246ecda8">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00211">211</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="e3650525813e3ec5af133066b0208835"></a><!-- doxytag: member="csPolygonMesh::GetPolygonCount" ref="e3650525813e3ec5af133066b0208835" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int csPolygonMesh::GetPolygonCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the number of polygons for this mesh. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#dfc28fe19255bfb7045b4d8aee62206d">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00197">197</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="7c5d22cb500d9ec2740a4299f434d1f6"></a><!-- doxytag: member="csPolygonMesh::GetPolygonIndices" ref="7c5d22cb500d9ec2740a4299f434d1f6" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int* csPolygonMesh::GetPolygonIndices </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the polygon index table. <p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00156">156</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="4a5295c0d0184088a987f4c8dcf06cc0"></a><!-- doxytag: member="csPolygonMesh::GetPolygons" ref="4a5295c0d0184088a987f4c8dcf06cc0" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structcsMeshedPolygon.html">csMeshedPolygon</a>* csPolygonMesh::GetPolygons </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the pointer to the array of polygons. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#62aaacb45736e574e493c3a6eb192581">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00198">198</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="2aab442821fa410ad72a8ee5aebbab3c"></a><!-- doxytag: member="csPolygonMesh::GetTriangleCount" ref="2aab442821fa410ad72a8ee5aebbab3c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int csPolygonMesh::GetTriangleCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the number of triangles for this mesh. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#5891bad390dae940403747cc9510dd8a">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00199">199</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="892b5ca50be45f4615ff6d37afefc790"></a><!-- doxytag: member="csPolygonMesh::GetTriangles" ref="892b5ca50be45f4615ff6d37afefc790" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structcsTriangle.html">csTriangle</a>* csPolygonMesh::GetTriangles </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the triangle table for this mesh. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#e546e20dc76cac4d92e2286c2c367e46">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00204">204</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="0894b7678120a09f00f7099379d15b00"></a><!-- doxytag: member="csPolygonMesh::GetVertexCount" ref="0894b7678120a09f00f7099379d15b00" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int csPolygonMesh::GetVertexCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the number of vertices for this mesh. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#b9be0881ef3c249e17fa5e7ec562aa18">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00195">195</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="99b286223c069141bcc3848869302017"></a><!-- doxytag: member="csPolygonMesh::GetVertices" ref="99b286223c069141bcc3848869302017" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsVector3.html">csVector3</a>* csPolygonMesh::GetVertices </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the pointer to the array of vertices. <p> <p>Implements <a class="el" href="structiPolygonMesh.html#929a4b77e97ee897bd6fee403aa01b32">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00196">196</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="362fba636662670eac393a9a0a14e1db"></a><!-- doxytag: member="csPolygonMesh::Lock" ref="362fba636662670eac393a9a0a14e1db" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void csPolygonMesh::Lock </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Lock the polygon mesh. <p> This prevents the polygon and triangle data from being cleaned up. <p>Implements <a class="el" href="structiPolygonMesh.html#c56830528370c368f0ba2d182d9ed33a">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00209">209</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="38b033ce87624eb552d758f2732b550f"></a><!-- doxytag: member="csPolygonMesh::SetPolygonCount" ref="38b033ce87624eb552d758f2732b550f" args="(int po_count)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetPolygonCount </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>po_count</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set polygon count. <p> This will make room for the specified number of polygons so that the user can update them. This class will delete the polygons itself later. <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00179">179</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="f987bb067bcee5967f1a35cc08637024"></a><!-- doxytag: member="csPolygonMesh::SetPolygonIndexCount" ref="f987bb067bcee5967f1a35cc08637024" args="(int po_index_count)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetPolygonIndexCount </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>po_index_count</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set polygon index count. <p> This will make room for the specified number of polygon indices so that the user can update them. This class will delete the indices itself later. <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00148">148</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="7dd77f46bd02c053d946acd26a3cbfed"></a><!-- doxytag: member="csPolygonMesh::SetPolygonIndices" ref="7dd77f46bd02c053d946acd26a3cbfed" args="(int *po_indices, bool delete_po_indices)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetPolygonIndices </td> <td>(</td> <td class="paramtype">int * </td> <td class="paramname"> <em>po_indices</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>delete_po_indices</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set polygon indices used by <a class="el" href="classcsPolygonMesh.html#f1fb03ccc2f48f9fe46527fe9570538d" title="Set the polygons to use for this polygon mesh.">SetPolygons()</a>. <p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00136">136</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="f1fb03ccc2f48f9fe46527fe9570538d"></a><!-- doxytag: member="csPolygonMesh::SetPolygons" ref="f1fb03ccc2f48f9fe46527fe9570538d" args="(csMeshedPolygon *po, int po_count, bool delete_po)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetPolygons </td> <td>(</td> <td class="paramtype"><a class="el" href="structcsMeshedPolygon.html">csMeshedPolygon</a> * </td> <td class="paramname"> <em>po</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>po_count</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>delete_po</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the polygons to use for this polygon mesh. <p> If 'delete_po' is true then this class will do the cleanup itself at destruction. Otherwise you have to make sure that the pointer to the polygons remains valid until this object is deleted. <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00125">125</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="43c29853eb6f39a1aeaf2643cad2c972"></a><!-- doxytag: member="csPolygonMesh::SetVertexCount" ref="43c29853eb6f39a1aeaf2643cad2c972" args="(int vt_count)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetVertexCount </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>vt_count</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set vertex count. <p> This will make room for the specified number of vertices so that the user can update them. This class will delete the vertices itself later. <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00166">166</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="7e0f298b9072c9817548c73fef14d449"></a><!-- doxytag: member="csPolygonMesh::SetVertices" ref="7e0f298b9072c9817548c73fef14d449" args="(csVector3 *vt, int vt_count, bool delete_vt)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::SetVertices </td> <td>(</td> <td class="paramtype"><a class="el" href="classcsVector3.html">csVector3</a> * </td> <td class="paramname"> <em>vt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>vt_count</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>delete_vt</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the vertices to use for this polygon mesh. <p> If 'delete_vt' is true then this class will do the cleanup itself at destruction. Otherwise you have to make sure that the pointer to the vertices remains valid until this object is deleted. <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00111">111</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="6305e9e68a9e769207d1dfd0db1b97a1"></a><!-- doxytag: member="csPolygonMesh::ShapeChanged" ref="6305e9e68a9e769207d1dfd0db1b97a1" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csPolygonMesh::ShapeChanged </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Indicate that the shape has changed. <p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00190">190</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <a class="anchor" name="7f23e10a9b65f453b766fda9a2e9cffd"></a><!-- doxytag: member="csPolygonMesh::Unlock" ref="7f23e10a9b65f453b766fda9a2e9cffd" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void csPolygonMesh::Unlock </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Unlock the polygon mesh. <p> This allows clean up again. <p>Implements <a class="el" href="structiPolygonMesh.html#0bc08c30ac522eddc363be6075cdb547">iPolygonMesh</a>.</p> <p>Definition at line <a class="el" href="csgeom_2polymesh_8h-source.html#l00210">210</a> of file <a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.h</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li>csgeom/<a class="el" href="csgeom_2polymesh_8h-source.html">polymesh.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>