doc.tex 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. \documentclass[fontsize=12pt, paper=a4, headinclude, twoside=false, parskip=half-, pagesize=auto, numbers=noenddot, open=right, toc=listof, toc=bibliography]{scrreprt}
  2. %\overfullrule=20mm
  3. % PDF-Kompression
  4. \pdfminorversion=5
  5. \pdfobjcompresslevel=1
  6. \pdfsuppresswarningpagegroup=1
  7. % Allgemeines
  8. \usepackage[automark]{scrlayer-scrpage} % Kopf- und Fußzeilen
  9. \usepackage{amsmath,marvosym,amssymb} % Mathesachen
  10. \usepackage[T1]{fontenc} % Ligaturen, richtige Umlaute im PDF
  11. \usepackage[utf8]{inputenc}% UTF8-Kodierung für Umlaute usw
  12. % Schriften
  13. \usepackage{mathpazo} % Palatino für Mathemodus
  14. %\usepackage{mathpazo,tgpagella} % auch sehr schöne Schriften
  15. \usepackage{setspace} % Zeilenabstand
  16. \onehalfspacing % 1,5 Zeilen
  17. % Schriften-Größen
  18. \setkomafont{chapter}{\Huge\rmfamily} % Überschrift der Ebene
  19. \setkomafont{section}{\Large\rmfamily}
  20. \setkomafont{subsection}{\large\rmfamily}
  21. \setkomafont{subsubsection}{\large\rmfamily}
  22. \setkomafont{chapterentry}{\large\rmfamily} % Überschrift der Ebene in Inhaltsverzeichnis
  23. \setkomafont{descriptionlabel}{\bfseries\rmfamily} % für description-Umgebungen
  24. \setkomafont{captionlabel}{\small\bfseries}
  25. \setkomafont{caption}{\small}
  26. % Sprache: English
  27. \usepackage[english]{babel} % Silbentrennung
  28. % _todo notes
  29. \usepackage[english]{todonotes}
  30. \newcommand{\TODO}[1]{\todo[inline]{TODO: #1}}
  31. \newcommand{\Thema}{Placing Nodes Moderately Well While Showing What Is Happening}
  32. \newcommand{\appname}{NodeShuffler}
  33. \usepackage[hyphens]{url} % ermögliche Links (URLs) und erlaube sie am zeilenende umzubrechen
  34. \usepackage[english,pdfauthor={Eren B. Yilmaz and Kolja S. Strohm}, pdftitle={\Thema}, breaklinks=true]{hyperref}
  35. \usepackage[final]{microtype} % mikrotypographische Optimierungen
  36. % Tabellen
  37. \usepackage{multirow} % Tabellen-Zellen über mehrere Zeilen
  38. \usepackage{multicol} % mehrere Spalten auf eine Seite
  39. \usepackage{tabularx} % für Tabellen mit vorgegeben Größen
  40. \usepackage{longtable} % Tabellen über mehrere Seiten
  41. \usepackage{array}
  42. \usepackage{cite} % citations in the form [2-4]
  43. \usepackage{svg} % Svg-Grafiken
  44. % Bilder
  45. \usepackage{graphicx} % Bilder
  46. \usepackage[autostyle=true]{csquotes} % enquote command
  47. \graphicspath{{img/}} % Lege den Standardpfad mit Bilder fest
  48. \DeclareGraphicsExtensions{.pdf,.png,.jpg} % bevorzuge pdf-Dateien vor den anderen
  49. \usepackage{subcaption} % mehrere Abbildungen nebeneinander/übereinander
  50. \usepackage[all]{hypcap} % Beim Klicken auf Links zum Bild und nicht zu Caption gehen
  51. \usepackage{tablefootnote}
  52. % Bildunterschrift
  53. \setcapindent{0em} % kein Einrücken der Caption von Figures und Tabellen
  54. \setcapwidth{0.9\textwidth} % Breite der Caption nur 90% der Textbreite, damit sie sich vom restlichen Text abhebt
  55. \setlength{\abovecaptionskip}{0.2cm} % Abstand der zwischen Bild- und Bildunterschrift
  56. \usepackage{enumitem} % Referenzen auf Item in enumerate-Blocks
  57. % A checklist for the current progress
  58. \usepackage{pifont}
  59. \usepackage{tikz}
  60. \usetikzlibrary{shapes.geometric}
  61. \newcommand{\cmark}{\ding{51}}%
  62. \newcommand{\xmark}{\ding{55}}%
  63. \newcommand\partialsquare{%
  64. \begin{tikzpicture}[baseline=0]
  65. \draw (0,0) rectangle (0.3,0.3);
  66. \fill (0.05,0.05) rectangle (0.25,0.25);
  67. \end{tikzpicture}%
  68. }
  69. \newcommand{\planned}{$\square$}
  70. \newcommand{\done}{\rlap{$\square$}{\raisebox{2pt}{\large\hspace{1pt}\cmark}}\hspace{-2.5pt}}
  71. \newcommand{\progress}{\partialsquare}
  72. % \toprule and other commands
  73. \usepackage{booktabs}
  74. % custom hyphenations
  75. \usepackage{hyphenat}
  76. \input{custom_hyphenations}
  77. %\usepackage{testhyphens} % check hyphenation with \begin{checkhyphens}
  78. % Quellcode
  79. % für Formatierung in Quelltexten, hier im Anhang
  80. \usepackage{listings}
  81. % same code font as in eclipse
  82. \usepackage{inconsolata}
  83. \usepackage{color, colortbl} % Farben
  84. \colorlet{punct}{red!60!black}
  85. \definecolor{background}{HTML}{EEEEEE}
  86. \definecolor{delim}{RGB}{20,105,176}
  87. \colorlet{numb}{magenta!60!black}
  88. % Default fixed font does not support bold face
  89. \DeclareFixedFont{\ttb}{T1}{txtt}{bx}{n}{8} % for bold
  90. \DeclareFixedFont{\ttm}{T1}{txtt}{m}{n}{8} % for normal
  91. % Custom colors
  92. \definecolor{deepblue}{rgb}{0,0,0.6}
  93. \definecolor{deepred}{rgb}{0.8,0,0}
  94. \definecolor{deepgreen}{rgb}{0,0.4,0}
  95. \definecolor{grau}{gray}{0.3}
  96. \definecolor{member}{rgb}{0.27,0.37,0.75}
  97. \definecolor{reserved}{rgb}{0.5,0.,0.333}
  98. \newcommand{\code}[1]{\lstinline[basicstyle=\ttfamily]|#1|}
  99. \newcommand{\member}[1]{\lstinline[basicstyle=\ttfamily\color{member}]|#1|}
  100. \newcommand{\reserved}[1]{\lstinline[basicstyle=\ttfamily\color{reserved}]|#1|}
  101. % python style code
  102. \lstset{
  103. extendedchars=true,
  104. basicstyle=\scriptsize,
  105. %basicstyle=\footnotesize\ttfamily,
  106. tabsize=2,
  107. keywordstyle=\textbf,
  108. commentstyle=\color{grau},
  109. numbers=left,
  110. numberstyle=\tiny,
  111. % für schönen Zeilenumbruch
  112. breakautoindent = true,
  113. breakindent = 2em,
  114. breaklines = true,
  115. postbreak = ,
  116. prebreak = \raisebox{-.8ex}[0ex][0ex]{\Righttorque},
  117. showstringspaces=false,
  118. emphstyle=\ttb,
  119. stringstyle=\color{deepgreen},
  120. frame=tb}
  121. \lstdefinelanguage{json}{
  122. basicstyle=\normalfont\ttfamily,
  123. numberstyle=\scriptsize,
  124. stepnumber=1,
  125. numbersep=8pt,
  126. showstringspaces=false,
  127. literate=
  128. *{:}{{{\color{punct}{:}}}}{1}
  129. {,}{{{\color{punct}{,}}}}{1}
  130. {\{}{{{\color{delim}{\{}}}}{1}
  131. {\}}{{{\color{delim}{\}}}}}{1}
  132. {[}{{{\color{delim}{[}}}}{1}
  133. {]}{{{\color{delim}{]}}}}{1},
  134. }
  135. % linksbündige Fußboten
  136. \deffootnote{1.5em}{1em}{\makebox[1.5em][l]{\thefootnotemark}}
  137. \typearea{14} % typearea berechnet einen sinnvollen Satzspiegel (das heißt die Seitenränder usw.) siehe auch http://www.ctan.org/pkg/typearea. Diese Berechnung befindet sich am Schluss, damit die Einstellungen von oben berücksichtigt werden
  138. % \usepackage{scrhack} % Vermeidung einer Warnung
  139. %\newcommand{\svgfigure}[3]{
  140. %\begin{figure}[htp]
  141. % \centering
  142. % \includesvg{#1}
  143. % \caption{#2}\label{#3}
  144. %\end{figure}
  145. %}
  146. \newcommand{\svgfigurewidth}[5]{
  147. \begin{figure}[htp]
  148. \centering
  149. \fontsize{8}{10}\selectfont
  150. \includesvg[width = #5]{#1}
  151. \caption[#2]{#3}\label{#4}
  152. \end{figure}
  153. }
  154. \newcommand{\svgfigurefullwidth}[4]{
  155. \begin{figure}[htp]
  156. \centering
  157. \includesvg[width = \textwidth]{#1}
  158. \caption[#2]{#3}\label{#4}
  159. \end{figure}
  160. }
  161. \newcommand{\graphicsfigure}[3]{
  162. \begin{figure}[htp]
  163. \centering
  164. \includegraphics[width=\linewidth]{#1}
  165. \caption{#2}\label{#3}
  166. \end{figure}
  167. }
  168. % um den kram kürzer zu schreiben
  169. \newcommand{\ssrl}[1]{\multicolumn{1}{|c|}{#1}}
  170. \newcommand{\ssr}[1]{\multicolumn{1}{c|}{#1}}
  171. \newcommand{\norm}[1]{\lvert #1 \rvert}
  172. %\usepackage{showframe} % overfull hboxes deutlich sichtbar machen
  173. % draft note
  174. \usepackage{everypage}
  175. \usepackage{datetime}
  176. \AddEverypageHook{%
  177. \begin{picture}
  178. (0,0)%
  179. \put(140,30){\fbox{\textbf{Draft of~\today~\currenttime}}}
  180. %
  181. \end{picture}\hfill
  182. }
  183. \begin{document} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  184. \pagenumbering{Roman} % Seitenummerierung mit großen römischen Zahlen
  185. \pagestyle{empty} % keine Kopf- oder Fußzeilen auf den ersten Seiten
  186. % Titelseite
  187. \clearscrheadings\clearscrplain
  188. \begin{center}
  189. \begin{Large}
  190. Christian-Albrechts-Universität zu Kiel
  191. \\
  192. \vspace{20mm}
  193. \appname: \Thema
  194. \end{Large}\\
  195. \vspace{8mm}
  196. Project documentation\\
  197. \vspace{2.4 cm}
  198. Eren Bora Yilmaz (1036085)\\
  199. Kolja Samuel Strohm (1036051)\\
  200. Summer term 2018\\
  201. \vspace{8mm}
  202. \includegraphics[width=10cm]{img/logo}
  203. \end{center}
  204. \clearpage\null\clearpage
  205. \pagestyle{scrheadings} %Seitenstil festlegen, damit die folgenden Einträge auch wirksam sind
  206. \cfoot*{\pagemark} %center, Fuß
  207. \chead{} %center, Kopf
  208. \ofoot{} %Außen, Fuß
  209. \ohead{\headmark} %Außen, Kopf
  210. \tableofcontents % erstelle hier das Inhaltsverzeichnis
  211. \listoffigures % erstelle hier das Abbildungsverzeichnis
  212. \listoftables % erstelle hier das Tabellenverzeichnis
  213. % \addchap{Symbolverzeichnis}\label{s.sym} % vergebe für das Symbolverzeichnis keine Kapitelnummer
  214. % \section*{Allgemeine Symbole}\label{s.sym.alg}
  215. % \begin{flushleft}
  216. % \begin{tabularx}{\textwidth}{l|X}
  217. % Symbol & Bedeutung\\\hline
  218. % $a$ & der Skalar $a$ \\
  219. % $\vec{x}$ & der Vektor $\vec{x}$\\
  220. % $\mat{A}$ & die Matrix $\mat{A}$\\
  221. % \end{tabularx}
  222. % \end{flushleft}
  223. % richtiger Inhalt
  224. \chapter{Introduction}\label{ch:introduction}
  225. \pagenumbering{arabic} % ab jetzt die normale arabische Nummerierung
  226. \input{chapter/1introduction}
  227. \chapter{Architecture}\label{ch:architecture}
  228. \input{chapter/2architecture}
  229. \chapter{UI and visuals}\label{ch:ui}
  230. \input{chapter/3ui}
  231. \chapter{Current Progress}\label{ch:progress}
  232. \input{chapter/4progress}
  233. \chapter{Retrospection}
  234. \input{chapter/5retrospection}
  235. \chapter{Contributors}
  236. \input{chapter/6contributors}
  237. \appendix
  238. \chapter{Appendix}\label{ch:appendix}
  239. \input{chapter/appendix}
  240. \bibliographystyle{ieeetran}
  241. \bibliography{doc}
  242. \end{document}