OpenSceneGraph/doc/doc++/osg/Transform.html
2001-12-24 21:56:22 +00:00

335 lines
15 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class SG_EXPORT osg::Transform</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::Transform</A></H2></H2><BLOCKQUOTE>Transform - is group which all children are transformed by the the Transform's osg::Matrix.</BLOCKQUOTE>
<HR>
<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=155>
<param name=classes value="CReferenced,MReferenced.html,CObject,MObject.html,CNode,MNode.html,CGroup,MGroup.html,CTransform,MTransform.html">
<param name=before value="M,M,M,M,M">
<param name=after value="Md_SPSPSP,Md_SPSP,Md_SP,Md_,M">
<param name=indent value="0,1,2,3,4">
<param name=arrowdir value="down">
</APPLET>
<HR>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.106.1">Transform</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.106.2">Transform</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; matix)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.106.3">META_Node</A></B>(<!1><A HREF="Transform.html">Transform</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.106.5">setType</A></B>(<!1><A HREF="Transform.html#DOC.2.106.4">Type</A> type)
<DD><I>Set the Transform Type, which can be DYNAMIC - the Marix value is updated duing the main loop, or STATIC - the Matrix is constant throughut the life of the main loop.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Transform.html#DOC.2.106.4">Type</A> <B><A HREF="#DOC.2.106.6">getType</A></B>() const
<DD><I>Get the Transform Type</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Matrix.html">Matrix</A>&amp; <B><A HREF="#DOC.2.106.7">getMatrix</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.106.8">setMatrix</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.106.9">preMult</A></B>( const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )
<DD><I>preMult trasforms relative to the childrens coordinate system</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.106.10">postMult</A></B>( const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )
<DD><I>postMult trasforms relative to the parents coordinate system</I>
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>enum <B><A HREF="#DOC.2.106.4">Type</A></B>
<DD><I>Range of type that the Transform can be</I>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Transform.html#DOC.2.106.4">Type</A> <B><A HREF="#DOC.2.106.13">_type</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Matrix.html">Matrix</A>&gt; <B><A HREF="#DOC.2.106.14">_matrix</A></B>
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <B><A HREF="#DOC.2.106.11">~Transform</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const bool <B><A HREF="#DOC.2.106.12">computeBound</A></B>() const
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Group.html">Group</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual void <B>traverse</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>&amp; nv)
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>addChild</B>( <!1><A HREF="Node.html">Node</A>* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>removeChild</B>( <!1><A HREF="Node.html">Node</A>* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>replaceChild</B>( <!1><A HREF="Node.html">Node</A>* origChild, <!1><A HREF="Node.html">Node</A>* newChild )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>getNumChildren</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Node.html">Node</A>* <B>getChild</B>( const int i )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Node.html">Node</A>* <B>getChild</B>( const int i ) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline bool <B>containsNode</B>( const <!1><A HREF="Node.html">Node</A>* node ) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline ChildList::iterator <B>findNode</B>( const <!1><A HREF="Node.html">Node</A>* node )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline ChildList::const_iterator <B>findNode</B>( const <!1><A HREF="Node.html">Node</A>* node ) const
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>ChildList <B>_children</B>
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Node.html">Node</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual <!1><A HREF="Object.html">Object</A>* <B>clone</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>isSameKindAs</B>(const <!1><A HREF="Object.html">Object</A>* obj) const
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual const char* <B>className</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual void <B>accept</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>&amp; nv)
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual void <B>ascend</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>&amp; nv)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setName</B>( const std::string&amp; name )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setName</B>( const char* name )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const std::string&amp; <B>getName</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Node.html#DOC.2.67.11">ParentList</A>&amp; <B>getParents</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Group.html">Group</A>* <B>getParent</B>(const int i)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Group.html">Group</A>* <B>getParent</B>(const int i) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>getNumParents</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>setAppCallback</B>(<!1><A HREF="NodeCallback.html">NodeCallback</A>* nc)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="NodeCallback.html">NodeCallback</A>* <B>getAppCallback</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="NodeCallback.html">NodeCallback</A>* <B>getAppCallback</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>getNumChildrenRequiringAppTraversal</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>setCullingActive</B>(const bool active)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const bool <B>getCullingActive</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>getNumChildrenWithCullingDisabled</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setUserData</B>(<!1><A HREF="Referenced.html">osg::Referenced</A>* obj)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Referenced.html">Referenced</A>* <B>getUserData</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Referenced.html">Referenced</A>* <B>getUserData</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setNodeMask</B>(const NodeMask nm)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const NodeMask <B>getNodeMask</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Node.html#DOC.2.67.28">DescriptionList</A>&amp; <B>getDescriptions</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Node.html#DOC.2.67.28">DescriptionList</A>&amp; <B>getDescriptions</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const std::string&amp; <B>getDescription</B>(const int i) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline std::string&amp; <B>getDescription</B>(const int i)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>getNumDescriptions</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>addDescription</B>(const std::string&amp; desc)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setStateSet</B>(<!1><A HREF="StateSet.html">osg::StateSet</A>* dstate)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="StateSet.html">osg::StateSet</A>* <B>getStateSet</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="StateSet.html">osg::StateSet</A>* <B>getStateSet</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>&amp; <B>getBound</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>dirtyBound</B>()
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>typedef std::vector&lt;<!1><A HREF="Group.html">Group</A>*&gt; <B>ParentList</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>typedef std::vector&lt;std::string&gt; <B>DescriptionList</B>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>mutable <!1><A HREF="BoundingSphere.html">BoundingSphere</A> <B>_bsphere</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>mutable bool <B>_bsphere_computed</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>std::string <B>_name</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.67.11">ParentList</A> <B>_parents</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="NodeCallback.html">NodeCallback</A>&gt; <B>_appCallback</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>int <B>_numChildrenRequiringAppTraversal</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>bool <B>_cullingActive</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>int <B>_numChildrenWithCullingDisabled</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">osg::ref_ptr</A>&lt;<!1><A HREF="Referenced.html">Referenced</A>&gt; <B>_userData</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>NodeMask <B>_nodeMask</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.67.28">DescriptionList</A> <B>_descriptions</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="StateSet.html">StateSet</A>&gt; <B>_dstate</B>
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>void <B>setNumChildrenRequiringAppTraversal</B>(const int num)
<DT>
<IMG ALT="o" SRC=icon2.gif>void <B>setNumChildrenWithCullingDisabled</B>(const int num)
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Object.html">Object</A>:</H3>
<DL>
</DL>
<HR><H3>Inherited from <A HREF="Referenced.html">Referenced</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Referenced.html">Referenced</A>&amp; <B>operator = </B>(<!1><A HREF="Referenced.html">Referenced</A>&amp;)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>ref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>referenceCount</B>() const
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>mutable int <B>_refCount</B>
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>Transform - is group which all children
are transformed by the the Transform's osg::Matrix. Typical uses
of the Transform is for positioning objects within a scene or
producing trakerball functionality or for animation.</BLOCKQUOTE>
<DL>
<A NAME="Transform"></A>
<A NAME="DOC.2.106.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Transform()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Transform"></A>
<A NAME="DOC.2.106.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Transform(const <!1><A HREF="Matrix.html">Matrix</A>&amp; matix)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="META_Node"></A>
<A NAME="DOC.2.106.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> META_Node(<!1><A HREF="Transform.html">Transform</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Type"></A>
<A NAME="DOC.2.106.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum Type</B></TT>
<DD>Range of type that the Transform can be
<DL><DT><DD></DL><P><DL>
<A NAME="DYNAMIC"></A>
<A NAME="DOC.2.106.4.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> DYNAMIC</B></TT>
<DL><DT><DD></DL><P>
<A NAME="STATIC"></A>
<A NAME="DOC.2.106.4.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> STATIC</B></TT>
<DL><DT><DD></DL><P></DL>
<A NAME="setType"></A>
<A NAME="DOC.2.106.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setType(<!1><A HREF="Transform.html#DOC.2.106.4">Type</A> type)</B></TT>
<DD>Set the Transform Type, which can be DYNAMIC - the Marix
value is updated duing the main loop, or STATIC - the Matrix
is constant throughut the life of the main loop. STATIC
Transforms can be optimized away is some instances, which
can improve performanc so unless you plan to modify the
Matrix explicity set the Matrix to STATIC. The default
value is DYNAMIC.
<DL><DT><DD></DL><P>
<A NAME="getType"></A>
<A NAME="DOC.2.106.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Transform.html#DOC.2.106.4">Type</A> getType() const </B></TT>
<DD>Get the Transform Type
<DL><DT><DD></DL><P>
<A NAME="getMatrix"></A>
<A NAME="DOC.2.106.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Matrix.html">Matrix</A>&amp; getMatrix() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setMatrix"></A>
<A NAME="DOC.2.106.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setMatrix(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )</B></TT>
<DL><DT><DD></DL><P>
<A NAME="preMult"></A>
<A NAME="DOC.2.106.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void preMult( const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )</B></TT>
<DD>preMult trasforms relative to the childrens coordinate system
<DL><DT><DD></DL><P>
<A NAME="postMult"></A>
<A NAME="DOC.2.106.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void postMult( const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat )</B></TT>
<DD>postMult trasforms relative to the parents coordinate system
<DL><DT><DD></DL><P>
<A NAME="~Transform"></A>
<A NAME="DOC.2.106.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~Transform()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeBound"></A>
<A NAME="DOC.2.106.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const bool computeBound() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="_type"></A>
<A NAME="DOC.2.106.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Transform.html#DOC.2.106.4">Type</A> _type</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_matrix"></A>
<A NAME="DOC.2.106.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Matrix.html">Matrix</A>&gt; _matrix</B></TT>
<DL><DT><DD></DL><P></DL>
<HR><DL><DT><B>This class has no child classes.</B></DL>
<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>