-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathchapter_06_main_window_controls.tex
More file actions
334 lines (218 loc) · 19.6 KB
/
chapter_06_main_window_controls.tex
File metadata and controls
334 lines (218 loc) · 19.6 KB
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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
\chapter{Main window controls}
\minitoc
See Fig. \ref{gui} p.\pageref{gui} to have an overview of the controls described in this chapter.
%\section{Open and save data }
%\section{Undo and redo actions }
\section{Camera controls}
Most camera related controls lay on the left part of the main window. See Fig. \ref{gui} p.\pageref{gui} to find the location of the "Camera" controls in the main Window.
\subsection{Camera rotation center}
By default, the camera rotates around the origin of the coordinate system (x=0, y=0, z=0), but by pressing ``\includegraphics[scale=0.7]{images/06/camera/move_cam.png}"/``\includegraphics[scale=0.7]{images/06/camera/move_cam2.png}", the camera will revolve around the center of mass of all opened objects. The latter option is useful when the centre of mass of an object (or of several ones) is far from the origin of the coordinate system. The grid is drawn using different colors depending on the camera rotation centre (see Fig. \ref{grid_color} p.\pageref{grid_color}). %The camera centre can also be set at the location of one of the first 10 ``normal" landmarks (see section \ref{camera_centre_at}).
\begin{figure}
\centering
\includegraphics[scale=0.4]{images/06/camera/grids.png}
\caption{Grid display color. Left: when the camera revolves around the origin of the coordinate system (x=0, y=0, z=0), the grid outline is displayed in orange. Right: when the camera revolves around the center of mass of all opened objects, the grid has a blue outline.}
\label{grid_color}
\end{figure}
\subsection{Orthographic or perspective camera projection}
You can switch between orthographic and perspective projection mode by pressing the "\includegraphics[scale=0.7]{images/06/camera/camera_ortho.png}" or "\includegraphics[scale=0.7]{images/06/camera/camera_persp}" toggle button (see also see Fig. \ref{camera_ortho_example} p.\pageref{camera_ortho_example}).
Note that in orthographic camera projection mode \includegraphics[scale=0.7]{images/06/camera/camera_ortho.png}, when the grid is displayed, the relationship between pixel size on the screen and real world dimensions appears on the right bottom corner of the screen: \includegraphics[scale=0.7]{images/06/camera/grid_infos.png}.
\begin{figure}
\centering
\includegraphics[scale=0.4]{images/06/camera/camera_ortho_example.png}
\caption{Perspective and Orthographic camera projection modes. Skull of \textit{Pan paniscus}. Left: perspective camera projection mode: closer structures appear larger than farther structures. Right: orthographic camera projection mode: a uniform relation exists between pixel size and real world dimensions, making it possible to place a scale bar. }
\label{camera_ortho_example}
\end{figure}
\subsection{Camera orientation}
6 camera positions are predefined :\\
\includegraphics[scale=0.7]{images/06/camera/camera_right.png} view object from right side \\
\includegraphics[scale=0.7]{images/06/camera/camera_left.png} view object from left side\\
\includegraphics[scale=0.7]{images/06/camera/camera_front.png} view object from front side (default camera position)\\
\includegraphics[scale=0.7]{images/06/camera/camera_back.png} view object from back side\\
\includegraphics[scale=0.7]{images/06/camera/camera_above.png} view object from above\\
\includegraphics[scale=0.7]{images/06/camera/camera_below.png} view object from below\\
\subsection{Screenshot}
Press "\includegraphics[scale=0.7]{images/06/camera/screenshot.png}" to take a screenshot (.png format). This opens the screenshot dialog (see Fig. \ref{screenshot_dialog} p.\pageref{screenshot_dialog}).
\begin{figure}
\centering
\includegraphics[scale=0.4]{images/06/camera/screenshot_dialog.png}
\caption{Screenshot dialog. You can define here the multiplication factor in x and y, and decide whether the background should be transparent or opaque. }
\label{screenshot_dialog}
\end{figure}
\subsection{Camera rotation around ``z" viewing axis}
\begin{minipage}{0.7\textwidth}
To do so, you may use the slider lying around the center of the left panel of the main window.
\end{minipage}
\begin{minipage}{0.25\textwidth}\centering
\includegraphics[scale=0.7]{images/06/camera/rz_cam.png}
\captionof{figure}{Camera ``z" rotation slider}
\end{minipage}
\subsection{Clipping plane slider}
\begin{minipage}{0.7\textwidth}
In some cases, you may need to displace the viewing clipping plane. To do so, use
the slider lying centrally in the left panel of the main window. See \ref{Clipping_plane} p.\pageref{Clipping_plane} for additional clipping plane functionalities.\\
\end{minipage}
\begin{minipage}{0.25\textwidth}\centering
\includegraphics[scale=0.5]{images/06/camera/cp_slider.png}
\captionof{figure}{Camera clipping plane slider}
\end{minipage}
\subsection{Zoom}
There are three main ways to modify the ``zoom" in MorphoDig :
\begin{minipage}{0.7\textwidth}
\begin{itemize}
\item You may use the zoom slider laying in the lower part of the left panel of the main window.
\item You may set manually the display scale (Edit $\rightarrow$ Edit size unit and grid spacing, then define the display scale: 100 pixels in size unit). This option is only available in orthographic projection mode \includegraphics[scale=0.7]{images/06/camera/camera_ortho.png}.
\item You may use the middle click mouse roll button (roll the wheel).
\end{itemize}
\end{minipage}
\begin{minipage}{0.25\textwidth}\centering
\includegraphics[scale=0.5]{images/06/camera/zoom_slider.png}
\captionof{figure}{Zoom slider}
\end{minipage}
\section{Display controls}
The display controls mentioned in this section are situated on the top part of the main window (see Fig. \ref{gui} p.\pageref{gui}).
\subsection{Grid}
Press \includegraphics[scale=0.7]{images/06/display/grid.png} to show / hide the grid. Default grid size is 1 cm / square. Grid size can be edited manually
(viewing opt. $\rightarrow$ Grid size).
Switching between the 6 camera predefined positions defined above (\includegraphics[scale=0.7]{images/06/camera/camera_right.png},
\includegraphics[scale=0.7]{images/06/camera/camera_left.png},
\includegraphics[scale=0.7]{images/06/camera/camera_front.png},
\includegraphics[scale=0.7]{images/06/camera/camera_back.png},
\includegraphics[scale=0.7]{images/06/camera/camera_above.png} and
\includegraphics[scale=0.7]{images/06/camera/camera_below.png})
will affect the plane in which the grid is drawn.
\subsection{Coordinate system orientation helper}
\begin{minipage}{0.7\textwidth}
Press \includegraphics[scale=0.7]{images/06/display/orientation_helper.png} to show / hide the coordinate system orientation helper lying on the bottom left corner of the main 3D window. By default, the labels are defined
the following way:\\
+z axis : dorsal side\\
-z axis : ventral side\\
+y axis : left side\\
-y axis : right side\\
+x axis : anterior side\\
-x axis : posterior side.\\
You may edit these labels depending on your preferences (for instance,
depending on the structure you are working with, you may need to set ``+y" to ``labial", and ``-y" to
``lateral"). To edit orientation labels, click on ``Edit $\rightarrow$ Edit orientation labels."
\end{minipage}
\begin{minipage}{0.3\textwidth}\centering
\includegraphics[scale=0.7]{images/06/camera/orientation_helper_view.png}
\captionof{figure}{Orientation helper}
\end{minipage}
\subsection{Anaglyph}
Press \includegraphics[scale=0.7]{images/06/display/anaglyph.png} to activate/deactivate anaglyph 3D rendering.
See Fig. \ref{anaglyph_example} p.\pageref{anaglyph_example}. You then need to wear "Red/Blue" \includegraphics[scale=0.7]{images/06/display/anaglyph_glasses.png} glasses to visualize objects in 3D.
\begin{figure}
\centering
\includegraphics[scale=0.34]{images/06/display/anaglyph_example.png}
\caption{Anaglyph display mode. Left: normal display mode. Right: anaglyph display mode. Cranium of the holotype specimen of \textit{Pan paniscus}.}
\label{anaglyph_example}
\end{figure}
%You can also modify the clipping plane manually by editing the ``Tz" control in the camera options window (viewing opt. $\rightarrow$ Camera $\rightarrow$ Camera options).
\subsection{Clipping plane} \label{Clipping_plane}
The button \includegraphics[scale=0.7]{images/06/display/cpon.png} or \includegraphics[scale=0.5]{images/06/display/cpoff.png} permits to adjust / readjust the position of the clipping plane at predefined positions (see for instance Fig. \ref{cp_example} p.\pageref{cp_example}):
\begin{itemize}
\item \includegraphics[scale=0.7]{images/06/display/cpon.png}: the clipping plane is placed at z = 0 (all objects having a z coordinate along
z viewing axis smaller than 0 are hidden).
\item \includegraphics[scale=0.7]{images/06/display/cpoff.png} : the clipping plane is replaced at its original value : z= - camera.far / 2. This value permits to
view objects having positive and negative coordinates along z viewing axis.
\end{itemize}
\begin{figure}
\centering
\includegraphics[scale=0.4]{images/06/display/cp_example.png}
\caption{Clipping plane display mode. Cranium of the type specimen of \textit{Pan paniscus}. Left: normal display mode. Right: clipping plane display mode "on" : permits to visualize inner structures. }
\label{cp_example}
\end{figure}
\subsection{Backface culling} \label{Backface_culling}
Hiding backfaces of a surface is useful in some cases to visualize inner structures of a biological object (see for instance Fig. \ref{backface_example} p.\pageref{backface_example}). The button \includegraphics[scale=0.7]{images/06/display/backface_on.png} / \includegraphics[scale=0.7]{images/06/display/backface_off.png} permits to visualize/hide backfaces :
\begin{itemize}
\item \includegraphics[scale=0.7]{images/06/display/backface_on.png}: both sides of a given surface object are rendered.
\item \includegraphics[scale=0.7]{images/06/display/backface_off.png} : backfaces are hidden (only frontfaces are visible).
\end{itemize}
\begin{figure}
\centering
\includegraphics[scale=0.3]{images/06/display/backface_example.png}
\caption{Backface culling display mode. Petrosal bone of \textit{Eulemur mongoz}. Left: normal display mode: both frontfaces (lighter) and backfaces (darker) are displayed. Right: backface culling mode activated: only frontfaces are displayed, making it easier to visualize the bony labyrinth. }
\label{backface_example}
\end{figure}
\subsection{Surface 3D representation controls}
4 different options exist to draw 3D surfaces :\\
\includegraphics[scale=0.7]{images/06/display/point_normals.png} : point normals display mode (Gouraud shading), see Fig. \ref{5display_modes}-A.\\
\includegraphics[scale=0.7]{images/06/display/cell_normals.png} : triangle normals display mode, see Fig. \ref{5display_modes}-B. \\
\includegraphics[scale=0.7]{images/06/display/wireframe.png} : wireframe representation display mode, see Fig. \ref{5display_modes}-C.\\
\includegraphics[scale=0.7]{images/06/display/points.png} point cloud display mode, see Fig. \ref{5display_modes}-D\\
\includegraphics[scale=0.7]{images/06/display/cell_normals2.png} triangle normales + wireframe display mode, see Fig. \ref{5display_modes}-E\\
\begin{figure}
\centering
\includegraphics[scale=0.25]{images/06/display/5display_modes.png}
\caption{Display modes available for a given surface. Single surface representation of the left bony labyrinth of a \textit{Lepilemur dorsalis}. A: "Point normales" mode (Gouraud shading). B: "Triangle normales" mode. C: "Wireframe" mode. D: "Point cloud" mode. D: "Triangle normales + wireframe" mode.}
\label{5display_modes}
\end{figure}
\section{Object controls}
See Fig. \ref{gui} p.\pageref{gui}to see where the "object controls" are situated within MorphoDig's main window. Remind that only selected objects are affected by these controls.
\subsection{Delete selected objects}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/delete2.png}" deletes all selected objects. This action can be undone/redone.
\subsection{Create landmark at X,Y,Z}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/landmark_xyz.png}" opens the "Create landmark" window (Fig. \ref{create_landmark} p.\pageref{create_landmark}), in which a new landmark can be created a specified coordinates. This action can be undone/redone..
\begin{figure}
\centering
\includegraphics[scale=0.55]{images/06/objects/create_landmark.png}
\caption{Create landmark at a given X,Y,Z coordinate.}
\label{create_landmark}
\end{figure}
\subsection{Decrease / Increase landmark number}
Clicking on \includegraphics[scale=0.7]{images/06/objects/move_up.png} will increase (= move down in list, if possible) the landmark number of all selected landmarks. Clicking on \includegraphics[scale=0.7]{images/06/objects/move_down.png} will decrease (=move up in list, if possible) the landmark number of all selected landmarks. These buttons make it possible to reorder landmarks.
\subsection{Edit first selected surface}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/actor_edit.png}" opens the "Edit first selected surface" window (see chapter \ref{Menu_surfaces}, Fig. \ref{actor_edit} p.\pageref{actor_edit} for further details), in which several properties of a given surface object can be edited.
\subsection{Edit first selected volume}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/volume_edit.png}" opens the "Edit first volume" window (see chapter \label{volumes_chapter}, Fig. \ref{edit_volume_window} p.\pageref{edit_volume_window} for further details), in which several properties of a given volume.
\subsection{Edit first selected landmark}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/landmark_edit.png}" opens the "Edit first selected landmark" window (see Fig. \ref{landmark_edit} p.\pageref{landmark_edit} for further details).
\subsection{Edit first selected flag}
Clicking on "\includegraphics[scale=0.7]{images/06/objects/flag_edit.png}" opens the "Edit first selected flag" window (see Fig. \ref{flag_edit} p.\pageref{flag_edit} for further details), in which several properties of a given flag can be manually edited.
\subsection{Lasso cut selected surfaces} \label{lasso_cut_section}
You may cut through an input selected surface using this option (see Fig. \ref{lasso_cut} p.\pageref{lasso_cut}). Once "\includegraphics[scale=0.7]{images/06/objects/lasso_keepinside.png}" (lasso cut keep inside) or "\includegraphics[scale=0.7]{images/06/objects/lasso_keepoutside.png}" (lasso cut keep outside) button has been pressed, the mouse cursor changes and you can start drawing the lasso section by dragging the mouse while the left button is pressed. When the left button is released, the lasso cut operation starts: a new object is created, which contains all the parts of the selected object laying inside or outside the drawn polygon, respectively.\\
\begin{figure}
\centering
\includegraphics[scale=0.6]{images/06/objects/lasso_cut.png}
\caption{A: "Lasso keep outside" button is pressed, then a polygon is drawn over the selected object (grey) by maintaining left mouse button pressed and dragging the mouse. B: Left mouse button has been released: a new surface object is created. C: "Delete" has been pressed : only the newly created object remains. C: "Lasso keep inside" is pressed, then a polygon is drawn over the selected object (grey) by maintaining left mouse button pressed and dragging the mouse. E: Left mouse button has been released : a new surface object is created. F: "Delete" has been pressed : only the newly created object remains. }
\label{lasso_cut}
\end{figure}
\subsection{Rubber band cut selected surfaces} \label{rubber_band_cut_section}
You may cut through an input selected surface using this option (see Fig. \ref{rubber_band_cut} p.\pageref{rubber_band_cut}). Once "\includegraphics[scale=0.7]{images/06/objects/rubber_mode_keepinside.png}" (rubber band cut, keep inside) or "\includegraphics[scale=0.7]{images/06/objects/rubber_mode_keepoutside.png}" (rubber band cut, keep outside) button has been pressed, the mouse cursor changes and you can start drawing a rectangular section by dragging the mouse while the left button is pressed. When the left button is released, the rubber band cut operation starts: a new object is created, which contains all the parts of the selected object laying inside or outside the drawn rectangle, respectively.\\
\begin{figure}
\centering
\includegraphics[scale=0.6]{images/06/objects/rubber_band_cut.png}
\caption{A: "Rubber band cut keep inside" button is pressed, then a rectangle is drawn over the selected object (grey) by maintaining left mouse button pressed and dragging the mouse. B: Left mouse button has been released: a new surface object is created. C: "Delete" has been pressed : only the newly created object remains. C: "Rubber band cut keep outside" is pressed, then a rectangle is drawn over the selected object (grey) by maintaining left mouse button pressed and dragging the mouse. E: Left mouse button has been released : a new surface object is created. F: "Delete" has been pressed : only the newly created object remains. }
\label{rubber_band_cut}
\end{figure}
\subsection{object rotation and translation sliders}
As seen earlier, selected objects can be translated and rotated using the mouse left and middle buttons
(in landmark and camera selection modes, you also need to maintain ``CTRL" button pressed
while dragging the mouse to achieve rotation and translation of selected objects). Alternatively, you
may also use the following controls to accomplish rotation and translation of selected objects. Rotation
is performed around the global center of mass of all currently selected objects.
\subsubsection{Rotation around and translation along ``Z" viewing axis }
These controls are extremely useful, as there is no way to achieve rotation round « z » viewing axis or translation along ``z" viewing axis using the
mouse. \\ To do so, use the tz and rz sliders (see Fig. \ref{move_z} p.\pageref{move_z}).
\begin{figure}
\centering
\includegraphics[scale=0.45]{images/06/objects/move_objects_z.png}
\caption{A: object and tz slider are in initial position. B: tz slider is moved down: the selected object moves forward. C: tz slider is moved up. The selected object moves backward. D: object and rz slider are in initial position. E: rz slider is moved down: the selected object rotates around the "roll" axis counter-clockwise. F: rz slider is moved up. The selected object rotates around the "roll" axis clockwise.}
\label{move_z}
\end{figure}
\subsubsection{Rotation/translation around/along ``Y" viewing axis}
To do so, use the ty and ry sliders (see Fig. \ref{move_y} p.\pageref{move_y}).
\begin{figure}
\centering
\includegraphics[scale=0.45]{images/06/objects/move_objects_y.png}
\caption{A: object and ty slider are in initial position. B: ty slider is moved down: the selected object moves downward. C: ty slider is moved up. The selected object moves upward. D: object and ry slider are in initial position. E: ry slider is moved down: the selected object rotates around the "yaw" axis clockwise. F: ry slider is moved up. The selected object rotates around the "yaw" axis counter-clockwise.}
\label{move_y}
\end{figure}
\subsubsection{Rotation/translation around/along ``X" viewing axis}
To do so, use the ty and ry sliders (see Fig. \ref{move_x} p.\pageref{move_x}).
\begin{figure}
\centering
\includegraphics[scale=0.45]{images/06/objects/move_objects_x.png}
\caption{A: object and tx slider are in initial position. B: tx slider is moved down: the selected object moves leftward. C: tx slider is moved up. The selected object moves rightward. D: object and rx slider are in initial position. E: rx slider is moved down: the selected object rotates around the "pitch" axis clockwise. F: rx slider is moved up. The selected object rotates around the "pitch" axis counter-clockwise.}
\label{move_x}
\end{figure}