1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>FreeMat: vtkHandleWidget</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">FreeMat
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('vtkwidgets_vtkhandlewidget.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">vtkHandleWidget </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Section: <a class="el" href="sec_vtkwidgets.html">Visualization Toolkit Widget Classes</a> </p>
<h1><a class="anchor" id="Usage"></a>
Usage</h1>
<p>The vtkHandleWidget is used to position a handle. A handle is a widget with a position (in display and world space). Various appearances are available depending on its associated representation. The widget provides methods for translation, including constrained translation along coordinate axes. To use this widget, create and associate a representation with the widget.</p>
<p>.SECTION Event Bindings By default, the widget responds to the following VTK events (i.e., it watches the vtkRenderWindowInteractor for these events): </p>
<pre>
LeftButtonPressEvent - select focal point of widget
LeftButtonReleaseEvent - end selection
MiddleButtonPressEvent - translate widget
MiddleButtonReleaseEvent - end translation
RightButtonPressEvent - scale widget
RightButtonReleaseEvent - end scaling
MouseMoveEvent - interactive movement across widget
</pre><p>Note that the event bindings described above can be changed using this class's vtkWidgetEventTranslator. This class translates VTK events into the vtkHandleWidget's widget events: </p>
<pre>
vtkWidgetEvent::Select – focal point is being selected
vtkWidgetEvent::EndSelect – the selection process has completed
vtkWidgetEvent::Translate – translate the widget
vtkWidgetEvent::EndTranslate – end widget translation
vtkWidgetEvent::Scale – scale the widget
vtkWidgetEvent::EndScale – end scaling the widget
vtkWidgetEvent::Move – a request for widget motion
</pre><p>In turn, when these widget events are processed, the vtkHandleWidget invokes the following VTK events on itself (which observers can listen for): </p>
<pre>
vtkCommand::StartInteractionEvent (on vtkWidgetEvent::Select)
vtkCommand::EndInteractionEvent (on vtkWidgetEvent::EndSelect)
vtkCommand::InteractionEvent (on vtkWidgetEvent::Move)
</pre><p>To create an instance of class vtkHandleWidget, simply invoke its constructor as follows </p>
<pre class="fragment"> obj = vtkHandleWidget
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkHandleWidget has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, <code>obj</code> is an instance of the vtkHandleWidget class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code> - Standard VTK class macros. </li>
<li>
<code>int = obj.IsA (string name)</code> - Standard VTK class macros. </li>
<li>
<code>vtkHandleWidget = obj.NewInstance ()</code> - Standard VTK class macros. </li>
<li>
<code>vtkHandleWidget = obj.SafeDownCast (vtkObject o)</code> - Standard VTK class macros. </li>
<li>
<code>obj.SetRepresentation (vtkHandleRepresentation r)</code> - Create the default widget representation if one is not set. By default an instance of vtkPointHandleRepresenation3D is created. </li>
<li>
<code>obj.CreateDefaultRepresentation ()</code> - Create the default widget representation if one is not set. By default an instance of vtkPointHandleRepresenation3D is created. </li>
<li>
<code>obj.SetEnableAxisConstraint (int )</code> - Enable / disable axis constrained motion of the handles. By default the widget responds to the shift modifier to constrain the handle along the axis closest aligned with the motion vector. </li>
<li>
<code>int = obj.GetEnableAxisConstraint ()</code> - Enable / disable axis constrained motion of the handles. By default the widget responds to the shift modifier to constrain the handle along the axis closest aligned with the motion vector. </li>
<li>
<code>obj.EnableAxisConstraintOn ()</code> - Enable / disable axis constrained motion of the handles. By default the widget responds to the shift modifier to constrain the handle along the axis closest aligned with the motion vector. </li>
<li>
<code>obj.EnableAxisConstraintOff ()</code> - Enable / disable axis constrained motion of the handles. By default the widget responds to the shift modifier to constrain the handle along the axis closest aligned with the motion vector. </li>
<li>
<code>obj.SetAllowHandleResize (int )</code> - Allow resizing of handles ? By default the right mouse button scales the handle size. </li>
<li>
<code>int = obj.GetAllowHandleResize ()</code> - Allow resizing of handles ? By default the right mouse button scales the handle size. </li>
<li>
<code>obj.AllowHandleResizeOn ()</code> - Allow resizing of handles ? By default the right mouse button scales the handle size. </li>
<li>
<code>obj.AllowHandleResizeOff ()</code> - Allow resizing of handles ? By default the right mouse button scales the handle size. </li>
<li>
<code>int = obj.GetWidgetState ()</code> - Get the widget state. </li>
</ul>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="index.html">FreeMat Documentation</a></li><li class="navelem"><a class="el" href="sec_vtkwidgets.html">Visualization Toolkit Widget Classes</a></li>
<li class="footer">Generated on Thu Jul 25 2013 17:18:36 for FreeMat by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1.1 </li>
</ul>
</div>
</body>
</html>
|