Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > by-pkgid > 58828b263d8f56d90ac336dea07a4586 > files > 581

irrlicht-doc-1.6.1-1mdv2010.1.x86_64.rpm

<!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>Irrlicht Engine: irr::scene::IMeshManipulator Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table class="irrlicht" >
  <tr valign="middle"> 
    <td><font size="2"><a class="qindex" href="index.html"><font color="#FFFFFF">Home</font></a> 
      | <a class="qindex" href="namespaces.html"><font color="#FFFFFF">Namespaces</font></a> 
      | <a class="qindex" href="hierarchy.html"><font color="#FFFFFF">Hierarchy</font></a> 
      | <a class="qindex" href="classes.html"><font color="#FFFFFF">Alphabetical 
      List</font></a> | <a class="qindex" href="annotated.html"><font color="#FFFFFF"> 
      Class list</font></a> | <a class="qindex" href="files.html"><font color="#FFFFFF">Files</font></a> 
      | <a class="qindex" href="namespacemembers.html"><font color="#FFFFFF"> 
      Namespace&nbsp;Members</font></a> | <a class="qindex" href="functions.html"><font color="#FFFFFF">Class 
      members</font></a> | <a class="qindex" href="globals.html"><font color="#FFFFFF">File 
      members</font></a> | <a class="qindex" href="pages.html"><font color="#FFFFFF">Tutorials</font></a></font> </td>
  </tr>
</table>
<!-- Generated by Doxygen 1.5.6 -->
  <div class="navpath"><a class="el" href="namespaceirr.html">irr</a>::<a class="el" href="namespaceirr_1_1scene.html">scene</a>::<a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html">IMeshManipulator</a>
  </div>
<div class="contents">
<h1>irr::scene::IMeshManipulator Class Reference</h1><!-- doxytag: class="irr::scene::IMeshManipulator" --><!-- doxytag: inherits="irr::IReferenceCounted" -->An interface for easy manipulation of meshes.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="_i_mesh_manipulator_8h-source.html">IMeshManipulator.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for irr::scene::IMeshManipulator:</div>
<div class="dynsection">

<p><center><img src="classirr_1_1scene_1_1_i_mesh_manipulator.png" usemap="#irr::scene::IMeshManipulator_map" border="0" alt=""></center>
<map name="irr::scene::IMeshManipulator_map">
<area href="classirr_1_1_i_reference_counted.html" alt="irr::IReferenceCounted" shape="rect" coords="0,0,172,24">
</map>
</div>

<p>
<a href="classirr_1_1scene_1_1_i_mesh_manipulator-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">virtual <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html">IAnimatedMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#08c2483575a88f68d099690932c11562">createAnimatedMesh</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, <a class="el" href="namespaceirr_1_1scene.html#2fc85a64604521ca063f1881b5dd1c61">scene::E_ANIMATED_MESH_TYPE</a> type=scene::EAMT_UNKNOWN) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a new AnimatedMesh and adds the mesh to it.  <a href="#08c2483575a88f68d099690932c11562"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_s_mesh.html">SMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#3d2e7401f1d43919834a1bfe0b65e77f">createMeshCopy</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clones a static <a class="el" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">IMesh</a> into a modifiable <a class="el" href="structirr_1_1scene_1_1_s_mesh.html" title="Simple implementation of the IMesh interface.">SMesh</a>.  <a href="#3d2e7401f1d43919834a1bfe0b65e77f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#73051bc082f128a2e0592fb1a3da2b7d">createMeshUniquePrimitives</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a copy of a mesh with all vertices unwelded.  <a href="#73051bc082f128a2e0592fb1a3da2b7d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#c19065037302c0500cb6ebecefcc6c6d">createMeshWelded</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> tolerance=<a class="el" href="namespaceirr_1_1core.html#9514dd34463a30102ef8836915cf9c4c">core::ROUNDING_ERROR_f32</a>) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a copy of a mesh with vertices welded.  <a href="#c19065037302c0500cb6ebecefcc6c6d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#f7feb558fbaad9671667d1332c83bb5d">createMeshWith1TCoords</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a copy of the mesh, which will only consist of S3DVertex vertices.  <a href="#f7feb558fbaad9671667d1332c83bb5d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#bf123f6fece99816be402e1edf70dc13">createMeshWith2TCoords</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a copy of the mesh, which will only consist of S3DVertex2TCoord vertices.  <a href="#bf123f6fece99816be402e1edf70dc13"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#685383722646d593f338cc9b75dfb426">createMeshWithTangents</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, bool recalculateNormals=false, bool smooth=false, bool angleWeighted=false) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a copy of the mesh, which will only consist of S3DVertexTangents vertices.  <a href="#685383722646d593f338cc9b75dfb426"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#7194e8a44bfe3a6444826f346c4104ff">flipSurfaces</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Flips the direction of surfaces.  <a href="#7194e8a44bfe3a6444826f346c4104ff"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#f20519dbaa2c2c346e8ddf7c94babc38">getPolyCount</a> (<a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html">IAnimatedMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get amount of polygons in mesh.  <a href="#f20519dbaa2c2c346e8ddf7c94babc38"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#914c8cbfbde1428dea91b34fe99e716d">getPolyCount</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get amount of polygons in mesh.  <a href="#914c8cbfbde1428dea91b34fe99e716d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#28c9aaddc04baa710138a065457f9df1">makePlanarTextureMapping</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *buffer, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> resolutionS, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> resolutionT, <a class="el" href="namespaceirr.html#646874f69af8ff87fc10201b0254a761">u8</a> axis, const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;offset) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a planar texture mapping on the meshbuffer.  <a href="#28c9aaddc04baa710138a065457f9df1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#757511833420a24ed8cbf4dfd6607143">makePlanarTextureMapping</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *meshbuffer, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> resolution=0.001f) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a planar texture mapping on the meshbuffer.  <a href="#757511833420a24ed8cbf4dfd6607143"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#82a3092d53e84e751bb13dac8dfa2ab4">makePlanarTextureMapping</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> resolution=0.001f) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a planar texture mapping on the mesh.  <a href="#82a3092d53e84e751bb13dac8dfa2ab4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#94d8390182763e608ca43978b8866d11">recalculateNormals</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *buffer, bool smooth=false, bool angleWeighted=false) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Recalculates all normals of the mesh buffer.  <a href="#94d8390182763e608ca43978b8866d11"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#8dba16b7eedeac07761c9c1247944429">recalculateNormals</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, bool smooth=false, bool angleWeighted=false) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Recalculates all normals of the mesh.  <a href="#8dba16b7eedeac07761c9c1247944429"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#55fb141fc7369f1af035b1acf1e43702">scale</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *buffer, const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;factor) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scales the actual meshbuffer, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node.  <a href="#55fb141fc7369f1af035b1acf1e43702"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#df57899db5c85427c166b6b966b6f8ee">scale</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;factor) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scales the actual mesh, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node.  <a href="#df57899db5c85427c166b6b966b6f8ee"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#6a745e87dd68894729095f211328b12b">scaleMesh</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;factor) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scales the actual mesh, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node.  <a href="#6a745e87dd68894729095f211328b12b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#89f0fed87e2e1cb3ede98bf08b526da2">scaleTCoords</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *buffer, const <a class="el" href="classirr_1_1core_1_1vector2d.html">core::vector2df</a> &amp;factor, <a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a> level=1) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scale the texture coords of a meshbuffer.  <a href="#89f0fed87e2e1cb3ede98bf08b526da2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#29724c722747f5dd6bbe0aac0e60fb89">scaleTCoords</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">scene::IMesh</a> *mesh, const <a class="el" href="classirr_1_1core_1_1vector2d.html">core::vector2df</a> &amp;factor, <a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a> level=1) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scale the texture coords of a mesh.  <a href="#29724c722747f5dd6bbe0aac0e60fb89"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#db986e8b00e754819f80bf06b99c614a">setVertexColorAlpha</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a> alpha) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the alpha vertex color value of the whole mesh to a new value.  <a href="#db986e8b00e754819f80bf06b99c614a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#ee23bf276a59533c4d9676b96785b68c">setVertexColors</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, <a class="el" href="classirr_1_1video_1_1_s_color.html">video::SColor</a> color) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the colors of all vertices to one color.  <a href="#ee23bf276a59533c4d9676b96785b68c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#f91a004c58977cb54da93d877eee3d2a">transform</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *buffer, const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;m) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Applies a transformation to a meshbuffer.  <a href="#f91a004c58977cb54da93d877eee3d2a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#b48aa1640807991a79accac6849d120b">transform</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;m) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Applies a transformation to a mesh.  <a href="#b48aa1640807991a79accac6849d120b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#94e51ee7f96bcae0dc87846d559e5418">transformMesh</a> (<a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *mesh, const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;m) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Applies a transformation to a mesh.  <a href="#94e51ee7f96bcae0dc87846d559e5418"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
An interface for easy manipulation of meshes. 
<p>
Scale, set alpha value, flip surfaces, and so on. This exists for fixing problems with wrong imported or exported meshes quickly after loading. It is not intended for doing mesh modifications and/or animations during runtime. 
<p>Definition at line <a class="el" href="_i_mesh_manipulator_8h-source.html#l00030">30</a> of file <a class="el" href="_i_mesh_manipulator_8h-source.html">IMeshManipulator.h</a>.</p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="08c2483575a88f68d099690932c11562"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createAnimatedMesh" ref="08c2483575a88f68d099690932c11562" args="(IMesh *mesh, scene::E_ANIMATED_MESH_TYPE type=scene::EAMT_UNKNOWN) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html">IAnimatedMesh</a>* irr::scene::IMeshManipulator::createAnimatedMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr_1_1scene.html#2fc85a64604521ca063f1881b5dd1c61">scene::E_ANIMATED_MESH_TYPE</a>&nbsp;</td>
          <td class="paramname"> <em>type</em> = <code>scene::EAMT_UNKNOWN</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create a new AnimatedMesh and adds the mesh to it. 
<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>&nbsp;</td><td>Input mesh </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>The type of the animated mesh to create. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Newly created animated mesh with mesh as its only content. When you don't need the animated mesh anymore, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IAnimatedMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="3d2e7401f1d43919834a1bfe0b65e77f"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshCopy" ref="3d2e7401f1d43919834a1bfe0b65e77f" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_s_mesh.html">SMesh</a>* irr::scene::IMeshManipulator::createMeshCopy           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Clones a static <a class="el" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">IMesh</a> into a modifiable <a class="el" href="structirr_1_1scene_1_1_s_mesh.html" title="Simple implementation of the IMesh interface.">SMesh</a>. 
<p>
All meshbuffers in the returned <a class="el" href="structirr_1_1scene_1_1_s_mesh.html" title="Simple implementation of the IMesh interface.">SMesh</a> are of type SMeshBuffer or SMeshBufferLightMap. <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>&nbsp;</td><td>Mesh to copy. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Cloned mesh. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">SMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="73051bc082f128a2e0592fb1a3da2b7d"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshUniquePrimitives" ref="73051bc082f128a2e0592fb1a3da2b7d" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IMeshManipulator::createMeshUniquePrimitives           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a copy of a mesh with all vertices unwelded. 
<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>&nbsp;</td><td>Input mesh </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Mesh consisting only of unique faces. All vertices which were previously shared are now duplicated. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="c19065037302c0500cb6ebecefcc6c6d"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshWelded" ref="c19065037302c0500cb6ebecefcc6c6d" args="(IMesh *mesh, f32 tolerance=core::ROUNDING_ERROR_f32) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IMeshManipulator::createMeshWelded           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>tolerance</em> = <code><a class="el" href="namespaceirr_1_1core.html#9514dd34463a30102ef8836915cf9c4c">core::ROUNDING_ERROR_f32</a></code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a copy of a mesh with vertices welded. 
<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>&nbsp;</td><td>Input mesh </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>tolerance</em>&nbsp;</td><td>The threshold for vertex comparisons. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Mesh without redundant vertices. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="f7feb558fbaad9671667d1332c83bb5d"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshWith1TCoords" ref="f7feb558fbaad9671667d1332c83bb5d" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IMeshManipulator::createMeshWith1TCoords           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a copy of the mesh, which will only consist of S3DVertex vertices. 
<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>&nbsp;</td><td>Input mesh </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Mesh consisting only of S3DVertex vertices. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="bf123f6fece99816be402e1edf70dc13"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshWith2TCoords" ref="bf123f6fece99816be402e1edf70dc13" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IMeshManipulator::createMeshWith2TCoords           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a copy of the mesh, which will only consist of S3DVertex2TCoord vertices. 
<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>&nbsp;</td><td>Input mesh </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Mesh consisting only of S3DVertex2TCoord vertices. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="685383722646d593f338cc9b75dfb426"></a><!-- doxytag: member="irr::scene::IMeshManipulator::createMeshWithTangents" ref="685383722646d593f338cc9b75dfb426" args="(IMesh *mesh, bool recalculateNormals=false, bool smooth=false, bool angleWeighted=false) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IMeshManipulator::createMeshWithTangents           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>recalculateNormals</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>smooth</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>angleWeighted</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a copy of the mesh, which will only consist of S3DVertexTangents vertices. 
<p>
This is useful if you want to draw tangent space normal mapped geometry because it calculates the tangent and binormal data which is needed there. <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>&nbsp;</td><td>Input mesh </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>recalculateNormals</em>&nbsp;</td><td>The normals are recalculated if set, otherwise the original ones are kept. Note that keeping the normals may introduce inaccurate tangents if the normals are very different to those calculated from the faces. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>smooth</em>&nbsp;</td><td>The normals/tangents are smoothed across the meshbuffer's faces if this flag is set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>angleWeighted</em>&nbsp;</td><td>Improved smoothing calculation used </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Mesh consisting only of S3DVertexTangents vertices. If you no longer need the cloned mesh, you should call <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IMesh::drop()</a>. See <a class="el" href="classirr_1_1_i_reference_counted.html#fb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">IReferenceCounted::drop()</a> for more information. </dd></dl>

</div>
</div><p>
<a class="anchor" name="7194e8a44bfe3a6444826f346c4104ff"></a><!-- doxytag: member="irr::scene::IMeshManipulator::flipSurfaces" ref="7194e8a44bfe3a6444826f346c4104ff" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::flipSurfaces           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Flips the direction of surfaces. 
<p>
Changes backfacing triangles to frontfacing triangles and vice versa. <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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="f20519dbaa2c2c346e8ddf7c94babc38"></a><!-- doxytag: member="irr::scene::IMeshManipulator::getPolyCount" ref="f20519dbaa2c2c346e8ddf7c94babc38" args="(IAnimatedMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a> irr::scene::IMeshManipulator::getPolyCount           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html">IAnimatedMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get amount of polygons in 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>&nbsp;</td><td>Input mesh </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Number of polygons in mesh. </dd></dl>

</div>
</div><p>
<a class="anchor" name="914c8cbfbde1428dea91b34fe99e716d"></a><!-- doxytag: member="irr::scene::IMeshManipulator::getPolyCount" ref="914c8cbfbde1428dea91b34fe99e716d" args="(IMesh *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a> irr::scene::IMeshManipulator::getPolyCount           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get amount of polygons in 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>&nbsp;</td><td>Input mesh </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Number of polygons in mesh. </dd></dl>

</div>
</div><p>
<a class="anchor" name="28c9aaddc04baa710138a065457f9df1"></a><!-- doxytag: member="irr::scene::IMeshManipulator::makePlanarTextureMapping" ref="28c9aaddc04baa710138a065457f9df1" args="(scene::IMeshBuffer *buffer, f32 resolutionS, f32 resolutionT, u8 axis, const core::vector3df &amp;offset) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::makePlanarTextureMapping           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>resolutionS</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>resolutionT</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#646874f69af8ff87fc10201b0254a761">u8</a>&nbsp;</td>
          <td class="paramname"> <em>axis</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>offset</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a planar texture mapping on the meshbuffer. 
<p>
This method is currently implemented towards the LWO planar mapping. A more general biasing might be required. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>Buffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>resolutionS</em>&nbsp;</td><td>Resolution of the planar mapping in horizontal direction. This is the ratio between object space and texture space. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>resolutionT</em>&nbsp;</td><td>Resolution of the planar mapping in vertical direction. This is the ratio between object space and texture space. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>axis</em>&nbsp;</td><td>The axis along which the texture is projected. The allowed values are 0 (X), 1(Y), and 2(Z). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>offset</em>&nbsp;</td><td>Vector added to the vertex positions (in object coordinates). </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="757511833420a24ed8cbf4dfd6607143"></a><!-- doxytag: member="irr::scene::IMeshManipulator::makePlanarTextureMapping" ref="757511833420a24ed8cbf4dfd6607143" args="(scene::IMeshBuffer *meshbuffer, f32 resolution=0.001f) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::makePlanarTextureMapping           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>meshbuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>resolution</em> = <code>0.001f</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a planar texture mapping on the meshbuffer. 
<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>meshbuffer,:</em>&nbsp;</td><td>Buffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>resolution,:</em>&nbsp;</td><td>resolution of the planar mapping. This is the value specifying which is the relation between world space and texture coordinate space. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="82a3092d53e84e751bb13dac8dfa2ab4"></a><!-- doxytag: member="irr::scene::IMeshManipulator::makePlanarTextureMapping" ref="82a3092d53e84e751bb13dac8dfa2ab4" args="(IMesh *mesh, f32 resolution=0.001f) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::makePlanarTextureMapping           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>resolution</em> = <code>0.001f</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates a planar texture mapping on the 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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>resolution,:</em>&nbsp;</td><td>resolution of the planar mapping. This is the value specifying which is the relation between world space and texture coordinate space. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="94d8390182763e608ca43978b8866d11"></a><!-- doxytag: member="irr::scene::IMeshManipulator::recalculateNormals" ref="94d8390182763e608ca43978b8866d11" args="(IMeshBuffer *buffer, bool smooth=false, bool angleWeighted=false) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::recalculateNormals           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>smooth</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>angleWeighted</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Recalculates all normals of the mesh buffer. 
<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>buffer,:</em>&nbsp;</td><td>Mesh buffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>smooth,:</em>&nbsp;</td><td>If the normals shall be smoothed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>angleWeighted,:</em>&nbsp;</td><td>If the normals shall be smoothed in relation to their angles. More expensive, but also higher precision. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="8dba16b7eedeac07761c9c1247944429"></a><!-- doxytag: member="irr::scene::IMeshManipulator::recalculateNormals" ref="8dba16b7eedeac07761c9c1247944429" args="(IMesh *mesh, bool smooth=false, bool angleWeighted=false) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::recalculateNormals           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>smooth</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>angleWeighted</em> = <code>false</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Recalculates all normals of the 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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>smooth,:</em>&nbsp;</td><td>If the normals shall be smoothed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>angleWeighted,:</em>&nbsp;</td><td>If the normals shall be smoothed in relation to their angles. More expensive, but also higher precision. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="55fb141fc7369f1af035b1acf1e43702"></a><!-- doxytag: member="irr::scene::IMeshManipulator::scale" ref="55fb141fc7369f1af035b1acf1e43702" args="(IMeshBuffer *buffer, const core::vector3df &amp;factor) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::scale           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>factor</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scales the actual meshbuffer, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node. 
<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>buffer</em>&nbsp;</td><td>Meshbuffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>factor</em>&nbsp;</td><td>Scale factor for each axis. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="df57899db5c85427c166b6b966b6f8ee"></a><!-- doxytag: member="irr::scene::IMeshManipulator::scale" ref="df57899db5c85427c166b6b966b6f8ee" args="(IMesh *mesh, const core::vector3df &amp;factor) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::scale           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>factor</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scales the actual mesh, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node. 
<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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>factor</em>&nbsp;</td><td>Scale factor for each axis. </td></tr>
  </table>
</dl>

<p>Referenced by <a class="el" href="_i_mesh_manipulator_8h-source.html#l00076">scaleMesh()</a>.</p>

</div>
</div><p>
<a class="anchor" name="6a745e87dd68894729095f211328b12b"></a><!-- doxytag: member="irr::scene::IMeshManipulator::scaleMesh" ref="6a745e87dd68894729095f211328b12b" args="(IMesh *mesh, const core::vector3df &amp;factor) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::scaleMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>factor</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scales the actual mesh, not a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node. 
<p>
<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>Use <a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#df57899db5c85427c166b6b966b6f8ee" title="Scales the actual mesh, not a scene node.">scale()</a> instead </dd></dl>
<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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>factor</em>&nbsp;</td><td>Scale factor for each axis. </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="_i_mesh_manipulator_8h-source.html#l00076">76</a> of file <a class="el" href="_i_mesh_manipulator_8h-source.html">IMeshManipulator.h</a>.</p>

<p>References <a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#df57899db5c85427c166b6b966b6f8ee">scale()</a>.</p>

</div>
</div><p>
<a class="anchor" name="89f0fed87e2e1cb3ede98bf08b526da2"></a><!-- doxytag: member="irr::scene::IMeshManipulator::scaleTCoords" ref="89f0fed87e2e1cb3ede98bf08b526da2" args="(scene::IMeshBuffer *buffer, const core::vector2df &amp;factor, u32 level=1) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::scaleTCoords           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">scene::IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector2d.html">core::vector2df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>factor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a>&nbsp;</td>
          <td class="paramname"> <em>level</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scale the texture coords of a meshbuffer. 
<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>buffer</em>&nbsp;</td><td>Meshbuffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>factor</em>&nbsp;</td><td>Vector which defines the scale for each axis. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>level</em>&nbsp;</td><td>Number of texture coord, starting from 1. Support for level 2 exists for LightMap buffers. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="29724c722747f5dd6bbe0aac0e60fb89"></a><!-- doxytag: member="irr::scene::IMeshManipulator::scaleTCoords" ref="29724c722747f5dd6bbe0aac0e60fb89" args="(scene::IMesh *mesh, const core::vector2df &amp;factor, u32 level=1) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::scaleTCoords           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">scene::IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector2d.html">core::vector2df</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>factor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a>&nbsp;</td>
          <td class="paramname"> <em>level</em> = <code>1</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Scale the texture coords of a 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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>factor</em>&nbsp;</td><td>Vector which defines the scale for each axis. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>level</em>&nbsp;</td><td>Number of texture coord, starting from 1. Support for level 2 exists for LightMap buffers. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="db986e8b00e754819f80bf06b99c614a"></a><!-- doxytag: member="irr::scene::IMeshManipulator::setVertexColorAlpha" ref="db986e8b00e754819f80bf06b99c614a" args="(IMesh *mesh, s32 alpha) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::setVertexColorAlpha           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a>&nbsp;</td>
          <td class="paramname"> <em>alpha</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets the alpha vertex color value of the whole mesh to a new value. 
<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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>alpha</em>&nbsp;</td><td>New alpha value. Must be a value between 0 and 255. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="ee23bf276a59533c4d9676b96785b68c"></a><!-- doxytag: member="irr::scene::IMeshManipulator::setVertexColors" ref="ee23bf276a59533c4d9676b96785b68c" args="(IMesh *mesh, video::SColor color) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::setVertexColors           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classirr_1_1video_1_1_s_color.html">video::SColor</a>&nbsp;</td>
          <td class="paramname"> <em>color</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Sets the colors of all vertices to one color. 
<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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>color</em>&nbsp;</td><td>New color. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="f91a004c58977cb54da93d877eee3d2a"></a><!-- doxytag: member="irr::scene::IMeshManipulator::transform" ref="f91a004c58977cb54da93d877eee3d2a" args="(IMeshBuffer *buffer, const core::matrix4 &amp;m) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::transform           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh_buffer.html">IMeshBuffer</a> *&nbsp;</td>
          <td class="paramname"> <em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Applies a transformation to a meshbuffer. 
<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>buffer</em>&nbsp;</td><td>Meshbuffer on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>transformation matrix. </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="b48aa1640807991a79accac6849d120b"></a><!-- doxytag: member="irr::scene::IMeshManipulator::transform" ref="b48aa1640807991a79accac6849d120b" args="(IMesh *mesh, const core::matrix4 &amp;m) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::transform           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Applies a transformation to a 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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>transformation matrix. </td></tr>
  </table>
</dl>

<p>Referenced by <a class="el" href="_i_mesh_manipulator_8h-source.html#l00104">transformMesh()</a>.</p>

</div>
</div><p>
<a class="anchor" name="94e51ee7f96bcae0dc87846d559e5418"></a><!-- doxytag: member="irr::scene::IMeshManipulator::transformMesh" ref="94e51ee7f96bcae0dc87846d559e5418" args="(IMesh *mesh, const core::matrix4 &amp;m) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IMeshManipulator::transformMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::matrix4</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Applies a transformation to a mesh. 
<p>
<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000003">Deprecated:</a></b></dt><dd>Use <a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#b48aa1640807991a79accac6849d120b" title="Applies a transformation to a mesh.">transform()</a> instead </dd></dl>
<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>&nbsp;</td><td>Mesh on which the operation is performed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>transformation matrix. </td></tr>
  </table>
</dl>

<p>Definition at line <a class="el" href="_i_mesh_manipulator_8h-source.html#l00104">104</a> of file <a class="el" href="_i_mesh_manipulator_8h-source.html">IMeshManipulator.h</a>.</p>

<p>References <a class="el" href="classirr_1_1scene_1_1_i_mesh_manipulator.html#b48aa1640807991a79accac6849d120b">transform()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_i_mesh_manipulator_8h-source.html">IMeshManipulator.h</a></ul>
</div>
<hr size="1">
<address style="align: right;">
<small> </small>
</address>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
  <tr> 
    <td width="0"> <div align="left"><small><a href="http://irrlicht.sourceforge.net" target="_blank"><img src="irrlicht.png" alt="The Irrlicht Engine" align="middle" border=0 width=88 height=31></a></small></div></td>
    <td> <div align="left"><small><em><font size="2">The <a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht 
        Engine</a> Documentation &copy; 2003-2009 by Nikolaus Gebhardt. Generated 
        on Sun Jan 10 09:24:13 2010 by <a href="http://www.doxygen.org" target="_blank">Doxygen</a> 
        (1.5.6)</font></em></small></div></td>
  </tr>
</table>
<address style="align: right;">
</address>
</body>
</html>