310 lines
13 KiB
HTML
310 lines
13 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>class SG_EXPORT osg::IntersectVisitor</TITLE>
|
|
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.3">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffff">
|
|
|
|
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::IntersectVisitor</A>: public <!1><A HREF="NodeVisitor.html#DOC.2.28.7">NodeVisitor</A></H2>
|
|
<BLOCKQUOTE>Basic visitor for ray based collisions of a scene.</BLOCKQUOTE>
|
|
<HR>
|
|
|
|
<H2>Inheritance:</H2>
|
|
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=65>
|
|
<param name=classes value="CNodeVisitor,MNodeVisitor.html,CIntersectVisitor,MIntersectVisitor.html">
|
|
<param name=before value="M,M">
|
|
<param name=after value="Md_,M">
|
|
<param name=indent value="0,1">
|
|
<param name=arrowdir value="down">
|
|
</APPLET>
|
|
<HR>
|
|
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Classes</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>enum <B>HitReportingMode</B>
|
|
<DD><I>Modes to control how IntersectVisitor reports hits.</I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> <B>IntersectVisitor</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual <B>~IntersectVisitor</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>reset</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>addSeg</B>(<!1><A HREF="Seg.html">Seg</A>* seg)
|
|
<DD><I>Add a line segment to use for intersection testing during scene traversal</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>setHitReportingMode</B>(<!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> hrm)
|
|
<DD><I>Set the mode of how hits should reported back from a traversal</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> <B>getHitReportingMode</B>()
|
|
<DD><I>Get the mode of how hits should reported back from a traversal</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.10"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="IntersectVisitor.html#DOC.2.20.8">HitList</A>& <B>getHitList</B>(<!1><A HREF="Seg.html">Seg</A>* seg)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.11"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int <B>getNumHits</B>(<!1><A HREF="Seg.html">Seg</A>* seg)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.12"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool <B>hits</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.13"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Node.html">Node</A>&)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.14"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Geode.html">Geode</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.15"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Billboard.html">Billboard</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.16"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Group.html">Group</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.17"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="DCS.html">DCS</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.18"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Switch.html">Switch</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.19"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="LOD.html">LOD</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.20"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>apply</B>(<!1><A HREF="Scene.html">Scene</A>& node)
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Public</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>typedef std::multiset<<!1><A HREF="Hit.html">Hit</A>> <B>HitList</B>
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>typedef std::map<<!1><A HREF="Seg.html">Seg</A>*,<!1><A HREF="IntersectVisitor.html#DOC.2.20.8">HitList</A> > <B>SegHitListMap</B>
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.27"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="IntersectVisitor.html#DOC.2.20.26">IntersectStateStack</A> <B>_intersectStateStack</B>
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.28"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="NodePath.html">NodePath</A> <B>_nodePath</B>
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.29"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> <B>_hitReportingMode</B>
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.30"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="IntersectVisitor.html#DOC.2.20.9">SegHitListMap</A> <B>_segHitList</B>
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Methods</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.21"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool <B>intersect</B>(<!1><A HREF="GeoSet.html">GeoSet</A>& gset)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.22"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>pushMatrix</B>(const <!1><A HREF="Matrix.html">Matrix</A>& matrix)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.23"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>popMatrix</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.24"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool <B>enterNode</B>(<!1><A HREF="Node.html">Node</A>& node)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.20.25"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>void <B>leaveNode</B>()
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected</H3><DD><DT>
|
|
<A HREF="#DOC.2.20.26"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>typedef std::vector<<!1><A HREF="IntersectState.html">IntersectState</A>*> <B>IntersectStateStack</B>
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="NodeVisitor.html">NodeVisitor</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Classes</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>enum <B>TraversalMode</B>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setTraverseMode</B>(<!1><A HREF="NodeVisitor.html#DOC.2.28.1">TraversalMode</A> mode)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="NodeVisitor.html#DOC.2.28.1">TraversalMode</A> <B>getTraverseMode</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setTraverseVisitor</B>(<!1><A HREF="NodeVisitor.html#DOC.2.28.7">NodeVisitor</A>* nv)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="NodeVisitor.html#DOC.2.28.7">NodeVisitor</A>* <B>getTraverseVisitor</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>traverse</B>(<!1><A HREF="Node.html">Node</A>& node)
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="NodeVisitor.html#DOC.2.28.7">NodeVisitor</A>* <B>_traverseVisitor</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="NodeVisitor.html#DOC.2.28.1">TraversalMode</A> <B>_traverseMode</B>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
|
|
<A NAME="DOC.DOCU">
|
|
<HR>
|
|
<H2>Documentation</H2>
|
|
<BLOCKQUOTE>Basic visitor for ray based collisions of a scene.
|
|
Note, still in development, current version has not
|
|
pratical functionality!</BLOCKQUOTE>
|
|
<DL>
|
|
|
|
<A NAME="IntersectVisitor">
|
|
<A NAME="DOC.2.20.5">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> IntersectVisitor()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="~IntersectVisitor">
|
|
<A NAME="DOC.2.20.6">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~IntersectVisitor()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="reset">
|
|
<A NAME="DOC.2.20.7">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void reset()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="addSeg">
|
|
<A NAME="DOC.2.20.1">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void addSeg(<!1><A HREF="Seg.html">Seg</A>* seg)</B></TT>
|
|
<DD>Add a line segment to use for intersection testing during scene traversal
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="HitReportingMode">
|
|
<A NAME="DOC.2.20.2">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum HitReportingMode</B></TT>
|
|
<DD>Modes to control how IntersectVisitor reports hits.
|
|
<DL><DT><DD></DL><P><DL>
|
|
|
|
<A NAME="ONLY_NEAREST_HIT">
|
|
<A NAME="DOC.2.20.2.1">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ONLY_NEAREST_HIT</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="ALL_HITS">
|
|
<A NAME="DOC.2.20.2.2">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ALL_HITS</B></TT>
|
|
<DL><DT><DD></DL><P></DL>
|
|
|
|
<A NAME="setHitReportingMode">
|
|
<A NAME="DOC.2.20.3">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setHitReportingMode(<!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> hrm)</B></TT>
|
|
<DD>Set the mode of how hits should reported back from a traversal
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getHitReportingMode">
|
|
<A NAME="DOC.2.20.4">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> getHitReportingMode()</B></TT>
|
|
<DD>Get the mode of how hits should reported back from a traversal
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="HitList">
|
|
<A NAME="DOC.2.20.8">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::multiset<<!1><A HREF="Hit.html">Hit</A>> HitList</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="SegHitListMap">
|
|
<A NAME="DOC.2.20.9">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::map<<!1><A HREF="Seg.html">Seg</A>*,<!1><A HREF="IntersectVisitor.html#DOC.2.20.8">HitList</A> > SegHitListMap</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getHitList">
|
|
<A NAME="DOC.2.20.10">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="IntersectVisitor.html#DOC.2.20.8">HitList</A>& getHitList(<!1><A HREF="Seg.html">Seg</A>* seg)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getNumHits">
|
|
<A NAME="DOC.2.20.11">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int getNumHits(<!1><A HREF="Seg.html">Seg</A>* seg)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="hits">
|
|
<A NAME="DOC.2.20.12">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool hits()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.13">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Node.html">Node</A>&)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.14">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Geode.html">Geode</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.15">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Billboard.html">Billboard</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.16">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Group.html">Group</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.17">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="DCS.html">DCS</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.18">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Switch.html">Switch</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.19">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="LOD.html">LOD</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="apply">
|
|
<A NAME="DOC.2.20.20">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void apply(<!1><A HREF="Scene.html">Scene</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="intersect">
|
|
<A NAME="DOC.2.20.21">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool intersect(<!1><A HREF="GeoSet.html">GeoSet</A>& gset)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="pushMatrix">
|
|
<A NAME="DOC.2.20.22">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void pushMatrix(const <!1><A HREF="Matrix.html">Matrix</A>& matrix)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="popMatrix">
|
|
<A NAME="DOC.2.20.23">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void popMatrix()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="enterNode">
|
|
<A NAME="DOC.2.20.24">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool enterNode(<!1><A HREF="Node.html">Node</A>& node)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="leaveNode">
|
|
<A NAME="DOC.2.20.25">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void leaveNode()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="IntersectStateStack">
|
|
<A NAME="DOC.2.20.26">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector<<!1><A HREF="IntersectState.html">IntersectState</A>*> IntersectStateStack</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_intersectStateStack">
|
|
<A NAME="DOC.2.20.27">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="IntersectVisitor.html#DOC.2.20.26">IntersectStateStack</A> _intersectStateStack</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_nodePath">
|
|
<A NAME="DOC.2.20.28">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="NodePath.html">NodePath</A> _nodePath</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_hitReportingMode">
|
|
<A NAME="DOC.2.20.29">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="IntersectVisitor.html#DOC.2.20.2">HitReportingMode</A> _hitReportingMode</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_segHitList">
|
|
<A NAME="DOC.2.20.30">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="IntersectVisitor.html#DOC.2.20.9">SegHitListMap</A> _segHitList</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><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://www.linuxsupportline.com/~doc++">DOC++</A>.
|
|
</BODY>
|