X-Git-Url: https://git.ucc.asn.au/?p=ipdf%2Fdocuments.git;a=blobdiff_plain;f=papers.bib;h=e6302aefc8c2e6819f639d902ee62fbf7106384f;hp=fa6ae7bb7353f10951f13af2020a5b9e19c9bd55;hb=HEAD;hpb=93cb10d1d571c39a1f7b39b88d1fba745f2e31a9 diff --git a/papers.bib b/papers.bib index fa6ae7b..e6302ae 100644 --- a/papers.bib +++ b/papers.bib @@ -16,6 +16,50 @@ year={2006} } +@misc{texdraft, + title={Preliminary preliminary description of {\TeX}}, + author={Knuth, Donald}, + year={1977}, + howpublished={\url{http://www.saildart.org/TEXDR.AFT[1,DEK]1}}, + urldate={2014-05-20}, + note={Retrieved 2014-05-20} +} + +@article{fuchs1982theformat, + title={The Format of {\TeX}'s {DVI} files}, + author={Fuchs, David}, + year={1982}, + journal={TUGBoat}, + volume={3}, + number={2}, + howpublished={\url{http://www.tug.org/TUGboat/Articles/tb03-2/tb06software.pdf}} +} + +% HTML 2 spec +@article{html2rfc, + title={Hypertext Markup Language -- 2.0}, + author={Berners-Lee, Tim and Connolly, Daniel}, + year={1995}, + journal={Internet RFC 1866} +} + +% CSS 2 spec +@misc{css2spec, + title={Cascading Style Sheets, Level 2, {CSS2} Specification}, + author={Bos, Bert and Wium Lie, Håkon and Lilley, Chris and Jacobs Ian}, + date={1998}, + howpublished={\url{http://www.w3.org/TR/1998/REC-CSS2-19980512/}}, + note={Retrieved 2014-05-22} +} + +@misc{ghostscript, + title={GhostScript, an interpreter for the PostScript language and PDF}, + author={Artifex Software}, + year={1988}, + howpublished={\url{http://www.ghostscript.com/}}, + note={Retrieved 2014-05-21} +} + %%%%%%%%%%%%%%%%%%%%%%%% % Basic Rendering Theory %%%%%%%%%%%%%%%%%%%%%%%% @@ -25,7 +69,7 @@ @inproceedings{porter1984compositing, title={Compositing digital images}, author={Porter, Thomas and Duff, Tom}, - booktitle={ACM Siggraph Computer Graphics}, + booktitle={ACM SIGGRAPH Computer Graphics}, volume={18}, number={3}, pages={253--259}, @@ -47,6 +91,40 @@ publisher={IBM Corp.} } +% Basically my favourite thing on triangle rasterization. +% There are older ones, but this one makes sense. +@misc{giesen2013triangle, + title={Triangle rasterization in practice}, + author={Giesen, Fabien}, + year={2013}, + journal={The ryg blog}, + type={Blog}, + number={February 8}, + howpublished={\url{http://fgiesen.wordpress.com/2013/02/08/triangle-rasterization-in-practice/}}, + note={Retrieved 2014-05-16} +} + +% A paper on polygon rasterization. Probably should find a nice textbook on +% this. +@article{pineda1988parallel, + title={A parallel algorthim for polygon rasterization}, + author={Pineda, Juan}, + journal={ACM Computer Graphics}, + year={1988}, + volume={22}, + number={4}, + pages={17--20}, + publisher={ACM} +} + +% Bézier curves and friends. +@phdthesis{catmull1974asubdivision, + author = {Catmull, Edwin Earl}, + title = {A Subdivision Algorithm for Computer Display of Curved Surfaces.}, + year = {1974}, + note = {AAI7504786}, + publisher = {The University of Utah}, +} %%%%%%%%%%%%%%%%%%%%%%% @@ -72,6 +150,27 @@ Goldberg:1991:CSK:103162.103163, address = {New York, NY, USA}, keywords = {NaN, denormalized number, exception, floating-point, floating-point standard, gradual underflow, guard digit, overflow, relative error, rounding error, rounding mode, ulp, underflow}, } + +@misc{arb_gpu_shader_fp64, + title={{ARB\_gpu\_shader\_fp64}}, + author={Brown, Pat and Lichtenbelt, Barthold and Licea-Kane, Bill and Merry, Bruce and Dodd, Chris and Werness, Eric and Sellers, Graham and Roth, Greg and Bolz, Jeff and Haemel, Nick and Boudier, Pierre and Daniell, Piers}, + year={2010}, + journal={OpenGL Extension}, + publisher={Kronos Group}, + howpublished={\url{http://www.opengl.org/registry/specs/ARB/gpu_shader_fp64.txt}}, + note={Retrieved 2014-05-20} +} + +@misc{nv_half_float, + title={{NV\_half\_float}}, + author={Brown, Pat}, + year={2002}, + journal={OpenGL Extension}, + publisher={NVIDIA Corporation}, + howpublished={\url{http://www.opengl.org/registry/specs/NV/half_float.txt}}, + note={Retrieved 2014-05-20} +} + @inproceedings{emmart2010high, title={High precision integer multiplication with a graphics processing unit}, author={Emmart, Niall and Weems, Charles}, @@ -81,10 +180,37 @@ Goldberg:1991:CSK:103162.103163, organization={IEEE} } +@article{ieee754std1985, + journal={{ANSI}/{IEEE} Std 754-1985}, + title={{IEEE} Standard for Binary Floating-Point Arithmetic}, + year={1985}, +} + +@article{ieee754std2008, + journal={{IEEE} Std 754-2008}, + title={{IEEE} Standard for Floating-Point Arithmetic}, + year={2008}, + month={Aug}, + pages={1-70}, +} + + + %%%%%%%%%%%%%%%%%%%%%%%% % GPU-y Stuff %%%%%%%%%%%%%%%%%%%%%%%% +% OpenGL 4.4 (core profile) spec. +% The latest OpenGL spec. +% See: http://www.opengl.org/registry/doc/glspec44.core.pdf +@book{openglspec, + title={The {OpenGL}\textregistered Graphics System: A Specification}, + author={Segal, Mark and Akely, Kurt and Leech, Jon}, + year={2014}, + publisher={The Kronos Group, Inc}, + url={http://www.opengl.org/registry/doc/glspec44.core.pdf} +} + % The valve paper on using signed distance fields, scaling them and then alpha testing % them to have a smooth, defined boundary for "vector"-like effects. % Also talks of using several channels in the image and running boolean operations on them @@ -92,7 +218,7 @@ Goldberg:1991:CSK:103162.103163, @inproceedings{green2007improved, title={Improved alpha-tested magnification for vector textures and special effects}, author={Green, Chris}, - booktitle={ACM SIGGRAPH 2007 courses}, + booktitle={{ACM} {SIGGRAPH} 2007 courses}, pages={9--18}, year={2007}, organization={ACM} @@ -124,7 +250,7 @@ Goldberg:1991:CSK:103162.103163, % Split texture into a grid/quadtree, have each element represented by a set of cubic equations, combined CSG style. % Need to read this further to understand some of the nuance, though I expect GLyphy does this better? @techreport{ray2005vector, - title={Vector texture maps on the GPU}, + title={Vector texture maps on the {GPU}}, author={Ray, Nicolas and Cavin, Xavier and L{\'e}vy, Bruno}, year={2005}, institution={Technical Report ALICE-TR-05-003} @@ -172,7 +298,7 @@ Goldberg:1991:CSK:103162.103163, @article{loop2007rendering, title={Rendering vector art on the GPU}, author={Loop, Charles and Blinn, Jim}, - journal={GPU gems}, + journal={{GPU} gems}, volume={3}, pages={543--562}, year={2007} @@ -185,9 +311,9 @@ Goldberg:1991:CSK:103162.103163, % See Zach Rusin's blog post comparing it to Qt's SVG renderer. % http://zrusin.blogspot.com.au/2011/09/nv-path-rendering.html @article{kilgard2012gpu, - title={GPU-accelerated path rendering}, + title={{GPU}-accelerated path rendering}, author={Kilgard, Mark J and Bolz, Jeff}, - journal={ACM Transactions on Graphics (TOG)}, + journal={{ACM} Transactions on Graphics (TOG)}, volume={31}, number={6}, pages={172}, @@ -196,7 +322,7 @@ Goldberg:1991:CSK:103162.103163, } % An extension to the above, detailing the use of the extension, rather than the way it is implemented. @article{kilgard300programming, - title={Programming with NV path rendering: An Annex to the SIGGRAPH paper GPU-accelerated Path Rendering}, + title={Programming with {NV} path rendering: An Annex to the {SIGGRAPH} paper {GPU}-accelerated Path Rendering}, author={Kilgard, Mark J}, journal={heart}, volume={300}, @@ -213,7 +339,7 @@ Goldberg:1991:CSK:103162.103163, % OpenVG is an opengl-ish API for vector graphics. % More based around SVG than postscript, but not bad. @article{rice2008openvg, - title={OpenVG Specification, version 1.1}, + title={{OpenVG} Specification, version 1.1}, author={Rice, Daniel and Simpson, RJ}, journal={Khronos Group}, year={2008} @@ -223,7 +349,7 @@ Goldberg:1991:CSK:103162.103163, % Implementing OpenVG using OpenGL ES 1. Pretty high-level overview. % Basically boiled down to "we tesselated to get curves, and then used textures for fill" @inproceedings{oh2007implementation, - title={Implementation of OpenVG 1.0 using OpenGL ES}, + title={Implementation of {OpenVG} 1.0 using {OpenGL} {ES}}, author={Oh, Aekyung and Sung, Hyunchan and Lee, Hwanyong and Kim, Kujin and Baek, Nakhoon}, booktitle={Proceedings of the 9th international conference on Human computer interaction with mobile devices and services}, pages={326--328}, @@ -234,7 +360,7 @@ Goldberg:1991:CSK:103162.103163, % Implementing the OpenVG paint modes using GLES2 shaders. % This is all pretty simple stuff. @inproceedings{robart2009openvg, - title={OpenVG paint subsystem over openGL ES shaders}, + title={{OpenVG} paint subsystem over {OpenGL} {ES} shaders}, author={Robart, Mathieu}, booktitle={Consumer Electronics, 2009. ICCE'09. Digest of Technical Papers International Conference on}, pages={1--2}, @@ -242,6 +368,31 @@ Goldberg:1991:CSK:103162.103163, organization={IEEE} } +@article{blinn1992trip, + title={A Trip Down the Graphics Pipeline: Grandpa, What Does “Viewport” Mean?}, + author={Blinn, James}, + journal={Computer Graphics and Applications, IEEE}, + month={Jan}, + volume={12}, + number={1}, + pages={83--87}, + year={1992} +} + +@ARTICLE{blinn1991trip, + author={Blinn, James}, + journal={Computer Graphics and Applications, IEEE}, + title={A Trip Down the Graphics Pipeline: Line Clipping}, + year={1991}, + month={Jan}, + volume={11}, + number={1}, + pages={98-105}, + keywords={computer graphics;Z clipping;clipping function;computer graphics;global clipping;homogeneous clipping;line clipping;transform-clip-draw pipeline;Application software;Arithmetic;Assembly;Computer graphics;Displays;Education;Hardware;Pipelines;Standards publication}, + doi={10.1109/38.67707}, + ISSN={0272-1716}, +} + %%%%%%%%%%%%%%%%% % Quadtrees %%%%%%%%%%%%%%%%% @@ -256,6 +407,45 @@ Goldberg:1991:CSK:103162.103163, publisher={Springer} } +%BSP trees +@inproceedings{fuchs1980onvisible, + author = {Fuchs, Henry and Kedem, Zvi M. and Naylor, Bruce F.}, + title = {On Visible Surface Generation by a Priori Tree Structures}, + booktitle = {Proceedings of the 7th Annual Conference on Computer Graphics and Interactive Techniques}, + series = {SIGGRAPH '80}, + year = {1980}, + isbn = {0-89791-021-4}, + location = {Seattle, Washington, USA}, + pages = {124--133}, + numpages = {10}, + url = {http://doi.acm.org/10.1145/800250.807481}, + doi = {10.1145/800250.807481}, + acmid = {807481}, + publisher = {ACM}, + address = {New York, NY, USA}, +} + +% KD-tree paper +@article{bentley1975multidimensional, + author = {Bentley, Jon Louis}, + title = {Multidimensional Binary Search Trees Used for Associative Searching}, + journal = {Commun. ACM}, + issue_date = {Sept. 1975}, + volume = {18}, + number = {9}, + month = sep, + year = {1975}, + issn = {0001-0782}, + pages = {509--517}, + numpages = {9}, + url = {http://doi.acm.org/10.1145/361002.361007}, + doi = {10.1145/361002.361007}, + acmid = {361007}, + publisher = {ACM}, + address = {New York, NY, USA}, + keywords = {associative retrieval, attribute, binary search trees, binary tree insertion, information retrieval system, intersection queries, key, nearest neighbor queries, partial match queries}, +} + % Basic overview of PDF and how it is awesome. % This doesn't seem like a major revelation for 2002 @@ -267,7 +457,7 @@ Goldberg:1991:CSK:103162.103163, Keywords = {PDF (Computer file format), FILE organization (Computer science), ELECTRONIC data processing}, Number = {1}, Pages = {59 - 63}, - Title = {Portable Document Format (PDF) -- Finally, a Universal Document Exchange Technology.}, + Title = {Portable Document Format ({PDF}) -- Finally, a Universal Document Exchange Technology.}, Volume = {28}, URL = {http://search.ebscohost.com/login.aspx?direct=true&db=aph&AN=11512377&site=ehost-live}, Year = {2002}, @@ -424,6 +614,24 @@ doi={10.1109/ARITH.1991.145549},} howpublished = {\url{http://www.boost.org/doc/libs/1_53_0/libs/multiprecision/doc/html/boost_multiprecision/}} } +@misc{java_bigint, + author = {Oracle Corporation}, + title = {java.math.{BigInteger}}, + booktitle = {Java Platform 6 {SE}}, + urldate = {19-05-2014}, + howpublished = {\url{http://docs.oracle.com/javase/6/docs/api/java/math/BigInteger.html}}, + note={Retrieved 2014-05-19} +} + +@misc{java_bigdecimal, + author = {Oracle Corporation}, + title = {java.math.{BigDecimal}}, + booktitle = {Java Platform 7 {SE}}, + howpublished = {\url{http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html}}, + urldate = {19-05-2014}, + note={Retrieved 2014-05-19} +} + % A CMOS Floating Point Unit @MISC{kelley1997acmos, author = {Michael J. Kelley and Matthew A. Postiff and Advisor Richard and B. Brown}, @@ -518,7 +726,8 @@ ISSN={1063-6889},} author = "Jim Demmel", journal = "U.C. Berkeley CS267", note = "Lecture Notes", - howpublished = "\url{http://www.cs.berkeley.edu/~demmel/cs267/lecture21/lecture21.html}" + howpublished = "\url{http://www.cs.berkeley.edu/~demmel/cs267/lecture21/lecture21.html}", + year = 1996 } @misc{grfpu_dasia, @@ -571,7 +780,7 @@ keywords={IEEE standards;floating point arithmetic;programming;IEEE standard;ari doi={10.1109/IEEESTD.2008.4610935},} -@article{dekker1971afloating +@article{dekker1971afloating, year={1971}, issn={0029-599X}, journal={Numerische Mathematik}, @@ -585,3 +794,430 @@ author={Dekker, T.J.}, pages={224-242}, language={English} } + +@String{pub-BIRKHAUSER-BOSTON = "Birkh{\"a}user Boston Inc."} +@String{pub-BIRKHAUSER-BOSTON:adr = "Cambridge, MA, USA"} + +@Book{HFP, + author = "Jean-Michel Muller and Nicolas Brisebarre and Florent + de Dinechin and Claude-Pierre Jeannerod and Vincent + Lef{\`e}vre and Guillaume Melquiond and Nathalie Revol + and Damien Stehl{\'e} and Serge Torres", + title = "Handbook of Floating-Point Arithmetic", + publisher = pub-BIRKHAUSER-BOSTON, + address = pub-BIRKHAUSER-BOSTON:adr, + pages = "xxiii + 572", + year = "2010", + DOI = "http://dx.doi.org/10.1007/978-0-8176-4704-9", + ISBN = "0-8176-4704-X", + ISBN-13 = "978-0-8176-4704-9", + LCCN = "QA76.9.C62 H36 2010", + bibdate = "Thu Jan 27 16:18:58 2011", + price = "US\$90 (est.)", + acknowledgement = ack-nhfb, +} + +@article{svg2011-1.1, + year = 2011, + month = "August", + journal = "W3C Recommendation", + title = "Scalable Vector Graphics (SVG) 1.1 (Second Edition)", + author = "Erik Dahlst{\'o}m and Patric Dengler and Anthony Grasso and Chris Lilley and Cameron McCormack and Doug Schepers and Jonathon Watt and Jon Ferraiolo and Fujisawa Jun and Dean Jackson", + howpublished = "\url{http://www.w3.org/TR/SVG/}", + note = "Retrieved 2014-05-23", +} + +@article{xml2008-1.0, + year = 2008, + month = "November", + journal = "W3C Recommendation", + title = "Extensible Markup Language (XML) 1.0 (Fifth Edition)", + author = "W3C", + editor = "Tim Bray and Jean Paoli and C Sperberg-McQueen and Eve Maler and Francois Yergeau", + howpublished = "\url{http://www.w3.org/TR/xml/}" +} + +@article{html2014-draft, + year = 2014, + month = "April", + journal = "W3C Candidate Recommendation", + title = "HTML5 - Developer View - A Vocabulary and associated APIs for HTML and XHTML", + author = "W3C", + editor = "Robin Berjon and Steve Faulkner and Travis Leithead and Erika Navara and Edward O'Connor and Silvia Pfeiffer and Ian Hickson", + howpublished = "\url{http://www.w3.org/TR/html/}" +} + +@article{css2011-level2, + year = 2011, + month = "June", + journal = "W3CRecommendation", + title = "Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification", + author = "W3C", + editor = "Bert Bos, Tantex Celik, Ian Hickson, Hakon WiumLie", + howpublished = "\url{http://www.w3.org/TR/CSS21/}" +} + +@article{kapoulkine2014pugixml, + year = "2014", + author = "Arseny Kapoulkine", + title = "pugixml --- Light-weight, simple and fast XML parser for C++ with XPath support", + howpublished="http://pugixml.org", +} + + +@article{pugixmlDOM, + year = "2014", + author = "Arseny Kapoulkine", + title = "Document Object Model", + journal = "pugixml 1.4 manual", + howpublished = "http://pugixml.googlecode.com/svn/tags/latest/docs/manual/dom.html" +} + +% Rendering vector graphics on vector display devices (historical) +%Brassel:1979:ASR:965103.807434, +@article{brassel1979analgorithm, + author = {Brassel, Kurt E. and Fegeas, Robin}, + title = {An Algorithm for Shading of Regions on Vector Display Devices}, + journal = {SIGGRAPH Comput. Graph.}, + issue_date = {August 1979}, + volume = {13}, + number = {2}, + month = aug, + year = {1979}, + issn = {0097-8930}, + pages = {126--133}, + numpages = {8}, + url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/965103.807434}, + doi = {10.1145/965103.807434}, + acmid = {807434}, + publisher = {ACM}, + address = {New York, NY, USA}, + keywords = {Cartography, Computer graphics, Line-drawing processing, Polygons, Shading, Software, Spatial information}, +} +%Lane:1983:AFR:357323.357326, +@article{lane1983analgorithm, + author = {Lane, J. M. and M. Rarick, R. and}, + title = {An Algorithm for Filling Regions on Graphics Display Devices}, + journal = {ACM Trans. Graph.}, + issue_date = {July 1983}, + volume = {2}, + number = {3}, + month = jul, + year = {1983}, + issn = {0730-0301}, + pages = {192--196}, + numpages = {5}, + url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/357323.357326}, + doi = {10.1145/357323.357326}, + acmid = {357326}, + publisher = {ACM}, + address = {New York, NY, USA}, +} + +@article{hillesland2004paranoia, + author = "Karl E Hillesland and Anselmo Lastra", + title = "GPU Floating-Point Paranoia", + journal = "Proceedings of GP 2004", + year = 2004, + url = "\url{http://www.cs.unc.edu/~ibr/projects/paranoia/}" +} + +%Fousse:2007:MMB:1236463.1236468, +@article{fousse2007mpfr, + author = {Fousse, Laurent and Hanrot, Guillaume and Lef\`{e}vre, Vincent and P{\'e}lissier, Patrick and Zimmermann, Paul}, + title = {MPFR: A Multiple-precision Binary Floating-point Library with Correct Rounding}, + journal = {ACM Trans. Math. Softw.}, + issue_date = {June 2007}, + volume = {33}, + number = {2}, + month = jun, + year = {2007}, + issn = {0098-3500}, + articleno = {13}, + url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/1236463.1236468}, + doi = {10.1145/1236463.1236468}, + acmid = {1236468}, + publisher = {ACM}, + address = {New York, NY, USA}, + keywords = {IEEE 754 standard, Multiple-precision arithmetic, correct rounding, elementary function, floating-point arithmetic, portable software}, +} + + +@misc{kahan1996ieee754, + author = "W Kahan", + title = "Lecture Notes on the Status of IEEE Standard 754 for Binary Floating-Point Arithmetic", + howpublished = "\url{http://http.cs.berkeley.edu/~wkahan/ieee754status/ieee754.ps} accessed April 2014", + year = 1996, + month = May +} + +@misc{kahan2007wrong, + author = "W Kahan", + title = "Why is Floating-Point Computation so Hard to Debug when it Goes Wrong?", + howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/WrongR.pdf} accessed April 2014", + year = 2007, + month = March +} + +@misc{kahanweb, + author = "W Kahan", + title = "Prof W Kahan's Webpages", + howpublished = "\url{http://www.cs.berkeley.edu/~wkahan/} accessed April 2014" +} + +@book{computergraphics2, + author = "Donald Hearn and M Pauline Baker", + title = "Computer Graphics", + edition = 2, + year = 1997, + publisher = "Prentice Hall, Inc", + address = "Upper Saddle River, New Jersey 07458, USA" +} + +@ARTICLE{bresenham1996pixel, +author={Bresenham, J.}, +journal={Computer Graphics and Applications, IEEE}, +title={Pixel-processing fundamentals}, +year={1996}, +month={Jan}, +volume={16}, +number={1}, +pages={74-82}, +keywords={approximation theory;computer graphics;computer driven raster displays;edge drawing algorithms;explicit reference model;integer arithmetic algorithm;line drawing algorithms;line rastering;objective function;pixel processing fundamentals;pixel space basics;pixel-processing fundamentals;raster approximation;systematic rules;unintentionally fuzzy assumptions;Approximation algorithms;Cities and towns;Color;Computer displays;Layout;Lifting equipment;Painting;Tutorial;Visual effects;Yarn}, +doi={10.1109/38.481626}, +ISSN={0272-1716},} + +% It's a series of blog posts, don't judge me +% Also don't look at the rest of the blog, it's strange... +@misc{elias2000graphics, + title = "Graphics", + author = "Hugo Elias", + howpublished = {\url{http://freespace.virgin.net/hugo.elias/graphics/x\_main.htm} accessed May 2014}, + abstract = "This page explains how to draw graphics onto (mostly) Raster display systems. A very small amount could possibly be relevant to vector displays, but who uses those any more?" +} + +@article{wu1991anefficient, + author = {Wu, Xiaolin}, + title = {An Efficient Antialiasing Technique}, + journal = {SIGGRAPH Comput. Graph.}, + issue_date = {July 1991}, + volume = {25}, + number = {4}, + month = jul, + year = {1991}, + issn = {0097-8930}, + pages = {143--152}, + numpages = {10}, + url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/127719.122734}, + doi = {10.1145/127719.122734}, + acmid = {122734}, + publisher = {ACM}, + address = {New York, NY, USA}, + keywords = {antialiasing, convolution, curve digitization, digital geometry}, +} + +@article{w3c2010svghtmlprimer, + year = 2010, + month = "September", + journal = "WC3 Primer (Editor's Draft)", + title = "An SVG Primer for Today's Browsers", + author = "W3C", + editor = "David Dailey", + howpublished = "\url{http://www.w3.org/Graphics/SVG/IG/resources/svgprimer.html}" +} + +% Koch snowflake in French no I didn't read it so sue me it is just here to give Koch credit +@article{koch1904surune, + year = 1904, + author = "H Von Koch", + title = "Sur une courbe continue sans tangente, obtenue par une construction géométrique élémentaire." , + journal = "Archiv för Matemat., Astron. och Fys.", + pages = "681-702"} + +@article{js_3d_pdf, + year = 2007, + author = "Adobe Systems Incorporated", + edition = 2, + month = "April", + journal = "Adobe Acrobat Reader SDK" +} +% Holy mackerel, a paper on precision in document formats! +@article{beebe2007extending, + author={Beebe, Nelson}, + title={Extending {\TeX} and {METAFONT} With Floating-Point Arithmetic}, + year={2007}, + journal={{TUGboat}}, + volume={28}, + number={3}, +} + +@book{de1986shape, + title={Shape mathematics and CAD}, + author={De Casteljau, Paul de Faget}, + year={1986}, + publisher={IET} +} + +@book{foley1996computer, + title={Computer Graphics: Principles and Practice}, + author={Foley, J.D.}, + isbn={9780201848403}, + lccn={lc95013631}, + chapter={Representing Curves and Surfaces}, + series={Addison-Wesley systems programming series}, + url={http://books.google.com.au/books?id=-4ngT05gmAQC}, + year={1996}, + publisher={Addison-Wesley} +} + +@book{zerbst2004game, + title={{3D} Game Engine Programming}, + author={Zerbst, Stefan and Düvel, Oliver}, + publisher={Premier Press}, + chapter={Scene Management}, + isbn={1592003516}, + year={2004} +} + +@book{knuth1983metafont, + author = "Donald Knuth", + year = 1983, + title = "The {METAFONT} Book", + publisher = "Addison-Wesley", + edition = 2 +} + +@book{knuth1984texbook, + author = "Donald Knuth", + year = 1983, + title = "The {\TeX} Book", + publisher = "Addison-Wesley", + edition = 2 +} + +%Bezier:1986:PVP:988594.988595, +@article{bezier1986apersonal, + author = {B{\'e}zier, Pierre E.}, + title = {A Personal View of Progress in Computer Aided Design}, + journal = {SIGGRAPH Comput. Graph.}, + issue_date = {July 1986}, + volume = {20}, + number = {3}, + month = jul, + year = {1986}, + issn = {0097-8930}, + pages = {154--159}, + numpages = {6}, + url = {http://doi.acm.org.ezproxy.library.uwa.edu.au/10.1145/988594.988595}, + doi = {10.1145/988594.988595}, + acmid = {988595}, + publisher = {ACM}, + address = {New York, NY, USA}, +} + +% ECMAscript (Javascript) (sorry David I had to do it) +@book{ecma-262, + title = "ECMAScript Language Specification", + year = 2011, + month = "June", + edition = "5.1", + publisher = {\url{http://www.ecma-international.org} accessed 2014-05-22}, + author = "ECMA International" +} + +@ARTICLE{randell1982fromanalytical, +author={Randell, B.}, +journal={Annals of the History of Computing}, +title={From Analytical Engine to Electronic Digital Computer: The Contributions of Ludgate, Torres, and Bush}, +year={1982}, +month={Oct}, +volume={4}, +number={4}, +pages={327-341}, +keywords={Calculators;Character recognition;Engine cylinders;Engineering drawings;Hardware;History;Information analysis;Information processing;Permission;Time sharing computer systems}, +doi={10.1109/MAHC.1982.10042}, +ISSN={0164-1239},} + +@article{heckmann1998bigintegers, + author = "Reinhold Heckmann", + title = "Big Integers and Complexity Issues in Exact Real Arithmetic", + journal = "Electronic Notes in Theoretical Computer Science", + Volume = 13, + year = 1998, + pages = 69, + doi = "10.1016/S1571-0661(05)80215-4" +} + + +% XKCD comic "pixels" +@misc{munroe2014pixels, +author={Munroe, Randall}, +title={Pixels}, +url={http://xkcd.com/1416}, +howpublished={\url{http://xkcd.com/1416/} accessed 2014-09-03}, +journal={xkcd: A webcomic of romance, sarcasm, math, and language.} +year={2014}, +month={September}, +day={3}, +date={2014-09-03}, +number={1416} +} + +% GL_ARB_shader_precision +@misc{ARBshaderprecision, +author={Kessenich, John}, +title={{GL\_ARB\_shader\_precision}}, +year={2010}, +howpublished={\url{https://www.opengl.org/registry/specs/ARB/shader_precision.txt} accessed 2014-10-17} +} + +@article{intelgpuspec, +author={Intel Corporation}, +title={{3D/Media --- 3D Pipeline (Ivy Bridge)}}, +journal={{Intel OpenSource HD Graphics Programmer's Reference Manual (PRM)}}, +year={2012}, +url={https://01.org/linuxgraphics/sites/default/files/documentation/ivb_ihd_os_vol2_part1.pdf}, +volume={2}, +number={1} +} + +@misc{dawson2012notnormal, +author={Dawson, Bruce}, +title={{That's Not Normal --- the Performance of Odd Floats}}, +year={2012}, +howpublished={\url{https://randomascii.wordpress.com/2012/05/20/thats-not-normalthe-performance-of-odd-floats/} accessed 2014-10-18} +} + +# Original cubic solution +@misc{cardano1545artis, +author={Cardano, Gerolamo}, +title={Artis magnae sive de regulis agebraicis: liber unus}, +year={1545} +} + +@misc{sederberg2007cad, +author={Sederberg, T. W.}, +title={Computer Aided Geometric Design Course Notes}, +year={2007} +} + +@book{salomon2007data, + title={Data Compression: The Complete Reference}, + author={Salomon, D. and Motta, G. and Bryant, D.}, + isbn={9781846286032}, + lccn={2006931789}, + series={Molecular biology intelligence unit}, + url={http://books.google.com.au/books?id=ujnQogzx\_2EC}, + year={2007}, + publisher={Springer} +} + +@book{taocp2, + title={Seminumerical Algorithms}, + author={Knuth, Donald}, + year={1998}, + volume={2}, + series={The Art of Computer Programming}, + publisher={Addison--Wesley}, + edition={3rd} +} \ No newline at end of file