1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<HTML> 3<HEAD> 4<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 5<META name="GENERATOR" content="Microsoft FrontPage 5.0"> 6<META http-equiv="Content-Style-Type" content="text/css"> 7<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css"> 8<TITLE>VECCrossProduct</TITLE> 9</HEAD> 10<BODY> 11<H1 align="left">VECCrossProduct</H1> 12<H2 align="left">C Specification</H2> 13<BLOCKQUOTE><CODE><CODE>#include <revolution/mtx.h></CODE></CODE></BLOCKQUOTE> 14<BLOCKQUOTE><CODE><CODE>void C_VECCrossProduct ( const Vec* <EM>a</EM>, const Vec* <EM>b</EM>, Vec* <EM>axb</EM> );<BR> void PSVECCrossProduct ( const Vec* <EM>a</EM>, const Vec* <EM>b</EM>, Vec* <EM>axb</EM> );<BR> <BR> #define VECCrossProduct C_VECCrossProduct // for debug build<BR> #define VECCrossProduct PSVECCrossProduct // for nondebug build</CODE></CODE></BLOCKQUOTE> 15<H2 align="left">Arguments</H2> 16<DIV align="left"> 17<TABLE border="1" cellpadding="3" cellspacing="0.1"> 18 <TBODY> 19 <TR> 20<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><CODE><STRONG><EM>a</EM></STRONG></CODE></TD> 21<TD width="520">Pointer to first <CODE><A href="../structures/Vec_VecPtr.html">Vec</A></CODE> for cross product calculation.</TD> 22 </TR> 23 <TR> 24<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><CODE><STRONG><EM><em><strong><code>b</code></strong></em> </EM></STRONG></CODE></TD> 25<TD width="520">Pointer to second <CODE><A href="../structures/Vec_VecPtr.html">Vec</A></CODE> for cross product calculation.</TD> 26 </TR> 27 <TR> 28<TD width="120" valign="top" align="left" bgcolor="#ffffe8"><CODE><STRONG><EM>axb</EM></STRONG></CODE></TD> 29<TD width="520">Pointer to resultant <A href="../structures/Vec_VecPtr.html"><CODE>Vec</CODE></A> ( <code><em><strong>a</strong></em></code> x <code><em><strong>b</strong></em></code> ). Acceptable if <code><em><strong>axb</strong></em> = <em><strong>a</strong></em></code> or <code><em><strong>axb</strong></em> = <em><strong>b</strong></em></code>.</TD> 30 </TR> 31 </TBODY> 32</TABLE> 33</DIV> 34<H2 align="left">Return Values</H2> 35<P align="left">None.</P> 36<H2 align="left">Description</H2> 37<P align="left">Computes the cross product of two vectors ( <code><em><strong>a</strong></em> x <em><strong>b</strong></em></code> ) and places the result in <code><em><strong>axb</strong></em></code>. When using this function, note that the order in which vectors are passed as arguments determines the orientation of the orthogonal vector: ( v1 x v2 ) = -( v2 x v1 ).</P> 38<P>During a debug build, <code>VECCrossProduct</code> is interpreted as <code>C_VECCrossProduct</code>, which is a normal C language version. During a non-debug build for a Broadway processor, the paired-singles equivalent of this function, <code>PSVECCrossProduct</code>, will be automatically substituted. You can also call <code>C_VECCrossProduct</CODE> or <CODE>PSVECCrossProduct</code> explicitly.</P> 39 40 41<H2 align="left">See Also</H2> 42<P align="left"><A href="../structures/Vec_VecPtr.html"><CODE>Vec, VecPtr, </CODE></A></P> 43<P align="left"><A href="VECDotProduct.html"><CODE>VECDotProduct</CODE></A></P> 44<H2>Revision History</H2> 45<P>2006/03/01 Initial version.</P> 46<hr> 47<P>CONFIDENTIAL</p> 48</BODY> 49</HTML>