1 Infinite-precision vector documents
2 -----------------------------------
5 - Existing document formats like postscript are based around 32-bit floats
7 - Zooms on typical document viewers maxes out at at something between 3x and 16x.
8 - CAD, BIM, etc. utilities would benefit from higher zoom levels.
9 - Editing documents at such zoom levels would present further issues, as some objects
10 specified within would need more bits of precision than others. No single coordinate
11 system can handle everything efficiently with a finite number of bits.
14 - Prototype a system which does not have restrictions on zoom levels.
15 - Performant at all zoom levels.
16 - Performance not dependent on view of the document:
17 - Big Integer/Float solutions will require more bits to store data further away from the
18 centre of the document, leading to slower calculations at high zoom levels away from the origin.
21 - Develop a simple "document" format
22 - Likely consulting of simple geometry.
23 - Easily rasterized with APIs like OpenGL.
24 - Extend it to support high zoom levels.
25 - A variety of techniques can be investigated.
26 - BigInt/BigFloat coordinates and transformation matrices.
27 - Likely slow, cannot be done on GPU, but conceptually very simple.
28 - Coordinate system "renormalization"
29 - Split document into regions each with their own coordinate system.
31 - Use a quadtree to create these new regions.
32 - When zoomed in such that a region fills the screen, it becomes the
34 - During zooming in, values can be converted from parent coords to
35 child coords by dropping the most significant bit of precision, gaining
36 an additional bit of precision in the LSB position.
37 - Reverse for zooming out.
41 - Set up a simple document format to experiment on.
42 (Including systems to create, edit and view these documents)
43 - Proposal + Talk (March 13, March 24-28)
44 - Literature review (April 17)
46 - Revise, complete Lit Review
47 - Implement one or more "infinite precision" systems in our document format
48 - Measure performance, etc.
50 - Continue experimenting with the document format, other techniques
51 - Begin work on dissertation.
53 - Draft dissertation complete (18th)
55 - Seminar (Abstract due 9th, Presentation 27th-31st)
57 - Final dissertation (23rd)
60 - Corrected dissertation
63 - Software, Hardware requirements
64 - IBM-compatible PC with OpenGL-accelerated graphics.
65 - Development will be done under the Linux operating system.
66 - The techniques presented should be portable to other similar systems.