OpenSceneGraph/doc/doc++/osg/MatrixTransform.html

229 lines
11 KiB
HTML
Raw Normal View History

2002-07-19 03:54:11 +08:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class SG_EXPORT osg::MatrixTransform</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">
2002-08-29 22:29:49 +08:00
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::MatrixTransform</A></H2></H2><BLOCKQUOTE>MatrixTransform - is a subclass of Transform which has an osg::Matrix which represent a 4x4 transformation of its children from local cordinates into the Transform's parent coordinates</BLOCKQUOTE>
2002-07-19 03:54:11 +08:00
<HR>
<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=125>
<param name=classes value="MNode,M,CGroup,MGroup.html,CTransform,MTransform.html,CMatrixTransform,MMatrixTransform.html">
<param name=before value="M,M,M,M">
<param name=after value="Md_SPSP,Md_SP,Md_,M">
<param name=indent value="0,1,2,3">
<param name=arrowdir value="down">
</APPLET>
<HR>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.77.1">MatrixTransform</A></B>()
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.77.2">MatrixTransform</A></B>(const <!1><A HREF="MatrixTransform.html#DOC.2.77.2">MatrixTransform</A>&amp;, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)
2002-07-19 03:54:11 +08:00
<DD><I>Copy constructor using CopyOp to manage deep vs shallow copy</I>
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.77.3">MatrixTransform</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; matix)
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.77.4">META_Node</A></B>(<!1><A HREF="osg.html">osg</A>, <!1><A HREF="MatrixTransform.html">MatrixTransform</A>)
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.77.5">setMatrix</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)
2002-07-19 03:54:11 +08:00
<DD><I>Set the transform's matrix</I>
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Matrix.html">Matrix</A>&amp; <B><A HREF="#DOC.2.77.6">getMatrix</A></B>() const
<DD><I>Get the matrix.</I>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.77.7">preMult</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)
<DD><I>pre multiply the transforms matrix</I>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.77.8">postMult</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)
<DD><I>post multiply the transforms matrix</I>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Matrix.html">Matrix</A>&amp; <B><A HREF="#DOC.2.77.9">getInverseMatrix</A></B>() const
<DD><I>Get the inverse matrix.</I>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const bool <B><A HREF="#DOC.2.77.10">computeLocalToWorldMatrix</A></B>(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>*) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const bool <B><A HREF="#DOC.2.77.11">computeWorldToLocalMatrix</A></B>(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>*) const
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
class SG_EXPORT <B><A HREF="AnimationPathCallback.html">AnimationPathCallback</A></B>: public <!1><A HREF="NodeCallback.html">NodeCallback</A>
<DD><I>Callback which can be attached to a MatrixTransform as an app callback to allow it to follow the path defined by a AnimationPath</I>
2002-07-19 03:54:11 +08:00
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
2002-08-29 22:29:49 +08:00
<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.77.14">_matrix</A></B>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>mutable <!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Matrix.html">Matrix</A>&gt; <B><A HREF="#DOC.2.77.15">_inverse</A></B>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>mutable bool <B><A HREF="#DOC.2.77.16">_inverseDirty</A></B>
2002-07-19 03:54:11 +08:00
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <B><A HREF="#DOC.2.77.13">~MatrixTransform</A></B>()
2002-07-19 03:54:11 +08:00
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Transform.html">Transform</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif>void <B>setReferenceFrame</B>(<!1><A HREF="Transform.html#DOC.2.142.4">ReferenceFrame</A> rf)
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif>const <!1><A HREF="Transform.html#DOC.2.142.4">ReferenceFrame</A> <B>getReferenceFrame</B>() const
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif>void <B>setComputeTransformCallback</B>(<!1><A HREF="Transform.html#DOC.2.142.7">ComputeTransformCallback</A>* ctc)
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Transform.html#DOC.2.142.7">ComputeTransformCallback</A>* <B>getComputeTransformCallback</B>()
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif>const <!1><A HREF="Transform.html#DOC.2.142.7">ComputeTransformCallback</A>* <B>getComputeTransformCallback</B>() const
2002-07-19 03:54:11 +08:00
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const bool <B>getLocalToWorldMatrix</B>(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>* nv) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const bool <B>getWorldToLocalMatrix</B>(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>* nv) const
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>enum <B>ReferenceFrame</B>
<DT>
<IMG ALT="o" SRC=icon2.gif>struct <B>ComputeTransformCallback</B>: public <!1><A HREF="Referenced.html">osg::Referenced</A>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Transform.html#DOC.2.142.7">ComputeTransformCallback</A>&gt; <B>_computeTransformCallback</B>
2002-07-19 03:54:11 +08:00
<DT>
2002-08-29 22:29:49 +08:00
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Transform.html#DOC.2.142.4">ReferenceFrame</A> <B>_referenceFrame</B>
2002-07-19 03:54:11 +08:00
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual const bool <B>computeBound</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>( Node* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>removeChild</B>( Node* child )
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>replaceChild</B>( Node* origChild, Node* newChild )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const unsigned int <B>getNumChildren</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline Node* <B>getChild</B>( const unsigned int i )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const Node* <B>getChild</B>( const unsigned int i ) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline bool <B>containsNode</B>( const Node* node ) const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline ChildList::iterator <B>findNode</B>( const Node* node )
<DT>
<IMG ALT="o" SRC=icon2.gif>inline ChildList::const_iterator <B>findNode</B>( const Node* 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>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
2002-08-29 22:29:49 +08:00
<BLOCKQUOTE>MatrixTransform - is a subclass of Transform which has an osg::Matrix
which represent a 4x4 transformation of its children from local cordinates
into the Transform's parent coordinates</BLOCKQUOTE>
2002-07-19 03:54:11 +08:00
<DL>
<A NAME="MatrixTransform"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.1"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> MatrixTransform()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="MatrixTransform"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> MatrixTransform(const <!1><A HREF="MatrixTransform.html#DOC.2.77.2">MatrixTransform</A>&amp;, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)</B></TT>
2002-07-19 03:54:11 +08:00
<DD>Copy constructor using CopyOp to manage deep vs shallow copy
<DL><DT><DD></DL><P>
<A NAME="MatrixTransform"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.3"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> MatrixTransform(const <!1><A HREF="Matrix.html">Matrix</A>&amp; matix)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="META_Node"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.4"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> META_Node(<!1><A HREF="osg.html">osg</A>, <!1><A HREF="MatrixTransform.html">MatrixTransform</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setMatrix"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.5"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setMatrix(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)</B></TT>
<DD>Set the transform's matrix
<DL><DT><DD></DL><P>
<A NAME="getMatrix"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.6"></A>
2002-07-19 03:54:11 +08:00
<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>
2002-08-29 22:29:49 +08:00
<DD>Get the matrix.
2002-07-19 03:54:11 +08:00
<DL><DT><DD></DL><P>
<A NAME="preMult"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.7"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void preMult(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)</B></TT>
2002-08-29 22:29:49 +08:00
<DD>pre multiply the transforms matrix
2002-07-19 03:54:11 +08:00
<DL><DT><DD></DL><P>
<A NAME="postMult"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.8"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void postMult(const <!1><A HREF="Matrix.html">Matrix</A>&amp; mat)</B></TT>
2002-08-29 22:29:49 +08:00
<DD>post multiply the transforms matrix
<DL><DT><DD></DL><P>
<A NAME="getInverseMatrix"></A>
<A NAME="DOC.2.77.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Matrix.html">Matrix</A>&amp; getInverseMatrix() const </B></TT>
<DD>Get the inverse matrix.
2002-07-19 03:54:11 +08:00
<DL><DT><DD></DL><P>
<A NAME="computeLocalToWorldMatrix"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.10"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const bool computeLocalToWorldMatrix(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>*) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeWorldToLocalMatrix"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.11"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const bool computeWorldToLocalMatrix(<!1><A HREF="Matrix.html">Matrix</A>&amp; matrix, <!1><A HREF="NodeVisitor.html">NodeVisitor</A>*) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="~MatrixTransform"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.13"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~MatrixTransform()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_matrix"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.14"></A>
2002-07-19 03:54:11 +08:00
<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>
<A NAME="_inverse"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.15"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>mutable <!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Matrix.html">Matrix</A>&gt; _inverse</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_inverseDirty"></A>
2002-08-29 22:29:49 +08:00
<A NAME="DOC.2.77.16"></A>
2002-07-19 03:54:11 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>mutable bool _inverseDirty</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>