diff options
Diffstat (limited to 'docs/doxygen/nel/a02462.html')
-rw-r--r-- | docs/doxygen/nel/a02462.html | 2165 |
1 files changed, 2165 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02462.html b/docs/doxygen/nel/a02462.html new file mode 100644 index 00000000..924a55ca --- /dev/null +++ b/docs/doxygen/nel/a02462.html @@ -0,0 +1,2165 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: NL3D::CEvent3dMouseListener class Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CEvent3dMouseListener Class Reference</h1><code>#include <<a class="el" href="a05687.html">event_mouse_listener.h</a>></code> +<p> +<p>Inheritance diagram for NL3D::CEvent3dMouseListener: +<p><center><img src="a02462.png" usemap="#NL3D::CEvent3dMouseListener_map" border="0" alt=""></center> +<map name="NL3D::CEvent3dMouseListener_map"> +<area href="a02464.html" alt="NLMISC::IEventListener" shape="rect" coords="0,0,188,24"> +<area href="a02463.html" alt="NL3D::U3dMouseListener" shape="rect" coords="198,0,386,24"> +</map> +<hr><a name="_details"></a><h2>Detailed Description</h2> +<a class="el" href="a02462.html">CEvent3dMouseListener</a> is a listener that handle a 3d matrix with mouse events. This can be the view matrix, or the matrix of any object. <dl compact><dt><b>Author:</b></dt><dd>Cyril Corvazier <p> +Nevrax France </dd></dl> +<dl compact><dt><b>Date:</b></dt><dd>2000 </dd></dl> + +<p> + +<p> +Definition at line <a class="el" href="a05687.html#l00052">52</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Setup</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> { <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a> = 0, +<a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a> = 1, +<a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a> = 2 + }</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_1">enableModelMatrixEdition</a> (bool enable=true)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">enable / disable model matrix edition mode. (the default deals with the with matrix) <a href="#NL3D_1_1CEvent3dMouseListenerz192_1"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_2">enableModelTranslationAxis</a> (<a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> axis, bool enabled)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_3">enableTranslateXYInWorld</a> (bool enabled)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_4">getModelMatrixRotationAxis</a> (void) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the current axe of rotation for the model matrix <a href="#NL3D_1_1CEvent3dMouseListenerz192_4"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_5">getModelMatrixTransformMove</a> (<a class="el" href="a02851.html">NLMISC::CMatrix</a> &transModelMove) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">see setModelMatrixTransformMove <a href="#NL3D_1_1CEvent3dMouseListenerz192_5"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_6">isModelTranslationEnabled</a> (<a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> axis)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_7">isTranslateXYInWorldEnabled</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_8">setFrustrum</a> (const <a class="el" href="a02562.html">CFrustum</a> &frustrum)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_9">setHotSpot</a> (const <a class="el" href="a03128.html">CVector</a> &hotSpot)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_10">setMatrix</a> (const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &<a class="el" href="a04223.html#a578">matrix</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_11">setModelMatrix</a> (const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &<a class="el" href="a04223.html#a578">matrix</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_12">setModelMatrixRotationAxis</a> (<a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> axis)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">set the current axe of rotation for the model matrix <a href="#NL3D_1_1CEvent3dMouseListenerz192_12"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_13">setModelMatrixTransformMove</a> (const <a class="el" href="a02851.html">NLMISC::CMatrix</a> &transModelMove)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_14">setMouseMode</a> (<a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a> mouseMode)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_15">setSpeed</a> (float speed)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_16">setViewport</a> (const <a class="el" href="a03704.html">NL3D::CViewport</a> &viewport)</td></tr> + +<tr><td colspan=2><br><h2>Get</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_0">addToServer</a> (<a class="el" href="a02479.html">NLMISC::CEventServer</a> &server)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">CVector</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_1">getHotSpot</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_2">getModelMatrix</a> ()</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_3">getViewMatrix</a> ()</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_4">removeFromServer</a> (<a class="el" href="a02479.html">NLMISC::CEventServer</a> &server)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_5">operator()</a> (const <a class="el" href="a02461.html">NLMISC::CEvent</a> &event)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Internal use. <a href="#NL3D_1_1CEvent3dMouseListenerz193_5"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_6">truncateVect</a> (<a class="el" href="a03128.html">CVector</a> &<a class="el" href="a04223.html#a576">v</a>)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02472.html">NLMISC::CEventListenerAsync</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">_CurrentModelRotationAxis</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02562.html">CFrustum</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_10">_Frustrum</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03128.html">CVector</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a13">uint64</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_12">_LastTime</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_13">_LeftPushed</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02851.html">CMatrix</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_15">_MiddlePushed</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02851.html">CMatrix</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02851.html">CMatrix</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_19">_RightPushed</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_20">_Speed</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">_TranslateXYInWorld</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a03704.html">NL3D::CViewport</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">_Viewport</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">_XModelTranslateEnabled</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>float </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_25">_Y</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">_YModelTranslateEnabled</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">_ZModelTranslateEnabled</a></td></tr> + +<tr><td colspan=2><br><h2>Public Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>enum </td><td class="memItemRight" valign=bottom><a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a> { <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw2">nelStyle</a>, +<a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw0">edit3d</a>, +<a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw1">firstPerson</a> + }</td></tr> + +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenera0">CEvent3dMouseListener</a> ()</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="a02464.html#NLMISC_1_1IEventListenera1">operator()</a> (const <a class="el" href="a02461.html">CEvent</a> &event)=0</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual </td><td class="memItemRight" valign=bottom><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenera2">~CEvent3dMouseListener</a> ()</td></tr> + +</table> +<hr><h2>Member Enumeration Documentation</h2> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_0" doxytag="NL3D::CEvent3dMouseListener::TAxis" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">NL3D::CEvent3dMouseListener::TAxis</a> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4" doxytag="xAxis" ></a>xAxis</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5" doxytag="yAxis" ></a>yAxis</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6" doxytag="zAxis" ></a>zAxis</em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a05687.html#l00157">157</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05687.html#l00163">getModelMatrixRotationAxis()</a>. +<p> +<div class="fragment"><pre>00157 { <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a> = 0, <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a> = 1, <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a> = 2 } ; +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1U3dMouseListenerw3" doxytag="NL3D::CEvent3dMouseListener::TMouseMode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> enum <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">NL3D::U3dMouseListener::TMouseMode</a><code> [inherited]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Mouse mode. There is two move modes: 3d editor style and NeL style. Default mode is NeL style.<p> +(nelStyle) NeL style is: MouseRotateHotSpot: CTRL + RIGHTMOUSE MouseTranslateXYHotSpot: CTRL + LEFTMOUSE MouseTranslateZHotSpot: CTRL + SHIFT + LEFTMOUSE MouseZoomHotSpot: ALT + LEFTMOUSE<p> +(edit3dStyle) 3d editor style is: MouseRotateHotSpot: ALT + MIDDLEMOUSE MouseTranslateXYHotSpot: MIDDLEMOUSE MouseTranslateZHotSpot: CTRL + MIDDLEMOUSE<p> +(firstPerson) First person shoorter style is: MouseRotateView: MOUSE MOVE KeyUp: MOVE FORWARD KeyDown: MOVE BACKWARD Left: STRAF LEFT Right: STRAF RIGHT PageUp: MOVE UP PageDown: MOVE DOWN<dl compact><dt><b>Enumeration values: </b></dt><dd> +<table border=0 cellspacing=2 cellpadding=0> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw2" doxytag="nelStyle" ></a>nelStyle</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw0" doxytag="edit3d" ></a>edit3d</em> </td><td> +</td></tr> +<tr><td valign=top><em><a class="anchor" name="NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw1" doxytag="firstPerson" ></a>firstPerson</em> </td><td> +</td></tr> +</table> +</dl> + +<p> +Definition at line <a class="el" href="a06591.html#l00070">70</a> of file <a class="el" href="a06591.html">u_3d_mouse_listener.h</a>. +<p> +<div class="fragment"><pre>00070 { <a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw2">nelStyle</a>, <a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw0">edit3d</a>, <a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw1">firstPerson</a> }; +</pre></div> </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenera0" doxytag="NL3D::CEvent3dMouseListener::CEvent3dMouseListener" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NL3D::CEvent3dMouseListener::CEvent3dMouseListener </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Constructor. You should call setMatrix, setFrustrum, setViewport, setHotStop and setMouseMode to initialize the whole object. By default, the viewmatrix is identity, the frustrum is (-1,1,-1,1,1,-1), the hot spot is (0,0,0) and the viewport is fullscreen. The mouse mode is set to the NelStyle. +<p> +Definition at line <a class="el" href="a05686.html#l00040">40</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00263">_EnableModelMatrixEdition</a>, <a class="el" href="a05687.html#l00264">_Frustrum</a>, <a class="el" href="a05687.html#l00265">_HotSpot</a>, <a class="el" href="a05687.html#l00273">_LastTime</a>, <a class="el" href="a05687.html#l00261">_Matrix</a>, <a class="el" href="a05687.html#l00262">_ModelMatrix</a>, <a class="el" href="a05687.html#l00274">_MouseMode</a>, <a class="el" href="a05687.html#l00275">_TranslateXYInWorld</a>, <a class="el" href="a05687.html#l00266">_Viewport</a>, <a class="el" href="a05972.html#l00200">NLMISC::CMatrix::identity()</a>, <a class="el" href="a05732.html#l00039">NL3D::CFrustum::init()</a>, <a class="el" href="a06722.html#l00059">NL3D::CViewport::initFullScreen()</a>, <a class="el" href="a06682.html#l00136">NLMISC::CVector::set()</a>, and <a class="el" href="a05687.html#l00202">setSpeed()</a>. +<p> +<div class="fragment"><pre>00040 : <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">_CurrentModelRotationAxis</a>(zAxis) +00041 ,<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">_XModelTranslateEnabled</a>(<span class="keyword">true</span>) +00042 ,<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">_YModelTranslateEnabled</a>(<span class="keyword">true</span>) +00043 ,<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">_ZModelTranslateEnabled</a>(<span class="keyword">true</span>) +00044 { +00045 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>.identity(); +00046 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.identity() ; +00047 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a> = <span class="keyword">false</span> ; +00048 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>.set (0,0,0); +00049 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">_Viewport</a>.<a class="code" href="a03704.html#NL3D_1_1CViewporta9">initFullScreen</a>(); +00050 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_10">_Frustrum</a>.init (2.f, 2.f, -1.f, 1.f); +00051 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a>=<a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw2">nelStyle</a>; +00052 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_15">setSpeed</a> (10.f); +00053 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_12">_LastTime</a>=CTime::getLocalTime (); +00054 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">_TranslateXYInWorld</a>= <span class="keyword">false</span>; +00055 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenera2" doxytag="NL3D::CEvent3dMouseListener::~CEvent3dMouseListener" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> virtual NL3D::CEvent3dMouseListener::~<a class="el" href="a02462.html">CEvent3dMouseListener</a> </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05687.html#l00088">88</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +<div class="fragment"><pre>00088 {} +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_0" doxytag="NL3D::CEvent3dMouseListener::addToServer" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::addToServer </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02479.html">NLMISC::CEventServer</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>server</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05686.html#l00323">323</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00276">_AsyncListener</a>, <a class="el" href="a05688.html#l00105">NLMISC::CEventServer::addListener()</a>, <a class="el" href="a05684.html#l00058">NLMISC::CEventListenerAsync::addToServer()</a>, <a class="el" href="a05378.html#a54">NLMISC::EventMouseDownId</a>, <a class="el" href="a05378.html#a53">NLMISC::EventMouseMoveId</a>, <a class="el" href="a05378.html#a55">NLMISC::EventMouseUpId</a>, and <a class="el" href="a05378.html#a57">NLMISC::EventMouseWheelId</a>. +<p> +Referenced by <a class="el" href="a05657.html#l01091">NL3D::CDriverUser::create3dMouseListener()</a>. +<p> +<div class="fragment"><pre>00324 { +00325 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera1">addListener</a> (EventMouseMoveId, <span class="keyword">this</span>); +00326 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera1">addListener</a> (EventMouseDownId, <span class="keyword">this</span>); +00327 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera1">addListener</a> (EventMouseUpId, <span class="keyword">this</span>); +00328 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera1">addListener</a> (EventMouseWheelId, <span class="keyword">this</span>); +00329 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca0">addToServer</a> (server); +00330 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_1" doxytag="NL3D::CEvent3dMouseListener::enableModelMatrixEdition" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::enableModelMatrixEdition </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool </td> + <td class="mdname1" valign="top" nowrap> <em>enable</em> = true </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +enable / disable model matrix edition mode. (the default deals with the with matrix) +<p> + +<p> +Definition at line <a class="el" href="a05687.html#l00152">152</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00263">_EnableModelMatrixEdition</a>. +<p> +<div class="fragment"><pre>00153 { +00154 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a> = enable ; +00155 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_2" doxytag="NL3D::CEvent3dMouseListener::enableModelTranslationAxis" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::enableModelTranslationAxis </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> </td> + <td class="mdname" nowrap> <em>axis</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>enabled</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +enable / disable an axe for translation (model matrix) <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>axis</em> </td><td>the axis to enable / diable </td></tr> + <tr><td valign=top><em>enabled</em> </td><td>true if the trnaslation is permitted on that axis</td></tr> + </table> +</dl> + +<p> +Definition at line <a class="el" href="a05686.html#l00059">59</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00257">_XModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00258">_YModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00259">_ZModelTranslateEnabled</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a>, and <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a>. +<p> +<div class="fragment"><pre>00060 { +00061 <span class="keywordflow">switch</span> (axis) +00062 { +00063 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a>: <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">_XModelTranslateEnabled</a> = enabled ; <span class="keywordflow">break</span> ; +00064 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a>: <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">_YModelTranslateEnabled</a> = enabled ; <span class="keywordflow">break</span> ; +00065 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a>: <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">_ZModelTranslateEnabled</a> = enabled ; <span class="keywordflow">break</span> ; +00066 } +00067 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_3" doxytag="NL3D::CEvent3dMouseListener::enableTranslateXYInWorld" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::enableTranslateXYInWorld </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">bool </td> + <td class="mdname1" valign="top" nowrap> <em>enabled</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +if true, XY translation is made in XY World plane (instead of XY view plane). false by default. +<p> +Definition at line <a class="el" href="a05686.html#l00412">412</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00275">_TranslateXYInWorld</a>. +<p> +<div class="fragment"><pre>00413 { +00414 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">_TranslateXYInWorld</a>= enabled; +00415 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_1" doxytag="NL3D::CEvent3dMouseListener::getHotSpot" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">CVector</a> NL3D::CEvent3dMouseListener::getHotSpot </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get the current hot spot. <dl compact><dt><b>Returns:</b></dt><dd>the target used when the mouse move. It can be for exemple the center. of the selected object. The hotspot is not modified by mouse events. </dd></dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_3">getViewMatrix()</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1368_0">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00235">235</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00265">_HotSpot</a>. +<p> +<div class="fragment"><pre>00236 { +00237 <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>; +00238 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_2" doxytag="NL3D::CEvent3dMouseListener::getModelMatrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a>& NL3D::CEvent3dMouseListener::getModelMatrix </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get the current model matrix. <dl compact><dt><b>Returns:</b></dt><dd>The current view matrix. </dd></dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_11">setModelMatrix()</a></dd></dl> + +<p> +Definition at line <a class="el" href="a05687.html#l00222">222</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00262">_ModelMatrix</a>. +<p> +<div class="fragment"><pre>00223 { +00224 <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a> ; +00225 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_4" doxytag="NL3D::CEvent3dMouseListener::getModelMatrixRotationAxis" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> NL3D::CEvent3dMouseListener::getModelMatrixRotationAxis </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">void </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the current axe of rotation for the model matrix +<p> + +<p> +Definition at line <a class="el" href="a05687.html#l00163">163</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00256">_CurrentModelRotationAxis</a>, and <a class="el" href="a05687.html#l00157">TAxis</a>. +<p> +<div class="fragment"><pre>00163 { <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">_CurrentModelRotationAxis</a> ;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_5" doxytag="NL3D::CEvent3dMouseListener::getModelMatrixTransformMove" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::getModelMatrixTransformMove </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>transModelMove</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +see setModelMatrixTransformMove +<p> + +<p> +Definition at line <a class="el" href="a05686.html#l00422">422</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00278">_ModelMatrixTransformMove</a>. +<p> +<div class="fragment"><pre>00423 { +00424 transModelMove= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a>; +00425 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_3" doxytag="NL3D::CEvent3dMouseListener::getViewMatrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & NL3D::CEvent3dMouseListener::getViewMatrix </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get the current view matrix. <dl compact><dt><b>Returns:</b></dt><dd>The current view matrix. </dd></dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_10">setMatrix()</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1368_1">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05686.html#l00341">341</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00276">_AsyncListener</a>, <a class="el" href="a05687.html#l00273">_LastTime</a>, <a class="el" href="a05687.html#l00261">_Matrix</a>, <a class="el" href="a05687.html#l00274">_MouseMode</a>, <a class="el" href="a05687.html#l00272">_Speed</a>, <a class="el" href="a05973.html#l00198">NLMISC::CMatrix::getPos()</a>, <a class="el" href="a05684.html#l00072">NLMISC::CEventListenerAsync::isKeyDown()</a>, <a class="el" href="a05378.html#a442a127">NLMISC::KeyDOWN</a>, <a class="el" href="a05378.html#a442a124">NLMISC::KeyLEFT</a>, <a class="el" href="a05378.html#a442a121">NLMISC::KeyNEXT</a>, <a class="el" href="a05378.html#a442a120">NLMISC::KeyPRIOR</a>, <a class="el" href="a05378.html#a442a126">NLMISC::KeyRIGHT</a>, <a class="el" href="a05378.html#a442a125">NLMISC::KeyUP</a>, <a class="el" href="a05972.html#l01244">NLMISC::CMatrix::mulVector()</a>, <a class="el" href="a06682.html#l00119">NLMISC::CVector::normalize()</a>, <a class="el" href="a05972.html#l00267">NLMISC::CMatrix::setPos()</a>, and <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +<div class="fragment"><pre>00342 { +00343 <span class="comment">// Mode first person ?</span> +00344 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a>==<a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw1">firstPerson</a>) +00345 { +00346 <span class="comment">// CVector</span> +00347 CVector dir (0,0,0); +00348 <span class="keywordtype">bool</span> find=<span class="keyword">false</span>; +00349 +00350 <span class="comment">// Key pushed ?</span> +00351 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyUP)) +00352 { +00353 dir+=CVector (0, 1, 0); +00354 find=<span class="keyword">true</span>; +00355 } +00356 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyDOWN)) +00357 { +00358 dir+=CVector (0, -1, 0); +00359 find=<span class="keyword">true</span>; +00360 } +00361 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyRIGHT)) +00362 { +00363 dir+=CVector (1, 0, 0); +00364 find=<span class="keyword">true</span>; +00365 } +00366 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyLEFT)) +00367 { +00368 dir+=CVector (-1, 0, 0); +00369 find=<span class="keyword">true</span>; +00370 } +00371 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyNEXT)) +00372 { +00373 dir+=CVector (0, 0, -1); +00374 find=<span class="keyword">true</span>; +00375 } +00376 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (KeyPRIOR)) +00377 { +00378 dir+=CVector (0, 0, 1); +00379 find=<span class="keyword">true</span>; +00380 } +00381 +00382 <span class="comment">// key found ?</span> +00383 <span class="keywordflow">if</span> (find) +00384 { +00385 <span class="comment">// Time elapsed</span> +00386 <a class="code" href="a04558.html#a11">uint32</a> milli=(<a class="code" href="a04558.html#a11">uint32</a>)(CTime::getLocalTime ()-<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_12">_LastTime</a>); +00387 +00388 <span class="comment">// Speed</span> +00389 <span class="keywordtype">float</span> dPos=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_20">_Speed</a>*(<span class="keywordtype">float</span>)milli/1000.f; +00390 +00391 <span class="comment">// Good direction</span> +00392 dir.normalize (); +00393 dir*=dPos; +00394 +00395 <span class="comment">// Orientation</span> +00396 dir=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>.mulVector (dir); +00397 +00398 <span class="comment">// New position</span> +00399 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>.setPos (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>.getPos ()+dir); +00400 } +00401 } +00402 +00403 <span class="comment">// Last time</span> +00404 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_12">_LastTime</a>=CTime::getLocalTime (); +00405 +00406 +00407 <span class="comment">// Return the matrix</span> +00408 <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>; +00409 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_6" doxytag="NL3D::CEvent3dMouseListener::isModelTranslationEnabled" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NL3D::CEvent3dMouseListener::isModelTranslationEnabled </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> </td> + <td class="mdname1" valign="top" nowrap> <em>axis</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +check wether translation on the given axis is permitted <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>axis</em> </td><td>the axis to check </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>true if translation is permitted</dd></dl> + +<p> +Definition at line <a class="el" href="a05686.html#l00069">69</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00257">_XModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00258">_YModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00259">_ZModelTranslateEnabled</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a>, and <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a>. +<p> +<div class="fragment"><pre>00070 { +00071 <span class="keywordflow">switch</span> (axis) +00072 { +00073 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a>: <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">_XModelTranslateEnabled</a> ; <span class="keywordflow">break</span> ; +00074 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a>: <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">_YModelTranslateEnabled</a> ; <span class="keywordflow">break</span> ; +00075 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a>: <span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">_ZModelTranslateEnabled</a> ; <span class="keywordflow">break</span> ; +00076 <span class="keywordflow">default</span>: <span class="keywordflow">return</span> <span class="keyword">false</span> ; <span class="keywordflow">break</span> ; +00077 } +00078 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_7" doxytag="NL3D::CEvent3dMouseListener::isTranslateXYInWorldEnabled" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NL3D::CEvent3dMouseListener::isTranslateXYInWorldEnabled </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +<dl compact><dt><b>See also:</b></dt><dd>translateXYInWorld()</dd></dl> + +<p> +Definition at line <a class="el" href="a05687.html#l00195">195</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00275">_TranslateXYInWorld</a>. +<p> +<div class="fragment"><pre>00195 {<span class="keywordflow">return</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">_TranslateXYInWorld</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLMISC_1_1IEventListenera1" doxytag="NL3D::CEvent3dMouseListener::operator()" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> virtual void NLMISC::IEventListener::operator() </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02461.html">CEvent</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>event</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [pure virtual, inherited]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Call back of the listener. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>event</em> </td><td>is the event send to the listener</td></tr> + </table> +</dl> + +<p> +Implemented in <a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncb0">NLMISC::CEventListenerAsync</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_5" doxytag="NL3D::CEvent3dMouseListener::operator()" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::operator() </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02461.html">NLMISC::CEvent</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>event</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [private, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Internal use. +<p> + +<p> +Definition at line <a class="el" href="a05686.html#l00089">89</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00256">_CurrentModelRotationAxis</a>, <a class="el" href="a05687.html#l00263">_EnableModelMatrixEdition</a>, <a class="el" href="a05687.html#l00264">_Frustrum</a>, <a class="el" href="a05687.html#l00265">_HotSpot</a>, <a class="el" href="a05687.html#l00261">_Matrix</a>, <a class="el" href="a05687.html#l00262">_ModelMatrix</a>, <a class="el" href="a05687.html#l00278">_ModelMatrixTransformMove</a>, <a class="el" href="a05687.html#l00274">_MouseMode</a>, <a class="el" href="a05687.html#l00275">_TranslateXYInWorld</a>, <a class="el" href="a05687.html#l00266">_Viewport</a>, <a class="el" href="a05687.html#l00270">_X</a>, <a class="el" href="a05687.html#l00271">_Y</a>, <a class="el" href="a05378.html#a443a214">NLMISC::altButton</a>, <a class="el" href="a05691.html#l00330">NLMISC::CEventMouse::Button</a>, <a class="el" href="a05378.html#a443a212">NLMISC::ctrlButton</a>, <a class="el" href="a05691.html#l00411">NLMISC::CEventMouseWheel::Direction</a>, <a class="el" href="a05378.html#a54">NLMISC::EventMouseDownId</a>, <a class="el" href="a05378.html#a53">NLMISC::EventMouseMoveId</a>, <a class="el" href="a05378.html#a55">NLMISC::EventMouseUpId</a>, <a class="el" href="a05378.html#a57">NLMISC::EventMouseWheelId</a>, <a class="el" href="a05972.html#l00419">NLMISC::CMatrix::getI()</a>, <a class="el" href="a05972.html#l00427">NLMISC::CMatrix::getJ()</a>, <a class="el" href="a05972.html#l00435">NLMISC::CMatrix::getK()</a>, <a class="el" href="a05973.html#l00198">NLMISC::CMatrix::getPos()</a>, <a class="el" href="a06722.html#l00081">NL3D::CViewport::getRayWithPoint()</a>, <a class="el" href="a05972.html#l00200">NLMISC::CMatrix::identity()</a>, <a class="el" href="a06172.html#l00051">NLMISC::CPlane::intersect()</a>, <a class="el" href="a05972.html#l00914">NLMISC::CMatrix::invert()</a>, <a class="el" href="a05378.html#a443a209">NLMISC::leftButton</a>, <a class="el" href="a06170.html#l00036">NLMISC::CPlane::make()</a>, <a class="el" href="a05378.html#a443a210">NLMISC::middleButton</a>, <a class="el" href="a06682.html#l00119">NLMISC::CVector::normalize()</a>, <a class="el" href="a05972.html#l01170">NLMISC::CMatrix::normalize()</a>, <a class="el" href="a05587.html#l00079">NLMISC::Pi</a>, <a class="el" href="a05646.html#l00993">r</a>, <a class="el" href="a05378.html#a443a211">NLMISC::rightButton</a>, <a class="el" href="a05972.html#l00618">NLMISC::CMatrix::rotate()</a>, <a class="el" href="a05972.html#l00498">NLMISC::CMatrix::rotateX()</a>, <a class="el" href="a05972.html#l00578">NLMISC::CMatrix::rotateZ()</a>, <a class="el" href="a05972.html#l00267">NLMISC::CMatrix::setPos()</a>, <a class="el" href="a05378.html#a443a213">NLMISC::shiftButton</a>, <a class="el" href="a05686.html#l00081">truncateVect()</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a05691.html#l00329">NLMISC::CEventMouse::X</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, <a class="el" href="a05691.html#l00329">NLMISC::CEventMouse::Y</a>, <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>, and <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a>. +<p> +<div class="fragment"><pre>00090 { +00091 <a class="code" href="a02473.html">CEventMouse</a>* mouseEvent=(<a class="code" href="a02473.html">CEventMouse</a>*)&event; +00092 <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a53">EventMouseMoveId</a>) +00093 { +00094 <span class="keywordtype">bool</span> bRotate=<span class="keyword">false</span>; +00095 <span class="keywordtype">bool</span> bTranslateXY=<span class="keyword">false</span>; +00096 <span class="keywordtype">bool</span> bTranslateZ=<span class="keyword">false</span>; +00097 <span class="keywordtype">bool</span> bZoom=<span class="keyword">false</span>; +00098 +00099 +00100 <span class="comment">// Rotate Axis</span> +00101 CVector axis; +00102 +00103 <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a>==<a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw2">nelStyle</a>) +00104 { +00105 bRotate=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a211">rightButton</a>)); +00106 bTranslateXY=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)); +00107 bTranslateZ=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a213">shiftButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)); +00108 bZoom=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a214">altButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)); +00109 axis=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>; +00110 } +00111 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a>==<a class="code" href="a02463.html#NL3D_1_1U3dMouseListenerw3NL3D_1_1U3dMouseListenerw0">edit3d</a>) +00112 { +00113 bRotate=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a214">altButton</a>|<a class="code" href="a05378.html#a443a210">middleButton</a>)) || (mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a214">altButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)); +00114 bTranslateXY=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)) || (mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==<a class="code" href="a05378.html#a443a210">middleButton</a>); +00115 bTranslateZ=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a213">shiftButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)) || (mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a210">middleButton</a>)); +00116 bZoom=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a213">shiftButton</a>|<a class="code" href="a05378.html#a443a209">leftButton</a>)) || (mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>==(<a class="code" href="a05378.html#a443a212">ctrlButton</a>|<a class="code" href="a05378.html#a443a214">altButton</a>|<a class="code" href="a05378.html#a443a210">middleButton</a>)); +00117 axis=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>; +00118 } +00119 <span class="keywordflow">else</span> <span class="comment">// if (_MouseMode==firstPerson)</span> +00120 { +00121 bRotate=(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo0">Button</a>&<a class="code" href="a05378.html#a443a209">leftButton</a>)!=0; +00122 bTranslateXY=<span class="keyword">false</span>; +00123 bTranslateZ=<span class="keyword">false</span>; +00124 bZoom=<span class="keyword">false</span>; +00125 axis=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>.getPos(); +00126 } +00127 +00128 <span class="keywordflow">if</span> (bRotate) +00129 { +00130 <span class="keywordflow">if</span> (!<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00131 { +00132 <span class="comment">// First in the hotSpot</span> +00133 CMatrix comeFromHotSpot=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>; +00134 comeFromHotSpot.setPos (axis); +00135 +00136 <span class="comment">// Then turn along the Z axis with X mouse</span> +00137 CMatrix turnZ; +00138 turnZ.identity(); +00139 turnZ.rotateZ ((<span class="keywordtype">float</span>) Pi*2.f*(_X-mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>)); +00140 +00141 <span class="comment">// Then turn along the X axis with Y mouse</span> +00142 CMatrix turnX; +00143 turnX.identity(); +00144 turnX.rotateX ((<span class="keywordtype">float</span>) Pi*2.f*(mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo4">Y</a>-_Y)); +00145 +00146 <span class="comment">// Then come back from hotspot</span> +00147 CMatrix goToHotSpot=comeFromHotSpot; +00148 goToHotSpot.invert(); +00149 +00150 <span class="comment">// Make the matrix</span> +00151 CMatrix negPivot, Pivot; +00152 negPivot.identity(); +00153 negPivot.setPos (-axis); +00154 Pivot.identity(); +00155 Pivot.setPos (axis); +00156 +00157 <span class="comment">// Make this transformation \\//</span> +00158 <span class="comment">//_Matrix=Pivot*turnZ*negPivot*comeFromHotSpot*turnX*goToHotSpot*_Matrix;</span> +00159 Pivot*=turnZ; +00160 Pivot*=negPivot; +00161 Pivot*=comeFromHotSpot; +00162 Pivot*=turnX; +00163 Pivot*=goToHotSpot; +00164 +00165 +00166 Pivot*=_Matrix; +00167 _Matrix=Pivot; +00168 <span class="comment">// Normalize, too much transformation could give an ugly matrix..</span> +00169 _Matrix.normalize (CMatrix::XYZ); +00170 +00171 } +00172 <span class="keywordflow">else</span> +00173 { +00174 CVector pos = <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos() ; +00175 <a class="code" href="a03296.html">NLMISC::CQuat</a> <a class="code" href="a04223.html#a628">r</a> ; +00176 <span class="keywordflow">switch</span> (<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">_CurrentModelRotationAxis</a>) +00177 { +00178 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw4">xAxis</a> : <a class="code" href="a04223.html#a628">r</a> = CQuat(<a class="code" href="a02195.html">CAngleAxis</a>(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getI(), (<span class="keywordtype">float</span>) <a class="code" href="a05378.html#a44">Pi</a>*2.f*(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>-mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>))) ; <span class="keywordflow">break</span> ; +00179 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw5">yAxis</a> : <a class="code" href="a04223.html#a628">r</a> = CQuat(<a class="code" href="a02195.html">CAngleAxis</a>(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getJ(), (<span class="keywordtype">float</span>) <a class="code" href="a05378.html#a44">Pi</a>*2.f*(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>-mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>))) ; <span class="keywordflow">break</span> ; +00180 <span class="keywordflow">case</span> <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0NL3D_1_1CEvent3dMouseListenerw6">zAxis</a> : <a class="code" href="a04223.html#a628">r</a> = CQuat(<a class="code" href="a02195.html">CAngleAxis</a>(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getK(), (<span class="keywordtype">float</span>) <a class="code" href="a05378.html#a44">Pi</a>*2.f*(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>-mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>))) ; <span class="keywordflow">break</span> ; +00181 } ; +00182 +00183 +00184 CMatrix rm ; +00185 rm.rotate(r) ; +00186 +00187 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a> = rm * <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a> ; +00188 _ModelMatrix.setPos(pos) ; +00189 +00190 _ModelMatrix.normalize (CMatrix::XYZ); +00191 } +00192 } +00193 +00194 +00195 <span class="keywordflow">if</span> (bTranslateXY||bTranslateZ||bZoom) +00196 { +00197 <span class="comment">// Move in plane</span> +00198 +00199 CPlane plane; +00200 +00201 <span class="comment">// For precision problem, do all the compute local to the hotspot/model.</span> +00202 CVector decal; +00203 +00204 <span class="comment">// Plane of the hotspot</span> +00205 <span class="keywordflow">if</span> (! <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00206 { +00207 decal= axis; +00208 } +00209 <span class="keywordflow">else</span> +00210 { +00211 decal= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos(); +00212 } +00213 <span class="comment">// Choose plane to move on</span> +00214 <span class="keywordflow">if</span> (bTranslateXY && <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">_TranslateXYInWorld</a>) +00215 { +00216 plane.make (CVector::K, CVector::Null); +00217 } +00218 <span class="keywordflow">else</span> +00219 { +00220 plane.make (_Matrix.getJ(), CVector::Null); +00221 } +00222 +00223 +00224 <span class="comment">// Get ray from mouse point</span> +00225 CMatrix localViewMatrix= _Matrix; +00226 localViewMatrix.setPos(_Matrix.getPos() - decal); +00227 CVector localPoint1, localPoint2; +00228 CVector pos, dir; +00229 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">_Viewport</a>.<a class="code" href="a03704.html#NL3D_1_1CViewporta2">getRayWithPoint</a> (_X, _Y, pos, dir, localViewMatrix, _Frustrum); +00230 localPoint1=plane.intersect (pos, pos+dir); +00231 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">_Viewport</a>.<a class="code" href="a03704.html#NL3D_1_1CViewporta2">getRayWithPoint</a> (mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>, mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo4">Y</a>, pos, dir, localViewMatrix, _Frustrum); +00232 localPoint2=plane.intersect (pos, pos+dir); +00233 +00234 <span class="comment">// Move the camera</span> +00235 <span class="keywordflow">if</span> (bTranslateXY) +00236 { +00237 <span class="keywordflow">if</span> (! <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00238 { +00239 _Matrix.setPos(_Matrix.getPos()+localPoint1-localPoint2); +00240 } +00241 <span class="keywordflow">else</span> +00242 { +00243 CVector dir = - localPoint1 + localPoint2 ; +00244 <span class="comment">// transform the translation as needed.</span> +00245 dir= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a> * dir; +00246 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_6">truncateVect</a>(dir) ; +00247 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.setPos(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos()+dir); +00248 } +00249 } +00250 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (bTranslateZ) +00251 { +00252 CVector vect=localPoint1-localPoint2; +00253 <span class="keywordflow">if</span> (! <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00254 { +00255 _Matrix.setPos(_Matrix.getPos()+_Matrix.getK()*(vect.x+vect.y+vect.z)); +00256 } +00257 <span class="keywordflow">else</span> +00258 { +00259 CVector dir = _Matrix.getK()*(vect.x+vect.y+vect.z) ; +00260 <span class="comment">// transform the translation as needed.</span> +00261 dir= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a> * dir; +00262 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_6">truncateVect</a>(dir) ; +00263 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.setPos(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos()+dir); +00264 } +00265 } +00266 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (bZoom) +00267 { +00268 CVector vect=localPoint1-localPoint2; +00269 CVector direc=axis-_Matrix.getPos(); +00270 direc.normalize(); +00271 <span class="keywordflow">if</span> (! <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00272 { +00273 _Matrix.setPos(_Matrix.getPos()+direc*(vect.x+vect.y+vect.z)); +00274 } +00275 <span class="keywordflow">else</span> +00276 { +00277 <span class="comment">// transform the translation as needed.</span> +00278 direc= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a> * direc; +00279 direc.normalize(); +00280 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.setPos(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos()+direc*(vect.x+vect.y+vect.z)); +00281 } +00282 } +00283 } +00284 +00285 +00286 <span class="comment">// Update mouse position</span> +00287 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>; +00288 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_25">_Y</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo4">Y</a>; +00289 } +00290 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a54">EventMouseDownId</a>) +00291 { +00292 <span class="comment">// Update mouse position</span> +00293 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>; +00294 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_25">_Y</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo4">Y</a>; +00295 } +00296 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a55">EventMouseUpId</a>) +00297 { +00298 <span class="comment">// Update mouse position</span> +00299 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">_X</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo3">X</a>; +00300 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_25">_Y</a>=mouseEvent-><a class="code" href="a02473.html#NLMISC_1_1CEventMouseWheelo4">Y</a>; +00301 } +00302 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a57">EventMouseWheelId</a>) +00303 { +00304 <span class="comment">// Zoom..</span> +00305 <a class="code" href="a02478.html">CEventMouseWheel</a>* mouseEvent=(<a class="code" href="a02478.html">CEventMouseWheel</a>*)&event; +00306 +00307 CVector direc=<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>-_Matrix.getPos(); +00308 <span class="keywordflow">if</span> (! <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">_EnableModelMatrixEdition</a>) +00309 { +00310 _Matrix.setPos(_Matrix.getPos()+direc*(mouseEvent-><a class="code" href="a02478.html#NLMISC_1_1CEventMouseWheelo1">Direction</a>?0.1f:-0.1f)); +00311 } +00312 <span class="keywordflow">else</span> +00313 { +00314 CVector dir = direc*(mouseEvent-><a class="code" href="a02478.html#NLMISC_1_1CEventMouseWheelo1">Direction</a>?0.1f:-0.1f) ; +00315 <span class="comment">// transform the translation as needed.</span> +00316 dir= <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a> * dir; +00317 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_6">truncateVect</a>(dir) ; +00318 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.setPos(<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a>.getPos() + dir); +00319 } +00320 } +00321 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_4" doxytag="NL3D::CEvent3dMouseListener::removeFromServer" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::removeFromServer </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02479.html">NLMISC::CEventServer</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>server</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Unregister the listener to the server. +<p> +Definition at line <a class="el" href="a05686.html#l00332">332</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00276">_AsyncListener</a>, <a class="el" href="a05378.html#a54">NLMISC::EventMouseDownId</a>, <a class="el" href="a05378.html#a53">NLMISC::EventMouseMoveId</a>, <a class="el" href="a05378.html#a55">NLMISC::EventMouseUpId</a>, <a class="el" href="a05378.html#a57">NLMISC::EventMouseWheelId</a>, <a class="el" href="a05684.html#l00065">NLMISC::CEventListenerAsync::removeFromServer()</a>, and <a class="el" href="a05688.html#l00114">NLMISC::CEventServer::removeListener()</a>. +<p> +<div class="fragment"><pre>00333 { +00334 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera5">removeListener</a> (EventMouseMoveId, <span class="keyword">this</span>); +00335 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera5">removeListener</a> (EventMouseDownId, <span class="keyword">this</span>); +00336 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera5">removeListener</a> (EventMouseUpId, <span class="keyword">this</span>); +00337 server.<a class="code" href="a02479.html#NLMISC_1_1CEventServera5">removeListener</a> (EventMouseWheelId, <span class="keyword">this</span>); +00338 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">_AsyncListener</a>.<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca4">removeFromServer</a> (server); +00339 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_8" doxytag="NL3D::CEvent3dMouseListener::setFrustrum" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setFrustrum </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02562.html">CFrustum</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>frustrum</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the current frustrum to use. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>frustrum</em> </td><td>is the frustrum.</td></tr> + </table> +</dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_0">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00116">116</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00264">_Frustrum</a>. +<p> +<div class="fragment"><pre>00117 { +00118 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_10">_Frustrum</a>=frustrum; +00119 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_9" doxytag="NL3D::CEvent3dMouseListener::setHotSpot" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setHotSpot </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a03128.html">CVector</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>hotSpot</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the current hot spot. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>hotSpot</em> </td><td>is the target to use when the mouse move. It can be for exemple the center. of the selected object. The hotspot is not modified by mouse events. </td></tr> + </table> +</dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_3">getViewMatrix()</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_1">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00136">136</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00265">_HotSpot</a>. +<p> +<div class="fragment"><pre>00137 { +00138 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">_HotSpot</a>=hotSpot; +00139 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_10" doxytag="NL3D::CEvent3dMouseListener::setMatrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setMatrix </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>matrix</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set both the current view matrix to use. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>matrix</em> </td><td>is the matrix to set. </td></tr> + </table> +</dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_3">getViewMatrix()</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_2">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00097">97</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00261">_Matrix</a>, and <a class="el" href="a05646.html#l00243">matrix</a>. +<p> +<div class="fragment"><pre>00098 { +00099 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">_Matrix</a>=<a class="code" href="a04223.html#a578">matrix</a>; +00100 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_11" doxytag="NL3D::CEvent3dMouseListener::setModelMatrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setModelMatrix </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>matrix</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the model matrix only<p> +param matrix is the matrix to set. <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_2">getModelMatrix()</a> +<p> +Definition at line <a class="el" href="a05687.html#l00107">107</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00262">_ModelMatrix</a>, and <a class="el" href="a05646.html#l00243">matrix</a>. +<p> +<div class="fragment"><pre>00108 { +00109 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">_ModelMatrix</a> = <a class="code" href="a04223.html#a578">matrix</a> ; +00110 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_12" doxytag="NL3D::CEvent3dMouseListener::setModelMatrixRotationAxis" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setModelMatrixRotationAxis </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> </td> + <td class="mdname1" valign="top" nowrap> <em>axis</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +set the current axe of rotation for the model matrix +<p> + +<p> +Definition at line <a class="el" href="a05687.html#l00160">160</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00256">_CurrentModelRotationAxis</a>. +<p> +<div class="fragment"><pre>00160 { <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">_CurrentModelRotationAxis</a> = axis ;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_13" doxytag="NL3D::CEvent3dMouseListener::setModelMatrixTransformMove" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setModelMatrixTransformMove </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02851.html">NLMISC::CMatrix</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>transModelMove</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Each move of the modelMatrix is first transformed by this matrix before applying. NB: rot are still done in local Trans part is removed +<p> +Definition at line <a class="el" href="a05686.html#l00417">417</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00278">_ModelMatrixTransformMove</a>. +<p> +<div class="fragment"><pre>00418 { +00419 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">_ModelMatrixTransformMove</a>= transModelMove; +00420 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_14" doxytag="NL3D::CEvent3dMouseListener::setMouseMode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setMouseMode </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a> </td> + <td class="mdname1" valign="top" nowrap> <em>mouseMode</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the mouse mode. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>mouseMode</em> </td><td>is the mode you want to use. </td></tr> + </table> +</dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_3">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00146">146</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00274">_MouseMode</a>. +<p> +<div class="fragment"><pre>00147 { +00148 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">_MouseMode</a>=mouseMode; +00149 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_15" doxytag="NL3D::CEvent3dMouseListener::setSpeed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setSpeed </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">float </td> + <td class="mdname1" valign="top" nowrap> <em>speed</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the speed for first person mode. Default 10.f; <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>speed</em> </td><td>is in unit per second. </td></tr> + </table> +</dl> +<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a></dd></dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_4">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00202">202</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00272">_Speed</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>. +<p> +<div class="fragment"><pre>00203 { +00204 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_20">_Speed</a>=speed; +00205 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz192_16" doxytag="NL3D::CEvent3dMouseListener::setViewport" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::setViewport </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a03704.html">NL3D::CViewport</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>viewport</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [inline, virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Set the viewport in use in the window. By default, the viewport is fullwindow. <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>viewport</em> </td><td>is the viewport to use. All events outside the viewport are ignored.</td></tr> + </table> +</dl> + +<p> +Implements <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerz1367_5">NL3D::U3dMouseListener</a>. +<p> +Definition at line <a class="el" href="a05687.html#l00125">125</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +References <a class="el" href="a05687.html#l00266">_Viewport</a>. +<p> +<div class="fragment"><pre>00126 { +00127 <a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">_Viewport</a>=viewport; +00128 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_6" doxytag="NL3D::CEvent3dMouseListener::truncateVect" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CEvent3dMouseListener::truncateVect </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a03128.html">CVector</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>v</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [private]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +remove composant of translations that are not permitted <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_2">enableModelTranslationAxis()</a></dd></dl> + +<p> +Definition at line <a class="el" href="a05686.html#l00081">81</a> of file <a class="el" href="a05686.html">event_mouse_listener.cpp</a>. +<p> +References <a class="el" href="a05687.html#l00257">_XModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00258">_YModelTranslateEnabled</a>, <a class="el" href="a05687.html#l00259">_ZModelTranslateEnabled</a>, and <a class="el" href="a05646.html#l00237">v</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00089">operator()()</a>. +<p> +<div class="fragment"><pre>00082 { +00083 <span class="keywordflow">if</span> (!<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">_XModelTranslateEnabled</a>) <a class="code" href="a04223.html#a576">v</a>.x = 0.f ; +00084 <span class="keywordflow">if</span> (!<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">_YModelTranslateEnabled</a>) <a class="code" href="a04223.html#a576">v</a>.y = 0.f ; +00085 <span class="keywordflow">if</span> (!<a class="code" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">_ZModelTranslateEnabled</a>) <a class="code" href="a04223.html#a576">v</a>.z = 0.f ; +00086 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_7" doxytag="NL3D::CEvent3dMouseListener::_AsyncListener" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02472.html">NLMISC::CEventListenerAsync</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_7">NL3D::CEvent3dMouseListener::_AsyncListener</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00276">276</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00323">addToServer()</a>, <a class="el" href="a05686.html#l00341">getViewMatrix()</a>, and <a class="el" href="a05686.html#l00332">removeFromServer()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_8" doxytag="NL3D::CEvent3dMouseListener::_CurrentModelRotationAxis" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz192_0">TAxis</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_8">NL3D::CEvent3dMouseListener::_CurrentModelRotationAxis</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00256">256</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05687.html#l00163">getModelMatrixRotationAxis()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00160">setModelMatrixRotationAxis()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_9" doxytag="NL3D::CEvent3dMouseListener::_EnableModelMatrixEdition" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_9">NL3D::CEvent3dMouseListener::_EnableModelMatrixEdition</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00263">263</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05687.html#l00152">enableModelMatrixEdition()</a>, and <a class="el" href="a05686.html#l00089">operator()()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_10" doxytag="NL3D::CEvent3dMouseListener::_Frustrum" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02562.html">CFrustum</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_10">NL3D::CEvent3dMouseListener::_Frustrum</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00264">264</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00116">setFrustrum()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_11" doxytag="NL3D::CEvent3dMouseListener::_HotSpot" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03128.html">CVector</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_11">NL3D::CEvent3dMouseListener::_HotSpot</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00265">265</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05687.html#l00235">getHotSpot()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00136">setHotSpot()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_12" doxytag="NL3D::CEvent3dMouseListener::_LastTime" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a13">uint64</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_12">NL3D::CEvent3dMouseListener::_LastTime</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00273">273</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, and <a class="el" href="a05686.html#l00341">getViewMatrix()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_13" doxytag="NL3D::CEvent3dMouseListener::_LeftPushed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_13">NL3D::CEvent3dMouseListener::_LeftPushed</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00267">267</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_14" doxytag="NL3D::CEvent3dMouseListener::_Matrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02851.html">CMatrix</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_14">NL3D::CEvent3dMouseListener::_Matrix</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00261">261</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05686.html#l00341">getViewMatrix()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00097">setMatrix()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_15" doxytag="NL3D::CEvent3dMouseListener::_MiddlePushed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_15">NL3D::CEvent3dMouseListener::_MiddlePushed</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00268">268</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_16" doxytag="NL3D::CEvent3dMouseListener::_ModelMatrix" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02851.html">CMatrix</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_16">NL3D::CEvent3dMouseListener::_ModelMatrix</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00262">262</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05687.html#l00222">getModelMatrix()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00107">setModelMatrix()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_17" doxytag="NL3D::CEvent3dMouseListener::_ModelMatrixTransformMove" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02851.html">CMatrix</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_17">NL3D::CEvent3dMouseListener::_ModelMatrixTransformMove</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00278">278</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00422">getModelMatrixTransformMove()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05686.html#l00417">setModelMatrixTransformMove()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_18" doxytag="NL3D::CEvent3dMouseListener::_MouseMode" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02463.html#NL3D_1_1U3dMouseListenerw3">TMouseMode</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_18">NL3D::CEvent3dMouseListener::_MouseMode</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00274">274</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05686.html#l00341">getViewMatrix()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00146">setMouseMode()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_19" doxytag="NL3D::CEvent3dMouseListener::_RightPushed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_19">NL3D::CEvent3dMouseListener::_RightPushed</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00269">269</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_20" doxytag="NL3D::CEvent3dMouseListener::_Speed" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> float <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_20">NL3D::CEvent3dMouseListener::_Speed</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00272">272</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00341">getViewMatrix()</a>, and <a class="el" href="a05687.html#l00202">setSpeed()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_21" doxytag="NL3D::CEvent3dMouseListener::_TranslateXYInWorld" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_21">NL3D::CEvent3dMouseListener::_TranslateXYInWorld</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00275">275</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05686.html#l00412">enableTranslateXYInWorld()</a>, <a class="el" href="a05687.html#l00195">isTranslateXYInWorldEnabled()</a>, and <a class="el" href="a05686.html#l00089">operator()()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_22" doxytag="NL3D::CEvent3dMouseListener::_Viewport" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a03704.html">NL3D::CViewport</a> <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_22">NL3D::CEvent3dMouseListener::_Viewport</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00266">266</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00040">CEvent3dMouseListener()</a>, <a class="el" href="a05686.html#l00089">operator()()</a>, and <a class="el" href="a05687.html#l00125">setViewport()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_23" doxytag="NL3D::CEvent3dMouseListener::_X" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> float <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_23">NL3D::CEvent3dMouseListener::_X</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00270">270</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00089">operator()()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_24" doxytag="NL3D::CEvent3dMouseListener::_XModelTranslateEnabled" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_24">NL3D::CEvent3dMouseListener::_XModelTranslateEnabled</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00257">257</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00059">enableModelTranslationAxis()</a>, <a class="el" href="a05686.html#l00069">isModelTranslationEnabled()</a>, and <a class="el" href="a05686.html#l00081">truncateVect()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_25" doxytag="NL3D::CEvent3dMouseListener::_Y" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> float <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_25">NL3D::CEvent3dMouseListener::_Y</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00271">271</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00089">operator()()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_26" doxytag="NL3D::CEvent3dMouseListener::_YModelTranslateEnabled" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_26">NL3D::CEvent3dMouseListener::_YModelTranslateEnabled</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00258">258</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00059">enableModelTranslationAxis()</a>, <a class="el" href="a05686.html#l00069">isModelTranslationEnabled()</a>, and <a class="el" href="a05686.html#l00081">truncateVect()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CEvent3dMouseListenerz193_27" doxytag="NL3D::CEvent3dMouseListener::_ZModelTranslateEnabled" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool <a class="el" href="a02462.html#NL3D_1_1CEvent3dMouseListenerz193_27">NL3D::CEvent3dMouseListener::_ZModelTranslateEnabled</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Register the listener to the server. +<p> +Definition at line <a class="el" href="a05687.html#l00259">259</a> of file <a class="el" href="a05687.html">event_mouse_listener.h</a>. +<p> +Referenced by <a class="el" href="a05686.html#l00059">enableModelTranslationAxis()</a>, <a class="el" href="a05686.html#l00069">isModelTranslationEnabled()</a>, and <a class="el" href="a05686.html#l00081">truncateVect()</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05687.html">event_mouse_listener.h</a><li><a class="el" href="a05686.html">event_mouse_listener.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:46:28 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |