OpenSceneGraph/doc/doc++/osgUtil/Tesselator.html
2002-06-05 12:35:59 +00:00

198 lines
9.1 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class OSGUTIL_EXPORT osgUtil::Tesselator</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class OSGUTIL_EXPORT <A HREF="#DOC.DOCU">osgUtil::Tesselator</A></H2></H2><BLOCKQUOTE>A simple class for tessellating a single polygon boundary.</BLOCKQUOTE>
<HR>
<DL>
<P><DL>
<DT><H3>Public Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.28.10">_errorCode</A></B>
</DL></P>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.28.1">Tesselator</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.28.2">~Tesselator</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.4">tesselate</A></B>(osg::Vec3* coords, int numIndices, int* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.5">tesselate</A></B>(osg::Vec3* coords, int numIndices, osg::ushort* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.6">tesselate</A></B>(osg::Vec3* coords, int numIndices, osg::uint* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef std::vector&lt;osg::uint&gt; IndexVec const IndexVec&amp; <B><A HREF="#DOC.2.28.7">getResult</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.8">beginPrimitive</A></B>(int primitiveType)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.9">endPrimitive</A></B>()
</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.28.3">InputBoundaryDirection</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>struct <B><A HREF="#DOC.2.28.11">VertexIndexSet</A></B>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>CoordVec <B><A HREF="#DOC.2.28.14">_coordVec</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>IndexVec <B><A HREF="#DOC.2.28.15">_tesselated_indices</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.28.16">_currentPrimtiveType</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>IndexVec <B><A HREF="#DOC.2.28.17">_acummulated_indices</A></B>
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef std::vector&lt;<!1><A HREF="Tesselator.html#DOC.2.28.11">VertexIndexSet</A>&gt; CoordVec void <B><A HREF="#DOC.2.28.12">init</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.28.13">do_it</A></B>()
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>A simple class for tessellating a single polygon boundary.
Currently uses old style glu tessellation functions for portability.
It be nice to use the modern glu tessellation functions or to find
a small set of code for doing this job better.</BLOCKQUOTE>
<DL>
<A NAME="Tesselator"></A>
<A NAME="DOC.2.28.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Tesselator()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="~Tesselator"></A>
<A NAME="DOC.2.28.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ~Tesselator()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="InputBoundaryDirection"></A>
<A NAME="DOC.2.28.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>enum InputBoundaryDirection</B></TT>
<DL><DT><DD></DL><P><DL>
<A NAME="CLOCK_WISE"></A>
<A NAME="DOC.2.28.3.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> CLOCK_WISE</B></TT>
<DL><DT><DD></DL><P>
<A NAME="COUNTER_CLOCK_WISE"></A>
<A NAME="DOC.2.28.3.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> COUNTER_CLOCK_WISE</B></TT>
<DL><DT><DD></DL><P></DL>
<A NAME="tesselate"></A>
<A NAME="DOC.2.28.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void tesselate(osg::Vec3* coords, int numIndices, int* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="tesselate"></A>
<A NAME="DOC.2.28.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void tesselate(osg::Vec3* coords, int numIndices, osg::ushort* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="tesselate"></A>
<A NAME="DOC.2.28.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void tesselate(osg::Vec3* coords, int numIndices, osg::uint* indices, <!1><A HREF="Tesselator.html#DOC.2.28.3">InputBoundaryDirection</A> ibd=<!1><A HREF="Tesselator.html#DOC.2.28.3.2">COUNTER_CLOCK_WISE</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getResult"></A>
<A NAME="DOC.2.28.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector&lt;osg::uint&gt; IndexVec const IndexVec&amp; getResult() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="beginPrimitive"></A>
<A NAME="DOC.2.28.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void beginPrimitive(int primitiveType)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="endPrimitive"></A>
<A NAME="DOC.2.28.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void endPrimitive()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_errorCode"></A>
<A NAME="DOC.2.28.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _errorCode</B></TT>
<DL><DT><DD></DL><P>
<A NAME="VertexIndexSet"></A>
<A NAME="DOC.2.28.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>struct VertexIndexSet</B></TT>
<DL><DT><DD></DL><P><DL>
<A NAME="VertexIndexSet"></A>
<A NAME="DOC.2.28.11.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> VertexIndexSet()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="VertexIndexSet"></A>
<A NAME="DOC.2.28.11.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> VertexIndexSet(<!1><A HREF="Tesselator.html">Tesselator</A>* tess, const osg::Vec3&amp; vec, osg::uint index)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="VertexIndexSet"></A>
<A NAME="DOC.2.28.11.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> VertexIndexSet(const <!1><A HREF="Tesselator.html#DOC.2.28.11.3">VertexIndexSet</A>&amp; vip)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator = "></A>
<A NAME="DOC.2.28.11.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Tesselator.html#DOC.2.28.11">VertexIndexSet</A>&amp; operator = (const <!1><A HREF="Tesselator.html#DOC.2.28.11">VertexIndexSet</A>&amp; vip)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="set"></A>
<A NAME="DOC.2.28.11.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void set(<!1><A HREF="Tesselator.html">Tesselator</A>* tess, const osg::Vec3&amp; vec, osg::uint index)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="accumulate"></A>
<A NAME="DOC.2.28.11.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void accumulate()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_vertex"></A>
<A NAME="DOC.2.28.11.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>double _vertex[3]</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_Tesselator"></A>
<A NAME="DOC.2.28.11.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Tesselator.html">Tesselator</A>* _Tesselator</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_index"></A>
<A NAME="DOC.2.28.11.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>osg::uint _index</B></TT>
<DL><DT><DD></DL><P></DL>
<A NAME="init"></A>
<A NAME="DOC.2.28.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector&lt;<!1><A HREF="Tesselator.html#DOC.2.28.11">VertexIndexSet</A>&gt; CoordVec void init()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="do_it"></A>
<A NAME="DOC.2.28.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void do_it()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_coordVec"></A>
<A NAME="DOC.2.28.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>CoordVec _coordVec</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_tesselated_indices"></A>
<A NAME="DOC.2.28.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>IndexVec _tesselated_indices</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_currentPrimtiveType"></A>
<A NAME="DOC.2.28.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _currentPrimtiveType</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_acummulated_indices"></A>
<A NAME="DOC.2.28.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>IndexVec _acummulated_indices</B></TT>
<DL><DT><DD></DL><P></DL>
<HR><DL><DT><B>This class has no child classes.</B></DL>
<DL><DT><DT><B>Friends:</B><DD> struct <!1><A HREF="Tesselator.html#DOC.2.28.11">VertexIndexSet</A><BR><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>