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>MTXMultVecSR</TITLE> 9</HEAD> 10<BODY> 11<H1>MTXMultVecSR</H1> 12 13<H2>Syntax</H2> 14<dl><dd><pre class="construction"> 15#include <revolution/mtx.h> 16 17void C_MTXMultVecSR ( const Mtx m, const Vec* src, Vec* dst ); 18void PSMTXMultVecSR ( const Mtx m, const Vec* src, Vec* dst ); 19 20#define MTXMultVecSR C_MTXMultVecSR // for debug build 21#define MTXMultVecSR PSMTXMultVecSR // for nondebug build 22</pre></dd></dl> 23 24<H2>Arguments</H2> 25<TABLE class="arguments" border="1" > 26 <TBODY> 27 <TR> 28<TH>m</TH> 29<TD>Source matrix to multiply. <SPAN class="argument">m</SPAN> is not altered by this function. <code><em><strong>m</strong></em></code> may be either a <a href="../Structures/Mtx_MtxPtr.html"><code>Mtx</code></a> or a <a href="../Structures/Mtx_MtxPtr.html"><code>MtxPtr</code></a>.</TD> 30 </TR> 31 <TR> 32<TH>src</TH> 33<TD>Pointer to the source vector (<A href="../structures/Vec_VecPtr.html"><CODE>Vec</CODE></A> type) to be multiplied. <code><em><strong>src</strong></em></code> may also be a pointer to a <code><strong>Point3d</strong></code>.</TD> 34 </TR> 35 <TR> 36<TH>dst</TH> 37<TD>Pointer to resultant (<A href="../structures/Vec_VecPtr.html"><CODE>Vec</CODE></A >, the result of the (<SPAN class="argument">m</SPAN><SUB>3x3</SUB> x <SPAN class="argument">src</SPAN>) multiplication. <code><strong>dst</strong></code> may also be a pointer to a <code><strong>Point3d</strong></code>. OK if <SPAN class="argument">src</SPAN>=<SPAN class="argument">dst</SPAN>. </TD> 38 </TR> 39 </TBODY> 40</TABLE> 41 42<H2>Return Values</H2> 43<P>None.</P> 44 45<H2>Description</H2> 46<P>Pre-multiplies a 3D vector or 3D point and a 3x3 sub-matrix (<u>S</u>cale and <u>R</u>otate component of 3x4 matrix <SPAN class="argument">m</SPAN>).</P> 47<P>During a debug build, <code>MTXMultVecSR</code> is interpreted as <code>C_MTXMultVecSR</code>, which is a normal C language version. During a nondebug build for a Broadway processor, the paired-singles equivalent of this function, <code>PSMTXMultVecSR</code>, will be automatically substituted. You can also call each of <code>C_MTXMultVecSR/PSMTXMultVecSR</code> explicitly.<br></P> 48<TABLE border="0" width="59%" cellpadding="0" cellspacing="0"> 49 <TBODY> 50 <TR> 51 <TD width="4%" nowrap></TD> 52 <TD width="6%" nowrap>| m00 </TD> 53 <TD width="5%" nowrap> m01 </TD> 54 <TD width="6%" nowrap> m02 </TD> 55 <TD width="6%" nowrap> m03 |</TD> 56 <TD width="6%" nowrap></TD> 57 <TD width="7%" nowrap></TD> 58 <TD width="5%" nowrap>| m00 </TD> 59 <TD width="4%" nowrap> m01 </TD> 60 <TD width="4%" nowrap> m02 |</TD> 61 <TD width="22%" nowrap></TD> 62 </TR> 63 <TR> 64 <TD width="4%" nowrap>When <SPAN class="argument">m</SPAN> = </TD> 65 <TD width="6%" nowrap>| m10 </TD> 66 <TD width="5%" nowrap> m11 </TD> 67 <TD width="6%" nowrap> m12 </TD> 68 <TD width="6%" nowrap> m13 |</TD> 69 <TD width="6%" nowrap>,</TD> 70 <TD width="7%" nowrap> <SPAN class="argument">dst</SPAN> = </TD> 71 <TD width="5%" nowrap>| m10 </TD> 72 <TD width="4%" nowrap> m11 </TD> 73 <TD width="4%" nowrap> m12 |</TD> 74 <TD width="22%" nowrap> x <SPAN class="argument">src</SPAN></TD> 75 </TR> 76 <TR> 77 <TD width="4%" nowrap></TD> 78 <TD width="6%" nowrap>| m20 </TD> 79 <TD width="5%" nowrap> m21 </TD> 80 <TD width="6%" nowrap> m22 </TD> 81 <TD width="6%" nowrap> m23 |</TD> 82 <TD width="6%" nowrap></TD> 83 <TD width="7%" nowrap></TD> 84 <TD width="5%" nowrap>| m20 </TD> 85 <TD width="4%" nowrap> m21 </TD> 86 <TD width="4%" nowrap> m22 |</TD> 87 <TD width="22%" nowrap></TD> 88 </TR> 89 </TBODY> 90</TABLE> 91 92<H2>See Also</H2> 93<P class="reference"> 94<A href="../structures/Mtx_MtxPtr.html">Mtx, MtxPtr</A>, 95<A href="../structures/Point3d_Point3dPtr.html">Point3d, Point3dPtr</A>, 96<A href="../structures/Vec_VecPtr.html">Vec, VecPtr</A>, 97<A href="MTXMultVec.html">MTXMultVec</A>, 98<A href="MTXMultVecArray.html">MTXMultVecArray</A>, 99<A href="MTXMultVecArraySR.html">MTXMultVecArraySR</A> 100</P> 101 102<H2>Revision History</H2> 103<P> 1042008/05/26 Corrected errors.<br>2006/03/01 Initial version.<br> 105</P> 106 107<hr><p>CONFIDENTIAL</p></body> 108</HTML>