OpenSceneGraph/doc/doc++/osg/Polytope.html
2003-10-02 14:28:30 +00:00

322 lines
18 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class SG_EXPORT osg::Polytope</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.10">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::Polytope</A></H2></H2><BLOCKQUOTE>A Polytope class for representing convex clipping volumes made up.</BLOCKQUOTE>
<HR>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <B><A HREF="#DOC.2.145.5">Polytope</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <B><A HREF="#DOC.2.145.6">Polytope</A></B>(const <!1><A HREF="Polytope.html#DOC.2.145.6">Polytope</A>&amp; cv)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <B><A HREF="#DOC.2.145.7">Polytope</A></B>(const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; pl)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <B><A HREF="#DOC.2.145.8">~Polytope</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.9">clear</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html">Polytope</A>&amp; <B><A HREF="#DOC.2.145.10">operator = </A></B>(const <!1><A HREF="Polytope.html">Polytope</A>&amp; cv)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.145.11">setToUnitFrustum</A></B>(bool withNear=true, bool withFar=true)
<DD><I>Create a Polytope with is cube, centered at 0,0,0, with sides of 2 units</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.12">set</A></B>(const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; pl)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.13">add</A></B>(const <!1><A HREF="Plane.html">osg::Plane</A>&amp; pl)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.14">flip</A></B>()
<DD><I>flip/reverse the orientation of all the planes</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; <B><A HREF="#DOC.2.145.15">getPlaneList</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; <B><A HREF="#DOC.2.145.16">getPlaneList</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.17">setReferenceVertexList</A></B>(<!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; vertices)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; <B><A HREF="#DOC.2.145.18">getReferenceVertexList</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; <B><A HREF="#DOC.2.145.19">getReferenceVertexList</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.20">setupMask</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A>&amp; <B><A HREF="#DOC.2.145.21">getCurrentMask</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> <B><A HREF="#DOC.2.145.22">getCurrentMask</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.23">setResultMask</A></B>(<!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> mask)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> <B><A HREF="#DOC.2.145.24">getResultMask</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A>&amp; <B><A HREF="#DOC.2.145.25">getMaskStack</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const <!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A>&amp; <B><A HREF="#DOC.2.145.26">getMaskStack</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.27">pushCurrentMask</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.28">popCurrentMask</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.29">contains</A></B>(const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; v) const
<DD><I>Check whether a vertex is contained with clipping set</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.30">contains</A></B>(const std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt;&amp; vertices)
<DD><I>Check whether any part of vertex list is contained with clipping set</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.31">contains</A></B>(const <!1><A HREF="BoundingSphere.html">osg::BoundingSphere</A>&amp; bs)
<DD><I>Check whether any part of a bounding sphere is contained within clipping set.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.32">contains</A></B>(const <!1><A HREF="BoundingBox.html">osg::BoundingBox</A>&amp; bb)
<DD><I>Check whether any part of a bounding box is contained within clipping set.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.33">containsAllOf</A></B>(const std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt;&amp; vertices)
<DD><I>Check whether all of vertex list is contained with clipping set</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.34">containsAllOf</A></B>(const <!1><A HREF="BoundingSphere.html">osg::BoundingSphere</A>&amp; bs)
<DD><I>Check whether the entire bounding sphere is contained within clipping set</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.145.35">containsAllOf</A></B>(const <!1><A HREF="BoundingBox.html">osg::BoundingBox</A>&amp; bb)
<DD><I>Check whether the entire bounding box is contained within clipping set</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.36">transform</A></B>(const <!1><A HREF="osg.html#DOC.2.102">osg::Matrix</A>&amp; matrix)
<DD><I>Transform the clipping set by matrix.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.145.37">transformProvidingInverse</A></B>(const <!1><A HREF="osg.html#DOC.2.102">osg::Matrix</A>&amp; matrix)
<DD><I>Transform the clipping set by provide a pre inverted matrix.</I>
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef unsigned int <B><A HREF="#DOC.2.145.1">ClippingMask</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef std::vector&lt;<!1><A HREF="Plane.html">Plane</A>&gt; <B><A HREF="#DOC.2.145.2">PlaneList</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt; <B><A HREF="#DOC.2.145.3">VertexList</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef <!1><A HREF="fast_back_stack.html">fast_back_stack</A>&lt;<!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A>&gt; <B><A HREF="#DOC.2.145.4">MaskStack</A></B>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A> <B><A HREF="#DOC.2.145.38">_maskStack</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> <B><A HREF="#DOC.2.145.39">_resultMask</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A> <B><A HREF="#DOC.2.145.40">_planeList</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A> <B><A HREF="#DOC.2.145.41">_referenceVertexList</A></B>
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>A Polytope class for representing convex clipping volumes made up.
When adding planes, their normals should point inwards (into the volume) </BLOCKQUOTE>
<DL>
<A NAME="ClippingMask"></A>
<A NAME="DOC.2.145.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef unsigned int ClippingMask</B></TT>
<DL><DT><DD></DL><P>
<A NAME="PlaneList"></A>
<A NAME="DOC.2.145.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector&lt;<!1><A HREF="Plane.html">Plane</A>&gt; PlaneList</B></TT>
<DL><DT><DD></DL><P>
<A NAME="VertexList"></A>
<A NAME="DOC.2.145.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt; VertexList</B></TT>
<DL><DT><DD></DL><P>
<A NAME="MaskStack"></A>
<A NAME="DOC.2.145.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef <!1><A HREF="fast_back_stack.html">fast_back_stack</A>&lt;<!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A>&gt; MaskStack</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Polytope"></A>
<A NAME="DOC.2.145.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline Polytope()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Polytope"></A>
<A NAME="DOC.2.145.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline Polytope(const <!1><A HREF="Polytope.html#DOC.2.145.6">Polytope</A>&amp; cv)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Polytope"></A>
<A NAME="DOC.2.145.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline Polytope(const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; pl)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="~Polytope"></A>
<A NAME="DOC.2.145.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline ~Polytope()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="clear"></A>
<A NAME="DOC.2.145.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void clear()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator = "></A>
<A NAME="DOC.2.145.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html">Polytope</A>&amp; operator = (const <!1><A HREF="Polytope.html">Polytope</A>&amp; cv)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setToUnitFrustum"></A>
<A NAME="DOC.2.145.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setToUnitFrustum(bool withNear=true, bool withFar=true)</B></TT>
<DD>Create a Polytope with is cube, centered at 0,0,0, with sides of 2 units
<DL><DT><DD></DL><P>
<A NAME="set"></A>
<A NAME="DOC.2.145.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void set(const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; pl)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="add"></A>
<A NAME="DOC.2.145.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void add(const <!1><A HREF="Plane.html">osg::Plane</A>&amp; pl)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="flip"></A>
<A NAME="DOC.2.145.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void flip()</B></TT>
<DD>flip/reverse the orientation of all the planes
<DL><DT><DD></DL><P>
<A NAME="getPlaneList"></A>
<A NAME="DOC.2.145.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; getPlaneList()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getPlaneList"></A>
<A NAME="DOC.2.145.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A>&amp; getPlaneList() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setReferenceVertexList"></A>
<A NAME="DOC.2.145.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setReferenceVertexList(<!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; vertices)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getReferenceVertexList"></A>
<A NAME="DOC.2.145.18"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; getReferenceVertexList()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getReferenceVertexList"></A>
<A NAME="DOC.2.145.19"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A>&amp; getReferenceVertexList() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setupMask"></A>
<A NAME="DOC.2.145.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setupMask()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getCurrentMask"></A>
<A NAME="DOC.2.145.21"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A>&amp; getCurrentMask()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getCurrentMask"></A>
<A NAME="DOC.2.145.22"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> getCurrentMask() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setResultMask"></A>
<A NAME="DOC.2.145.23"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setResultMask(<!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> mask)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getResultMask"></A>
<A NAME="DOC.2.145.24"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> getResultMask() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getMaskStack"></A>
<A NAME="DOC.2.145.25"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A>&amp; getMaskStack()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getMaskStack"></A>
<A NAME="DOC.2.145.26"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const <!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A>&amp; getMaskStack() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="pushCurrentMask"></A>
<A NAME="DOC.2.145.27"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void pushCurrentMask()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="popCurrentMask"></A>
<A NAME="DOC.2.145.28"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void popCurrentMask()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="contains"></A>
<A NAME="DOC.2.145.29"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool contains(const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; v) const </B></TT>
<DD>Check whether a vertex is contained with clipping set
<DL><DT><DD></DL><P>
<A NAME="contains"></A>
<A NAME="DOC.2.145.30"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool contains(const std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt;&amp; vertices)</B></TT>
<DD>Check whether any part of vertex list is contained with clipping set
<DL><DT><DD></DL><P>
<A NAME="contains"></A>
<A NAME="DOC.2.145.31"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool contains(const <!1><A HREF="BoundingSphere.html">osg::BoundingSphere</A>&amp; bs)</B></TT>
<DD>Check whether any part of a bounding sphere is contained within clipping set.
Using a mask to determine which planes should be used for the check, and
modifying the mask to turn off planes which wouldn't contribute to clipping
of any internal objects. This feature is used in osgUtil::CullVisitor
to prevent redundant plane checking.
<DL><DT><DD></DL><P>
<A NAME="contains"></A>
<A NAME="DOC.2.145.32"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool contains(const <!1><A HREF="BoundingBox.html">osg::BoundingBox</A>&amp; bb)</B></TT>
<DD>Check whether any part of a bounding box is contained within clipping set.
Using a mask to determine which planes should be used for the check, and
modifying the mask to turn off planes which wouldn't contribute to clipping
of any internal objects. This feature is used in osgUtil::CullVisitor
to prevent redundant plane checking.
<DL><DT><DD></DL><P>
<A NAME="containsAllOf"></A>
<A NAME="DOC.2.145.33"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool containsAllOf(const std::vector&lt;<!1><A HREF="Vec3.html">Vec3</A>&gt;&amp; vertices)</B></TT>
<DD>Check whether all of vertex list is contained with clipping set
<DL><DT><DD></DL><P>
<A NAME="containsAllOf"></A>
<A NAME="DOC.2.145.34"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool containsAllOf(const <!1><A HREF="BoundingSphere.html">osg::BoundingSphere</A>&amp; bs)</B></TT>
<DD>Check whether the entire bounding sphere is contained within clipping set
<DL><DT><DD></DL><P>
<A NAME="containsAllOf"></A>
<A NAME="DOC.2.145.35"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool containsAllOf(const <!1><A HREF="BoundingBox.html">osg::BoundingBox</A>&amp; bb)</B></TT>
<DD>Check whether the entire bounding box is contained within clipping set
<DL><DT><DD></DL><P>
<A NAME="transform"></A>
<A NAME="DOC.2.145.36"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void transform(const <!1><A HREF="osg.html#DOC.2.102">osg::Matrix</A>&amp; matrix)</B></TT>
<DD>Transform the clipping set by matrix. Note, this operations carries out
the calculation of the inverse of the matrix since to transforms
planes must be multiplied my the inverse transposed. This
make this operation expensive. If the inverse has been already
calculated elsewhere then use transformProvidingInverse() instead.
See http://www.worldserver.com/turk/computergraphics/NormalTransformations.pdf
<DL><DT><DD></DL><P>
<A NAME="transformProvidingInverse"></A>
<A NAME="DOC.2.145.37"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void transformProvidingInverse(const <!1><A HREF="osg.html#DOC.2.102">osg::Matrix</A>&amp; matrix)</B></TT>
<DD>Transform the clipping set by provide a pre inverted matrix.
see transform for details.
<DL><DT><DD></DL><P>
<A NAME="_maskStack"></A>
<A NAME="DOC.2.145.38"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Polytope.html#DOC.2.145.4">MaskStack</A> _maskStack</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_resultMask"></A>
<A NAME="DOC.2.145.39"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Polytope.html#DOC.2.145.1">ClippingMask</A> _resultMask</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_planeList"></A>
<A NAME="DOC.2.145.40"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Polytope.html#DOC.2.145.2">PlaneList</A> _planeList</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_referenceVertexList"></A>
<A NAME="DOC.2.145.41"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Polytope.html#DOC.2.145.3">VertexList</A> _referenceVertexList</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>