Commit 6106f7e6 authored by Taddeüs Kroes's avatar Taddeüs Kroes

Added some new diagrams to report.

parent b10e4a52
Code:
- Connect to VTK.
- Rotation has a 'bump' at 0.
- Gesture propagation
Thesis:
- Network protocol.
- Cited to VTK book, is this ok if I didn't read it?
- TUIO/VTK van preliminary naar appendices?
- "Window" -> "Widget"
% Define node group background
% The first 4 arguments are nodes that define the group borders in (left,
% top, right, bottom) order, the last argument is a text label
\usetikzlibrary{shapes,arrows}
\pgfdeclarelayer{background}
\pgfdeclarelayer{foreground}
\pgfsetlayers{background,main,foreground} % Layer order
\newcommand{\grouppadding}{0.5}
\newcommand{\group}[5]{
\begin{pgfonlayer}{background}
% Left top corner
\path (#1.west |- #2.north)+(-0.7, 0.7)
node (lefttop) {};
% Right bottom corner
\path (#3.east |- #4.south)+(0.7, -0.4)
node (rightbottom) {};
% Draw rectangle
\path[draw, rounded corners, dashed] (lefttop) rectangle (rightbottom);
% Text label
\path (rightbottom.west |- lefttop.south)+(-1.2, -0.3) node {\emph{#5}};
\end{pgfonlayer}
}
\tikzstyle{block} = [
rectangle,
draw=black,
fill=white,
thick,
minimum height=2em,
text centered,
rounded corners,
text width=6em
]
\tikzstyle{lineto} = [
->,
thick,
shorten <= 2pt,
shorten >= 2pt
]
\tikzstyle{linefrom} = [
<-,
thick,
shorten <= 2pt,
shorten >= 2pt
]
\newcommand{\architecture}[1]{
\begin{tikzpicture}[node distance=6em, auto]
\node[block] (driver) {Driver};
#1
\end{tikzpicture}
}
\newcommand{\simplediagram}{
\begin{figure}[H]
\center
\architecture{
\node[block, dashed, below of=driver] (arch) {Architecture}
edge[linefrom] node[right] {driver-specific messages} (driver);
\node[block, below of=arch] {Application}
edge[linefrom] node[right] {gestures} (arch);
}
\caption{Translation of driver-specific messages to gestures.}
\end{figure}
}
\newcommand{\completediagrams}{
\begin{figure}[H]
\hspace{-2.3em}
\subfigure[Architecture using a single widget. Dotted arrows represent
gestures, normal arrows represent events (unless labeled
otherwise).]{
\architecture{
\node[block, below of=driver] (eventserver) {Event server}
edge[linefrom] node[right, near end] {driver-specific messages} (driver);
\node[block, below of=eventserver] (widget) {Widget}
edge[linefrom] (eventserver);
\node[block, right of=widget, xshift=5em] (tracker) {Gesture tracker}
edge[lineto, dotted, bend left=10] (widget)
edge[linefrom, bend right=10] (widget);
\node[block, below of=widget] {Application}
edge[linefrom, dotted] (widget);
\group{eventserver}{eventserver}{tracker}{tracker}{Architecture}
}
}
\hspace{1.5em}
\subfigure[Architecture using a sub widget. Dotted arrows represent
gestures, normal arrows represent events (unless labeled
otherwise).]{
\architecture{
\node[block, below of=driver] (eventserver) {Event server}
edge[linefrom] node[right, near end] {driver-specific messages} (driver);
\node[block, below of=eventserver] (rootwidget) {Root widget}
edge[linefrom] (eventserver);
\node[block, below of=rootwidget] (subwidget) {Sub widget}
edge[linefrom] (rootwidget)
edge[lineto, bend right=45, dotted] node[right=3]
{propagation} (rootwidget);
\node[block, right of=rootwidget, xshift=5em] {Gesture tracker}
edge[lineto, dotted, bend left=10] (rootwidget)
edge[linefrom, bend right=10] (rootwidget);
\node[block, right of=subwidget, xshift=5em] (tracker) {Gesture tracker}
edge[lineto, dotted, bend left=10] (subwidget)
edge[linefrom, bend right=10] (subwidget);
\node[block, below of=subwidget, yshift=-.5em] {Application}
edge[linefrom, dotted, bend left=60] (rootwidget)
edge[linefrom, dotted] (subwidget);
\group{subwidget}{eventserver}{tracker}{subwidget}{Architecture}
}
}
\end{figure}
}
......@@ -2,8 +2,7 @@
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{hyperref,graphicx,float,tikz}
\usetikzlibrary{shapes,arrows}
\usepackage{hyperref,graphicx,float,tikz,subfigure}
% Link colors
\hypersetup{colorlinks=true,linkcolor=black,urlcolor=blue,citecolor=DarkGreen}
......@@ -154,8 +153,7 @@ Python.
\section{Analysis}
\chapter{Problem analysis}
\chapter{Requirements}
% testimplementatie met taps, rotatie en pinch. Hieruit bleek:
% - dat er verschillende manieren zijn om bijv. "rotatie" te
......@@ -247,12 +245,6 @@ Python.
gestures.
\end{itemize}
% -------
% Results
% -------
\chapter{Design}
\section{Requirements}
\label{sec:requirements}
......@@ -281,6 +273,12 @@ Python.
programmer to define custom gestures for an application.
\end{itemize}
% -------
% Results
% -------
\chapter{Design}
\section{Components}
Based on the requirements from section \ref{sec:requirements}, a design
......@@ -406,6 +404,12 @@ Python.
contains the related touch point. If so, the window updates its gesture
trackers, which can then trigger gestures.
\section{Diagrams}
\input{data/diagrams}
\simplediagram
\completediagrams
\section{Diagram of component relations}
\begin{figure}[H]
......
REPORT := report
DIAGRAM := data/diagram
DIAGRAMS := data/diagrams
PDFLATEX_FLAGS = -halt-on-error -interaction=nonstopmode \
-output-directory $(@D) -shell-escape
LATEX = TEXINPUTS=$(d):$(b): pdflatex $(PDFLATEX_FLAGS)
......@@ -19,7 +19,7 @@ $(b)%.pdf: $(d)%.tex
$(LATEX) $^; \
done
$(b)$(REPORT).pdf: $(d)$(DIAGRAM).tex
$(b)$(REPORT).pdf: $(d)$(DIAGRAMS).tex
$(b)$(REPORT).bbl: $(d)$(REPORT).bib
BIBINPUTS=$(d) bibtex8 ${@:.bbl=.aux}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment