Explorar el Código

Changed thesis headers using chapters.

Taddeus Kroes hace 13 años
padre
commit
ed7b47321f
Se han modificado 1 ficheros con 68 adiciones y 78 borrados
  1. 68 78
      docs/report.tex

+ 68 - 78
docs/report.tex

@@ -93,85 +93,77 @@ To design such a mechanism properly, the following questions are relevant:
         detection could swallow up more processing resources than desired.
 \end{itemize}
 
-\chapter{Related work}
+\chapter{Preliminary inquiries}
+
+    \section{The TUIO protocol}
+
+    The TUIO protocol \cite{TUIO} defines a way to geometrically describe
+    tangible objects, such as fingers or fiducials on a multi-touch table.  The
+    table used for this thesis uses the protocol in its driver. Object
+    information is sent to the TUIO UDP port (3333 by default).
+
+    For efficiency reasons, the TUIO protocol is encoded using the Open Sound
+    Control (OSC)\footnote{\url{http://opensoundcontrol.org/specification}}
+    format.  An OSC server/client implementation is available for Python:
+    pyOSC\footnote{\url{https://trac.v2.nl/wiki/pyOSC}}.
+
+    A Python implementation of the TUIO protocol also exists:
+    pyTUIO\footnote{\url{http://code.google.com/p/pytuio/}}. However, the
+    execution of an example script yields an error regarding Python's built-in
+    \texttt{socket} library. Therefore, the reference implementation uses the
+    pyOSC package to receive TUIO messages.
+
+    The two most important message types of the protocol are ALIVE and SET
+    messages. An ALIVE message contains the list of session id's that are
+    currently ``active'', which in the case of multi-touch a table means that
+    they are touching the screen. A SET message provides geometric information
+    of a session id, such as position, velocity and acceleration.
+
+    Each session id represents an object. The only type of objects on the
+    multi-touch table are what the TUIO protocol calls ``2DCur'', which is a
+    (x, y) position on the screen.
+
+    ALIVE messages can be used to determine when an object touches and releases
+    the screen. For example, if a session id was in the previous message but
+    not in the current, The object it represents has been lifted from the
+    screen.
+
+    SET provide information about movement. In the case of simple (x, y)
+    positions, only the movement vector of the position itself can be
+    calculated. For more complex objects such as fiducials, arguments like
+    rotational position is also included.
+
+    TUIO coordinates range from $0.0$ to $1.0$, with $(0.0, 0.0)$ being the
+    left top corner of the screen and $(1.0, 1.0)$ the right bottom corner.  To
+    focus events within a window, a translation to window coordinates is
+    required in the client application, as stated by the online specification
+    \cite{TUIO_specification}:
+    \begin{quote}
+        In order to compute the X and Y coordinates for the 2D profiles a TUIO
+        tracker implementation needs to divide these values by the actual
+        sensor dimension, while a TUIO client implementation consequently can
+        scale these values back to the actual screen dimension.
+    \end{quote}
 
 % TODO
 
-\chapter{Methods}
+\chapter{Experiments}
 
-% TODO
+% testimplementatie met taps, rotatie en pinch. Hieruit bleek:
+% - dat er verschillende manieren zijn om bijv. "rotatie" te
+%   detecteren, (en dat daartussen onderscheid moet kunnen worden
+%   gemaakt)
+% - dat detectie van verschillende soorten gestures moet kunnen
+%   worden gescheiden, anders wordt het een chaos.
+% - Er zijn een aantal keuzes gemaakt bij het ontwerpen van de gestures,
+%   bijv dat rotatie ALLE vingers gebruikt voor het centroid. Het is
+%   wellicht in een ander programma nodig om maar 1 hand te gebruiken, en
+%   dus punten dicht bij elkaar te kiezen (oplossing: windows).
+
+% Tekenprogramma dat huidige points + centroid tekent en waarmee
+% transformatie kan worden getest Link naar appendix "supported events"
 
-    \subsection{Preliminary inquiries}
-
-        \subsubsection{The TUIO protocol}
-
-        The TUIO protocol \cite{TUIO} defines a way to geometrically describe
-        tangible objects, such as fingers or fiducials on a multi-touch table.
-        The table used for this thesis uses the protocol in its driver. Object
-        information is sent to the TUIO UDP port (3333 by default).
-
-        For efficiency reasons, the TUIO protocol is encoded using the Open
-        Sound Control
-        (OSC)\footnote{\url{http://opensoundcontrol.org/specification}} format.
-        An OSC server/client implementation is available for Python:
-        pyOSC\footnote{\url{https://trac.v2.nl/wiki/pyOSC}}.
-
-        A Python implementation of the TUIO protocol also exists:
-        pyTUIO\footnote{\url{http://code.google.com/p/pytuio/}}. However, the
-        execution of an example script yields an error regarding Python's
-        built-in \texttt{socket} library. Therefore, the reference
-        implementation uses the pyOSC package to receive TUIO messages.
-
-        The two most important message types of the protocol are ALIVE and SET
-        messages. An ALIVE message contains the list of session id's that are
-        currently ``active'', which in the case of multi-touch a table means
-        that they are touching the screen. A SET message provides geometric
-        information of a session id, such as position, velocity and acceleration.
-
-        Each session id represents an object. The only type of objects on the
-        multi-touch table are what the TUIO protocol calls ``2DCur'', which is
-        a (x, y) position on the screen.
-
-        ALIVE messages can be used to determine when an object touches and
-        releases the screen. For example, if a session id was in the previous
-        message but not in the current, The object it represents has been
-        lifted from the screen.
-
-        SET provide information about movement. In the case of simple (x, y)
-        positions, only the movement vector of the position itself can be
-        calculated. For more complex objects such as fiducials, arguments like
-        rotational position is also included.
-
-        TUIO coordinates range from $0.0$ to $1.0$, with $(0.0, 0.0)$ being the
-        left top corner of the screen and $(1.0, 1.0)$ the right bottom corner.
-        To focus events within a window, a translation to window coordinates is
-        required in the client application, as stated by the online
-        specification \cite{TUIO_specification}:
-        \begin{quote}
-            In order to compute the X and Y coordinates for the 2D profiles a
-            TUIO tracker implementation needs to divide these values by the
-            actual sensor dimension, while a TUIO client implementation
-            consequently can scale these values back to the actual screen
-            dimension.
-        \end{quote}
-
-    \subsection{Experiments}
-
-    % testimplementatie met taps, rotatie en pinch. Hieruit bleek:
-    % - dat er verschillende manieren zijn om bijv. "rotatie" te
-    %   detecteren, (en dat daartussen onderscheid moet kunnen worden
-    %   gemaakt)
-    % - dat detectie van verschillende soorten gestures moet kunnen
-    %   worden gescheiden, anders wordt het een chaos.
-    % - Er zijn een aantal keuzes gemaakt bij het ontwerpen van de gestures,
-    %   bijv dat rotatie ALLE vingers gebruikt voor het centroid. Het is
-    %   wellicht in een ander programma nodig om maar 1 hand te gebruiken, en
-    %   dus punten dicht bij elkaar te kiezen (oplossing: windows).
-
-    % Tekenprogramma dat huidige points + centroid tekent en waarmee
-    % transformatie kan worden getest Link naar appendix "supported events"
-
-    % Proof of Concept: VTK interactor
+% Proof of Concept: VTK interactor
 
 % -------
 % Results
@@ -219,19 +211,17 @@ To design such a mechanism properly, the following questions are relevant:
 
 % TODO: Network protocol (ZeroMQ)
 
-\chapter{References}
-
 \bibliography{report}{}
 \bibliographystyle{plain}
 
 \appendix
 
-\section{Schema of mechanism structure}
+\chapter{Schema of mechanism structure}
 \label{app:schema}
 
 % TODO: "dia"
 
-\section{Supported events in reference implementation}
+\chapter{Supported events in reference implementation}
 \label{app:supported-events}
 
 % TODO