OpenSceneGraph/doc/doc++/osg/Vec4f.html
Robert Osfield ed10594139 Updated docs
2004-08-06 06:53:36 +00:00

299 lines
17 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class osg::Vec4f</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.6">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class <A HREF="#DOC.DOCU">osg::Vec4f</A></H2></H2><BLOCKQUOTE>General purpose float quad, uses include representation of colour coordinates.</BLOCKQUOTE>
<HR>
<DL>
<P><DL>
<DT><H3>Public Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.2">_v</A></B>[4]
</DL></P>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.274.3">Vec4f</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.274.4">Vec4f</A></B>(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.14">x</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.15">y</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.16">z</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.274.5">Vec4f</A></B>(const <!1><A HREF="Vec3f.html">Vec3f</A>&amp; v3, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.274.6">operator == </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.274.7">operator != </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.274.8">operator < </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>* <B><A HREF="#DOC.2.274.9">ptr</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>* <B><A HREF="#DOC.2.274.10">ptr</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.274.11">set</A></B>( <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.14">x</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.15">y</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.16">z</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; <B><A HREF="#DOC.2.274.12">operator [] </A></B>(unsigned int i)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.13">operator [] </A></B>(unsigned int i) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; <B><A HREF="#DOC.2.274.14">x</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; <B><A HREF="#DOC.2.274.15">y</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; <B><A HREF="#DOC.2.274.16">z</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; <B><A HREF="#DOC.2.274.17">w</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.18">x</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.19">y</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.20">z</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.21">w</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned long <B><A HREF="#DOC.2.274.22">asABGR</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned long <B><A HREF="#DOC.2.274.23">asRGBA</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.274.24">valid</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.274.25">isNaN</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.26">operator * </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const
<DD><I>dot product</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A> <B><A HREF="#DOC.2.274.27">operator * </A></B>(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs) const
<DD><I>multiply by scalar</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; <B><A HREF="#DOC.2.274.28">operator *= </A></B>(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs)
<DD><I>unary multiply by scalar</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A> <B><A HREF="#DOC.2.274.29">operator / </A></B>(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs) const
<DD><I>divide by scalar</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; <B><A HREF="#DOC.2.274.30">operator /= </A></B>(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs)
<DD><I>unary divide by scalar</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A> <B><A HREF="#DOC.2.274.31">operator + </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const
<DD><I>binary vector add</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; <B><A HREF="#DOC.2.274.32">operator += </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs)
<DD><I>unary vector add.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A> <B><A HREF="#DOC.2.274.33">operator - </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const
<DD><I>binary vector subtract</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; <B><A HREF="#DOC.2.274.34">operator -= </A></B>(const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs)
<DD><I>unary vector subtract</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Vec4f.html">Vec4f</A> <B><A HREF="#DOC.2.274.35">operator - </A></B>() const
<DD><I>negation operator.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.36">length</A></B>() const
<DD><I>Length of the vector = sqrt( vec .</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.37">length2</A></B>() const
<DD><I>Length squared of the vector = vec .</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <B><A HREF="#DOC.2.274.38">normalize</A></B>()
<DD><I>normalize the vector so that it has length unity returns the previous length of the vector</I>
</DL></P>
<P><DL>
<DT><H3>Public</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef float <B><A HREF="#DOC.2.274.1">value_type</A></B>
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>General purpose float quad, uses include representation
of colour coordinates.
No support yet added for float * Vec4f - is it necessary?
Need to define a non-member non-friend operator* etc.
Vec4f * float is okay</BLOCKQUOTE>
<DL>
<A NAME="value_type"></A>
<A NAME="DOC.2.274.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef float value_type</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_v"></A>
<A NAME="DOC.2.274.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> _v[4]</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Vec4f"></A>
<A NAME="DOC.2.274.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Vec4f()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Vec4f"></A>
<A NAME="DOC.2.274.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Vec4f(<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.14">x</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.15">y</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.16">z</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Vec4f"></A>
<A NAME="DOC.2.274.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Vec4f(const <!1><A HREF="Vec3f.html">Vec3f</A>&amp; v3, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator == "></A>
<A NAME="DOC.2.274.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool operator == (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator != "></A>
<A NAME="DOC.2.274.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool operator != (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator < "></A>
<A NAME="DOC.2.274.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool operator < (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; v) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="ptr"></A>
<A NAME="DOC.2.274.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>* ptr()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="ptr"></A>
<A NAME="DOC.2.274.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>* ptr() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="set"></A>
<A NAME="DOC.2.274.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void set( <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.14">x</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.15">y</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.16">z</A>, <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> <!1><A HREF="Vec4f.html#DOC.2.274.17">w</A>)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator [] "></A>
<A NAME="DOC.2.274.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; operator [] (unsigned int i)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator [] "></A>
<A NAME="DOC.2.274.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> operator [] (unsigned int i) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="x"></A>
<A NAME="DOC.2.274.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; x()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="y"></A>
<A NAME="DOC.2.274.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; y()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="z"></A>
<A NAME="DOC.2.274.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; z()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="w"></A>
<A NAME="DOC.2.274.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A>&amp; w()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="x"></A>
<A NAME="DOC.2.274.18"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> x() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="y"></A>
<A NAME="DOC.2.274.19"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> y() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="z"></A>
<A NAME="DOC.2.274.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> z() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="w"></A>
<A NAME="DOC.2.274.21"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> w() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="asABGR"></A>
<A NAME="DOC.2.274.22"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned long asABGR() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="asRGBA"></A>
<A NAME="DOC.2.274.23"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned long asRGBA() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="valid"></A>
<A NAME="DOC.2.274.24"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool valid() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="isNaN"></A>
<A NAME="DOC.2.274.25"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool isNaN() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator * "></A>
<A NAME="DOC.2.274.26"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> operator * (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const </B></TT>
<DD>dot product
<DL><DT><DD></DL><P>
<A NAME="operator * "></A>
<A NAME="DOC.2.274.27"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A> operator * (<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs) const </B></TT>
<DD>multiply by scalar
<DL><DT><DD></DL><P>
<A NAME="operator *= "></A>
<A NAME="DOC.2.274.28"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; operator *= (<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs)</B></TT>
<DD>unary multiply by scalar
<DL><DT><DD></DL><P>
<A NAME="operator / "></A>
<A NAME="DOC.2.274.29"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A> operator / (<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs) const </B></TT>
<DD>divide by scalar
<DL><DT><DD></DL><P>
<A NAME="operator /= "></A>
<A NAME="DOC.2.274.30"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; operator /= (<!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> rhs)</B></TT>
<DD>unary divide by scalar
<DL><DT><DD></DL><P>
<A NAME="operator + "></A>
<A NAME="DOC.2.274.31"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A> operator + (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const </B></TT>
<DD>binary vector add
<DL><DT><DD></DL><P>
<A NAME="operator += "></A>
<A NAME="DOC.2.274.32"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; operator += (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs)</B></TT>
<DD>unary vector add. Slightly more efficient because no temporary
intermediate object
<DL><DT><DD></DL><P>
<A NAME="operator - "></A>
<A NAME="DOC.2.274.33"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A> operator - (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs) const </B></TT>
<DD>binary vector subtract
<DL><DT><DD></DL><P>
<A NAME="operator -= "></A>
<A NAME="DOC.2.274.34"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html">Vec4f</A>&amp; operator -= (const <!1><A HREF="Vec4f.html">Vec4f</A>&amp; rhs)</B></TT>
<DD>unary vector subtract
<DL><DT><DD></DL><P>
<A NAME="operator - "></A>
<A NAME="DOC.2.274.35"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Vec4f.html">Vec4f</A> operator - () const </B></TT>
<DD>negation operator. Returns the negative of the Vec4f
<DL><DT><DD></DL><P>
<A NAME="length"></A>
<A NAME="DOC.2.274.36"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> length() const </B></TT>
<DD>Length of the vector = sqrt( vec . vec )
<DL><DT><DD></DL><P>
<A NAME="length2"></A>
<A NAME="DOC.2.274.37"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> length2() const </B></TT>
<DD>Length squared of the vector = vec . vec
<DL><DT><DD></DL><P>
<A NAME="normalize"></A>
<A NAME="DOC.2.274.38"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="Vec4f.html#DOC.2.274.1">value_type</A> normalize()</B></TT>
<DD>normalize the vector so that it has length unity
returns the previous length of the vector
<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> inline std::ostream& operator << (std::ostream& output, const <!1><A HREF="Vec4f.html">Vec4f</A>& vec)<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://www.linuxsupportline.com/~doc++">DOC++</A>.
</BODY>
</HTML>