Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > aa937981cccb78f06312e3cc380fe202 > files > 1020

OpenSceneGraph-devel-2.8.3-3.fc14.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>OpenSceneGraph: osgAnimation::MorphGeometry Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath">
    <ul>
      <li><a class="el" href="a01629.html">osgAnimation</a>      </li>
      <li><a class="el" href="a00478.html">osgAnimation::MorphGeometry</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<h1>osgAnimation::MorphGeometry Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="osgAnimation::MorphGeometry" --><!-- doxytag: inherits="osg::Geometry" --><div class="dynheader">
Inheritance diagram for osgAnimation::MorphGeometry:</div>
<div class="dyncontent">
<div class="center"><img src="a02479.png" border="0" usemap="#osgAnimation_1_1MorphGeometry_inherit__map" alt="Inheritance graph"/></div>
<map name="osgAnimation_1_1MorphGeometry_inherit__map" id="osgAnimation_1_1MorphGeometry_inherit__map">
<area shape="rect" id="node2" href="a00313.html" title="osg::Geometry" alt="" coords="53,237,160,267"/><area shape="rect" id="node4" href="a00216.html" title="Pure virtual base class for drawable geometry." alt="" coords="53,160,160,189"/><area shape="rect" id="node6" href="a00500.html" title="Base class/standard interface for objects which require IO support, cloning and reference counting..." alt="" coords="63,83,151,112"/><area shape="rect" id="node8" href="a00627.html" title="Base class from providing referencing counted objects." alt="" coords="48,5,165,35"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="a02480.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00479.html">MorphTarget</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01048.html">UpdateVertex</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a> { <a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1a6b61188499887777d389d4910f18b164">NORMALIZED</a>, 
<a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1a40f7403bd6e4d6085e9e1b94c9cdce69">RELATIVE</a>
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef std::vector&lt; <a class="el" href="a00479.html">MorphTarget</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a704103c3365a1dda61e44db76655ce89">MorphGeometry</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a2c8832f4e21b703b268b46cc5f046349">MorphGeometry</a> (const <a class="el" href="a00313.html">osg::Geometry</a> &amp;b)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a23834f53fb61ba675b911ef5ff13358b">MorphGeometry</a> (const <a class="el" href="a00478.html">MorphGeometry</a> &amp;b, const <a class="el" href="a00169.html">osg::CopyOp</a> &amp;copyop=osg::CopyOp::SHALLOW_COPY)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00500.html">osg::Object</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a578a94f9f006266fa954249b9aa08d1b">cloneType</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clone the type of an object, with Object* return type.  <a href="#a578a94f9f006266fa954249b9aa08d1b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="a00500.html">osg::Object</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a45d0b3ebb909eaf1cc537d8c30b77908">clone</a> (const <a class="el" href="a00169.html">osg::CopyOp</a> &amp;copyop) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clone an object, with Object* return type.  <a href="#a45d0b3ebb909eaf1cc537d8c30b77908"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ab51ae6955faebbb23924bcb5fbb065d1">isSameKindAs</a> (const <a class="el" href="a00500.html">osg::Object</a> *obj) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a43dc97fb6fcf9dd18c881ed7eef80c2c">libraryName</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the name of the object's library.  <a href="#a43dc97fb6fcf9dd18c881ed7eef80c2c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a313e288dd21e521c6c7fe59b622b6727">className</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the name of the object's class type.  <a href="#a313e288dd21e521c6c7fe59b622b6727"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ac2d1b296bb0c7b67e9704bae03628157">transformSoftwareMethod</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a3c81c4906600940957050574ec04e311">setMethod</a> (<a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a> method)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the morphing method.  <a href="#a3c81c4906600940957050574ec04e311"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ae09e6ed93002ea3afc181c9526217175">getMethod</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the morphing method.  <a href="#ae09e6ed93002ea3afc181c9526217175"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a70e531fedf8362d4d40b952a26032b00">setMorphNormals</a> (bool morphNormals)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set flag for morphing normals.  <a href="#a70e531fedf8362d4d40b952a26032b00"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a4ea76ac7afb85a0af33d736608288a2d">getMorphNormals</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the flag for morphing normals.  <a href="#a4ea76ac7afb85a0af33d736608288a2d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ac8f77c8979c96deb36e6394c11eae6fd">addMorphTarget</a> (<a class="el" href="a00313.html">osg::Geometry</a> *morphTarget, float weight=1.0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a <code><a class="el" href="a00479.html">MorphTarget</a></code> to the <code><a class="el" href="a00478.html">MorphGeometry</a></code>.  <a href="#ac8f77c8979c96deb36e6394c11eae6fd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#aac2d3e047ed09da6a49121839302b597">setWeight</a> (unsigned int index, float morphWeight)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#aadf20bcc55a66865332c8cb9a188d38e">dirty</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the <a class="el" href="a00478.html">MorphGeometry</a> dirty.  <a href="#aadf20bcc55a66865332c8cb9a188d38e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a1139a364818a1481c73a2b10c40186a7">getMorphTargetList</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the list of MorphTargets.  <a href="#a1139a364818a1481c73a2b10c40186a7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a3b6f10ebf8002a33b3aacc80861a00a1">getMorphTargetList</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the list of MorphTargets.  <a href="#a3b6f10ebf8002a33b3aacc80861a00a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="a00479.html">MorphTarget</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ad2cd86dad4a0f7f0bb5f0ebfe5eff039">getMorphTarget</a> (unsigned int i) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the <code><a class="el" href="a00479.html">MorphTarget</a></code> at position <code>i</code>.  <a href="#ad2cd86dad4a0f7f0bb5f0ebfe5eff039"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00479.html">MorphTarget</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a1471b9f5421f2c52bb560d303ff9a17a">getMorphTarget</a> (unsigned int i)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the <code><a class="el" href="a00479.html">MorphTarget</a></code> at position <code>i</code>.  <a href="#a1471b9f5421f2c52bb560d303ff9a17a"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a4c6e1467b566127bafc728d241415014">_dirty</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do we need to recalculate the morphed geometry?  <a href="#a4c6e1467b566127bafc728d241415014"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#aac2489065a6b50b8f16741710c056fc9">_method</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a93a43958cb6a6f3c538b9d76b948bcf0">_morphTargets</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="a01069.html">osg::Vec3</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#a247a47217cabb530b4fd7e816ea43bd3">_positionSource</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="a01069.html">osg::Vec3</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#aa209eed58be09e8a4978cf44df547394">_normalSource</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00478.html#ad95e3a41949a58d3b1608ab5ed49a53f">_morphNormals</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Do we also morph between normals?  <a href="#ad95e3a41949a58d3b1608ab5ed49a53f"></a><br/></td></tr>
</table>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a3f1528307fdeef29bf3d37077bb38b84"></a><!-- doxytag: member="osgAnimation::MorphGeometry::MorphTargetList" ref="a3f1528307fdeef29bf3d37077bb38b84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::vector&lt;<a class="el" href="a00479.html">MorphTarget</a>&gt; <a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">osgAnimation::MorphGeometry::MorphTargetList</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a1f903a60e50a1ccdba2695b02e37d8e1"></a><!-- doxytag: member="osgAnimation::MorphGeometry::Method" ref="a1f903a60e50a1ccdba2695b02e37d8e1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">osgAnimation::MorphGeometry::Method</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a1f903a60e50a1ccdba2695b02e37d8e1a6b61188499887777d389d4910f18b164"></a><!-- doxytag: member="NORMALIZED" ref="a1f903a60e50a1ccdba2695b02e37d8e1a6b61188499887777d389d4910f18b164" args="" -->NORMALIZED</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a1f903a60e50a1ccdba2695b02e37d8e1a40f7403bd6e4d6085e9e1b94c9cdce69"></a><!-- doxytag: member="RELATIVE" ref="a1f903a60e50a1ccdba2695b02e37d8e1a40f7403bd6e4d6085e9e1b94c9cdce69" args="" -->RELATIVE</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a704103c3365a1dda61e44db76655ce89"></a><!-- doxytag: member="osgAnimation::MorphGeometry::MorphGeometry" ref="a704103c3365a1dda61e44db76655ce89" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">osgAnimation::MorphGeometry::MorphGeometry </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a2c8832f4e21b703b268b46cc5f046349"></a><!-- doxytag: member="osgAnimation::MorphGeometry::MorphGeometry" ref="a2c8832f4e21b703b268b46cc5f046349" args="(const osg::Geometry &amp;b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">osgAnimation::MorphGeometry::MorphGeometry </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00313.html">osg::Geometry</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a23834f53fb61ba675b911ef5ff13358b"></a><!-- doxytag: member="osgAnimation::MorphGeometry::MorphGeometry" ref="a23834f53fb61ba675b911ef5ff13358b" args="(const MorphGeometry &amp;b, const osg::CopyOp &amp;copyop=osg::CopyOp::SHALLOW_COPY)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">osgAnimation::MorphGeometry::MorphGeometry </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00478.html">MorphGeometry</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>b</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="a00169.html">osg::CopyOp</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>copyop</em> = <code>osg::CopyOp::SHALLOW_COPY</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ac8f77c8979c96deb36e6394c11eae6fd"></a><!-- doxytag: member="osgAnimation::MorphGeometry::addMorphTarget" ref="ac8f77c8979c96deb36e6394c11eae6fd" args="(osg::Geometry *morphTarget, float weight=1.0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgAnimation::MorphGeometry::addMorphTarget </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00313.html">osg::Geometry</a> *&nbsp;</td>
          <td class="paramname"> <em>morphTarget</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>weight</em> = <code>1.0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Add a <code><a class="el" href="a00479.html">MorphTarget</a></code> to the <code><a class="el" href="a00478.html">MorphGeometry</a></code>. </p>
<p>If <code><a class="el" href="a00479.html">MorphTarget</a></code> is not <code>NULL</code> and is not contained in the <code><a class="el" href="a00478.html">MorphGeometry</a></code> then increment its reference count, add it to the MorphTargets list and dirty the bounding sphere to force it to be recomputed on the next call to <code><a class="el" href="a00216.html#a9676dc14a029baf3b5ce35bdcbcb1343" title="Get BoundingBox of Drawable.">getBound()</a></code>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>morphTarget</em>&nbsp;</td><td>The <code><a class="el" href="a00479.html">MorphTarget</a></code> to be added to the <code><a class="el" href="a00478.html">MorphGeometry</a></code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>weight</em>&nbsp;</td><td>The weight to be added to the <code><a class="el" href="a00478.html">MorphGeometry</a></code>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd><code>true</code> for success; <code>false</code> otherwise. </dd></dl>

</div>
</div>
<a class="anchor" id="a313e288dd21e521c6c7fe59b622b6727"></a><!-- doxytag: member="osgAnimation::MorphGeometry::className" ref="a313e288dd21e521c6c7fe59b622b6727" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* osgAnimation::MorphGeometry::className </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return the name of the object's class type. </p>
<p>Must be defined by derived classes. </p>

<p>Reimplemented from <a class="el" href="a00313.html#ad6d587aa9c9c1938b7887184b2045f1b">osg::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a45d0b3ebb909eaf1cc537d8c30b77908"></a><!-- doxytag: member="osgAnimation::MorphGeometry::clone" ref="a45d0b3ebb909eaf1cc537d8c30b77908" args="(const osg::CopyOp &amp;copyop) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00500.html">osg::Object</a>* osgAnimation::MorphGeometry::clone </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00169.html">osg::CopyOp</a> &amp;&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clone an object, with Object* return type. </p>
<p>Must be defined by derived classes. </p>

<p>Reimplemented from <a class="el" href="a00313.html#a15533376a0b90a28c9f37f2a658a7309">osg::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a578a94f9f006266fa954249b9aa08d1b"></a><!-- doxytag: member="osgAnimation::MorphGeometry::cloneType" ref="a578a94f9f006266fa954249b9aa08d1b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00500.html">osg::Object</a>* osgAnimation::MorphGeometry::cloneType </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Clone the type of an object, with Object* return type. </p>
<p>Must be defined by derived classes. </p>

<p>Reimplemented from <a class="el" href="a00313.html#ab9125a20f90569bf9742b38c145e1792">osg::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="aadf20bcc55a66865332c8cb9a188d38e"></a><!-- doxytag: member="osgAnimation::MorphGeometry::dirty" ref="aadf20bcc55a66865332c8cb9a188d38e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgAnimation::MorphGeometry::dirty </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the <a class="el" href="a00478.html">MorphGeometry</a> dirty. </p>

</div>
</div>
<a class="anchor" id="ae09e6ed93002ea3afc181c9526217175"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMethod" ref="ae09e6ed93002ea3afc181c9526217175" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a> osgAnimation::MorphGeometry::getMethod </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the morphing method. </p>

</div>
</div>
<a class="anchor" id="a4ea76ac7afb85a0af33d736608288a2d"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMorphNormals" ref="a4ea76ac7afb85a0af33d736608288a2d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool osgAnimation::MorphGeometry::getMorphNormals </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the flag for morphing normals. </p>

</div>
</div>
<a class="anchor" id="ad2cd86dad4a0f7f0bb5f0ebfe5eff039"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMorphTarget" ref="ad2cd86dad4a0f7f0bb5f0ebfe5eff039" args="(unsigned int i) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00479.html">MorphTarget</a>&amp; osgAnimation::MorphGeometry::getMorphTarget </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>i</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the <code><a class="el" href="a00479.html">MorphTarget</a></code> at position <code>i</code>. </p>

</div>
</div>
<a class="anchor" id="a1471b9f5421f2c52bb560d303ff9a17a"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMorphTarget" ref="a1471b9f5421f2c52bb560d303ff9a17a" args="(unsigned int i)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00479.html">MorphTarget</a>&amp; osgAnimation::MorphGeometry::getMorphTarget </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>i</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return the <code><a class="el" href="a00479.html">MorphTarget</a></code> at position <code>i</code>. </p>

</div>
</div>
<a class="anchor" id="a3b6f10ebf8002a33b3aacc80861a00a1"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMorphTargetList" ref="a3b6f10ebf8002a33b3aacc80861a00a1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a>&amp; osgAnimation::MorphGeometry::getMorphTargetList </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of MorphTargets. </p>
<p>Warning if you modify this array you will have to call <a class="el" href="a00478.html#aadf20bcc55a66865332c8cb9a188d38e" title="Set the MorphGeometry dirty.">dirty()</a> </p>

</div>
</div>
<a class="anchor" id="a1139a364818a1481c73a2b10c40186a7"></a><!-- doxytag: member="osgAnimation::MorphGeometry::getMorphTargetList" ref="a1139a364818a1481c73a2b10c40186a7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a>&amp; osgAnimation::MorphGeometry::getMorphTargetList </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the list of MorphTargets. </p>

</div>
</div>
<a class="anchor" id="ab51ae6955faebbb23924bcb5fbb065d1"></a><!-- doxytag: member="osgAnimation::MorphGeometry::isSameKindAs" ref="ab51ae6955faebbb23924bcb5fbb065d1" args="(const osg::Object *obj) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool osgAnimation::MorphGeometry::isSameKindAs </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="a00500.html">osg::Object</a> *&nbsp;</td>
          <td class="paramname"> <em>obj</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reimplemented from <a class="el" href="a00313.html#ac96efaff5311c47aa82bc6deabb18121">osg::Geometry</a>.</p>

<p>References <a class="el" href="a01157.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>.</p>

</div>
</div>
<a class="anchor" id="a43dc97fb6fcf9dd18c881ed7eef80c2c"></a><!-- doxytag: member="osgAnimation::MorphGeometry::libraryName" ref="a43dc97fb6fcf9dd18c881ed7eef80c2c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* osgAnimation::MorphGeometry::libraryName </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return the name of the object's library. </p>
<p>Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. </p>

<p>Reimplemented from <a class="el" href="a00313.html#ab4f0b90803d0c794399ac7df8c3b796e">osg::Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a3c81c4906600940957050574ec04e311"></a><!-- doxytag: member="osgAnimation::MorphGeometry::setMethod" ref="a3c81c4906600940957050574ec04e311" args="(Method method)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgAnimation::MorphGeometry::setMethod </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a>&nbsp;</td>
          <td class="paramname"> <em>method</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set the morphing method. </p>

</div>
</div>
<a class="anchor" id="a70e531fedf8362d4d40b952a26032b00"></a><!-- doxytag: member="osgAnimation::MorphGeometry::setMorphNormals" ref="a70e531fedf8362d4d40b952a26032b00" args="(bool morphNormals)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgAnimation::MorphGeometry::setMorphNormals </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>morphNormals</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set flag for morphing normals. </p>

</div>
</div>
<a class="anchor" id="aac2d3e047ed09da6a49121839302b597"></a><!-- doxytag: member="osgAnimation::MorphGeometry::setWeight" ref="aac2d3e047ed09da6a49121839302b597" args="(unsigned int index, float morphWeight)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void osgAnimation::MorphGeometry::setWeight </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>morphWeight</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ac2d1b296bb0c7b67e9704bae03628157"></a><!-- doxytag: member="osgAnimation::MorphGeometry::transformSoftwareMethod" ref="ac2d1b296bb0c7b67e9704bae03628157" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void osgAnimation::MorphGeometry::transformSoftwareMethod </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Referenced by <a class="el" href="a01048.html#a851f7fb75e03d5510523702d4e6c1382">osgAnimation::MorphGeometry::UpdateVertex::update()</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a4c6e1467b566127bafc728d241415014"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_dirty" ref="a4c6e1467b566127bafc728d241415014" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00478.html#a4c6e1467b566127bafc728d241415014">osgAnimation::MorphGeometry::_dirty</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Do we need to recalculate the morphed geometry? </p>

</div>
</div>
<a class="anchor" id="aac2489065a6b50b8f16741710c056fc9"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_method" ref="aac2489065a6b50b8f16741710c056fc9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00478.html#a1f903a60e50a1ccdba2695b02e37d8e1">Method</a> <a class="el" href="a00478.html#aac2489065a6b50b8f16741710c056fc9">osgAnimation::MorphGeometry::_method</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ad95e3a41949a58d3b1608ab5ed49a53f"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_morphNormals" ref="ad95e3a41949a58d3b1608ab5ed49a53f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00478.html#ad95e3a41949a58d3b1608ab5ed49a53f">osgAnimation::MorphGeometry::_morphNormals</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Do we also morph between normals? </p>

</div>
</div>
<a class="anchor" id="a93a43958cb6a6f3c538b9d76b948bcf0"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_morphTargets" ref="a93a43958cb6a6f3c538b9d76b948bcf0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00478.html#a3f1528307fdeef29bf3d37077bb38b84">MorphTargetList</a> <a class="el" href="a00478.html#a93a43958cb6a6f3c538b9d76b948bcf0">osgAnimation::MorphGeometry::_morphTargets</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="aa209eed58be09e8a4978cf44df547394"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_normalSource" ref="aa209eed58be09e8a4978cf44df547394" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="a01069.html">osg::Vec3</a>&gt; <a class="el" href="a00478.html#aa209eed58be09e8a4978cf44df547394">osgAnimation::MorphGeometry::_normalSource</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a247a47217cabb530b4fd7e816ea43bd3"></a><!-- doxytag: member="osgAnimation::MorphGeometry::_positionSource" ref="a247a47217cabb530b4fd7e816ea43bd3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="a01069.html">osg::Vec3</a>&gt; <a class="el" href="a00478.html#a247a47217cabb530b4fd7e816ea43bd3">osgAnimation::MorphGeometry::_positionSource</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>osgAnimation/<a class="el" href="a01331.html">MorphGeometry</a></li>
</ul>
</div>
<hr>
<table border="0"><tr><td>
  <img src="osg32-32.png" alt="osg logo" />
</td><td>
  <address><small>Generated at Thu Aug 19 2010 16:22:44 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a>
by <a href="http://www.doxygen.org">doxygen</a> 1.7.1.</small></address>
<!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph -->
</td></tr></table>
</body>
</html>