Restructure chapters, delete a bunch of words, add more words, do some things, panic...
[ipdf/sam.git] / presentation / presentation.tex
1 \makeatletter
2 \newif\ifGm@compatii
3 \makeatother
4 \documentclass[12pt,landscape,english]{beamer}
5 \mode<presentation>
6
7 \usetheme[navmenu]{uwa_eng} % Three options supported: uwa_pagen (default), navmenu, sec_navmenu, and splitfooter
8 \usepackage{mathrsfs}
9 \usepackage{palatino}
10 \usepackage[T1]{fontenc}
11 \usepackage[latin1]{inputenc}
12 \usepackage{times}
13 \usepackage{amsmath}
14 \usepackage{amssymb}
15 \usepackage{multimedia}
16 \makeatletter
17
18
19 % My personal preferences________________________________
20 \definecolor{myframe}{rgb}{0.2,0.2,0.2}  % charcoal frametitle
21 \setbeamercolor{frametitle}{fg=myframe}
22 \definecolor{mystruc}{rgb}{0,0.25,0.45}  % turquoise
23 \usecolortheme[named=mystruc]{structure} % Changing to blueish green instead of default midnight shade 
24 \setbeamertemplate{headline}{\vspace{0.25cm}} % I personally find that the defaul position of the frametitle is too high
25 \setbeamercolor{title}{fg=black} % I personally don't like the taking the structure color for the title
26
27 %_________________________________
28 % Titlepage info
29
30 \title[short title]{Number Representations and Precision in Vector Graphics}
31 \subtitle{Implementation of an Arbitrary Precision SVG Viewer} % if you have one
32 \author{Sam Moore}
33 % - Give the names in the same order as the appear in the paper.
34 % - Use the \inst{?} command only if the authors have different
35 %   affiliation.
36
37 \institute[UWA]% (optional) {Universities of Western Australia} 
38 {Supervisors: Tim French, Rowan Davies}
39
40 \date[CSS 2009]{\today} % change the actual date
41  \titlegraphic{\includegraphics[width=3cm]{./Logos/WAMSI.png}}
42
43 %% Optional stuff------------------------------------------------------------------
44
45 %% Delete this, if you do not want the table of contents to pop up at
46 %% the beginning of each Section or Subsection:
47 %\AtBeginSubsection[] % I guess you could replace this with AtBeginSection
48   %{\begin{frame}<beamer>{Outline}
49     %\tableofcontents[currentsection,currentsubsection]
50   %\end{frame}}
51  % \AtBeginSection[] % Simplified version of what's above. % Should only be used with uwa_pagen option
52 %  {\begin{frame}<beamer>{Outline}
53 %    \tableofcontents[currentsection]
54 %  \end{frame}}
55
56 %-------------------------------------------------------------------------------------------------
57 \begin{document}
58
59    {
60    \usebackgroundtemplate{\includegraphics[width=\paperwidth,height=\paperheight]{uwa_eng_title.png}} % Required to get the UWA titlepage background different. 
61    \begin{frame}[plain]
62  \titlepage
63 \end{frame}
64 }
65
66
67 \begin{frame}[plain]
68 \frametitle{Contents}
69   \tableofcontents
70   % You might wish to add the option [pausesections]
71 \end{frame}
72
73 \begin{frame}
74         \frametitle{Summary}
75         \begin{itemize}
76                 \item Vector graphics allow scaling but not arbitrary scaling
77                 \item We implemented a vector graphics viewer that does allow arbitrary scaling
78                 \item ... but it will take an arbitrary amount of time
79         \end{itemize}
80 \end{frame}
81
82 % Start of presentation slides
83 \section{Motivation \& Background}
84 \begin{frame}
85 \frametitle{Graphics Formats}
86 \begin{itemize}
87         \item Document formats (eg: PDF and SVG) are formats for vector graphics
88         \item Vector graphics scale better than raster graphics
89 \end{itemize}
90
91 \centering
92 \includegraphics[width=0.5\textwidth]{../figures/fox-vector.pdf}
93 \includegraphics[width=0.5\textwidth]{../figures/fox-raster.png}
94
95 \end{frame}
96
97
98 \begin{frame} 
99 \frametitle{Why is there a zoom limit?} 
100 \centering
101 \includegraphics{../figures/koch1.pdf}
102 \end{frame}
103
104 \begin{frame} 
105 \frametitle{Why is there a zoom limit?} 
106 \begin{itemize}
107         \item SVG, PostScript, PDF specify IEEE-754 \emph{single} floating point number representations
108         \item Range of values: $\approx 3 \times 10^{-38} \to 3 \times 10^{+38}$
109         \item Rough Floating Point Definition\footnote{IEEE-754 is more complicated}:
110         
111         \begin{align}
112                 X &= m \times 2^{E}
113         \end{align}
114         \item $m$ and $E$ are encoded in a \emph{fixed length} string of bits
115         \item Floating Point $\approx$ Scientific Notation for computers
116
117 \end{itemize}
118 \end{frame}
119
120 \begin{frame}
121 \frametitle{Visualisation of Floats}
122 \begin{itemize}
123         \item \small{With total length of $m$ and $E$ limited to $7$ bits (1 sign bit)}
124         \item Showing positive numbers only
125 \end{itemize}
126 \centering
127 \includegraphics[width=0.8\textwidth]{../figures/floats.pdf}
128         
129 \end{frame}
130
131 \begin{frame}
132 \frametitle{Floating point calculations \\ go wrong}
133 \begin{itemize}
134         \item At scale of only $1\times 10^{-6}$, the fox is very sick
135 \end{itemize}
136 \centering
137         \includegraphics[width=0.5\textwidth]{../figures/fox-vector_highzoom1.png}
138         \begin{itemize}
139                 \item Plank Length: $1.61 \times 10^{-35}$ metres $ > 3\times10^{-38}$
140                 \item Size of Universe: $4.3 \times 10^{26}$ metres $ << 3 \times10^{38}$
141                 \item Why isn't this good enough for $1\times 10^{-6}$
142         \end{itemize}
143 \end{frame}
144
145 \section{Implementing a Basic SVG Viewer}
146 \begin{frame}
147 \frametitle{Structure of Vector Graphics}
148 \begin{itemize}
149         \item B\'{e}zier Curve (Quadratic or Cubic Parametric Polynomial)
150         \item Path of B\'{e}zier Curves $\to$ Shapes (with fill)
151         \item Shapes include font glyphs, like this $\mathscr{Z}$
152 \end{itemize}
153 \centering
154 \includegraphics[width=0.5\textwidth]{bezier_to_font.pdf}
155
156 \end{frame}
157
158 \begin{frame}
159 \frametitle{Structure of Vector Graphics III}
160 \begin{itemize}
161         \item Rectangles show individual B\'{e}ziers forming outline of the Fox
162 \end{itemize}
163 \centering
164 \includegraphics[width=0.5\textwidth]{../figures/fox-vector_face_with_bezbounds.png}
165 \end{frame}
166
167 \section{Live Demo}
168 \begin{frame}
169 \frametitle{Live Demo}
170 \begin{itemize}
171         \item We can import standard SVGs wherever we want
172         \item If we are willing to wait long enough
173         \item \tiny{``... But, asks the scientist, what does that turtle stand on? To which the lady triumphantly answers: 'You're very clever, young man, but it's no use -- it's turtles all the way down!'.``}
174 \end{itemize}
175 \centering
176 \includegraphics[width=\textwidth]{turtles.pdf}
177 \end{frame}
178
179 \section{Conclusions}
180 \begin{frame}
181         \frametitle{Conclusions}
182 \begin{itemize}
183         \item What we have done?
184         \begin{itemize}
185                 \item Implemented a basic SVG viewer
186                 \item Demonstrated how precision affects rendering vector graphics
187                 \item Using GMP rationals, demonstrated the ability to render SVGs scaled to an arbitrary position in a document
188         \end{itemize}
189         \item Possible future work
190         \begin{itemize}
191                 \item Implement more of the SVG standard
192                 \item Trial alternative number representations
193                 \item Allow for saving and loading SVGs with arbitrary precision
194         \end{itemize}
195 \end{itemize}
196 \end{frame}
197 \section{References}
198
199 \section{Questions}
200
201 \begin{frame}
202 \frametitle{Q: Why don't you have colour?}
203 \begin{itemize}
204         \item We do!\footnote{If you are willing to wait long enough}
205         \item A complete implementation of SVG is ``future work''
206 \end{itemize}
207 \centering
208 \includegraphics[width=0.5\textwidth]{../figures/shady-the-fox.png}
209 \includegraphics[width=0.5\textwidth]{../figures/who-the-hell-needs-antialiasing-anyway.png}
210
211 \end{frame}
212
213 \begin{frame}
214 \frametitle{Q: Why not just use doubles?}
215 \begin{itemize}
216         \item Any fixed precision format will still give inexact results
217         \item But the inexact results will appear slower
218 \end{itemize}
219 \end{frame}
220
221 \begin{frame}
222 \frametitle{Q: Arbitrary precision floats?}
223 \begin{itemize}
224         \item We support them as well!
225         \item Rationals are more convenient:
226         \begin{itemize}
227                 \item Need to manually set precision
228                 \item Some operations require infinite precision:
229                 \begin{align}
230                         \frac{1}{3} &= 0.3333333333333333333333 \text{ ... } \times 10^0
231                 \end{align}
232                 \item How do you choose when to increase precision?
233         \end{itemize}
234         \item Could be future work
235 \end{itemize}
236 \end{frame}
237
238
239 \end{document}

UCC git Repository :: git.ucc.asn.au