'maindict.dct' navy sbc white spc silver sfc fill 3 spw 30 18 moveto 990 18 lineto 990 986 lineto 10 986 lineto 10 18 lineto 30 18 lineto "Helvetica" sfn bold sft 20 sfs 20 0 moveto "Numerical Geometry Ltd." show 20 970 moveto " ECITTT April 2001 " show 920 970 moveto framelabel show 920 0 moveto framelabel showint 60 sfs frame 70 sfs (h 350 put) 100 h get moveto "New Surface Descriptions" show 60 sfs pause 10 [ ( h 5 decrement ) 100 wait ] 180 500 moveto "What's next after Nurbs ?" show 45 sfs (s 850 put) (t "Numerical Geometry Ltd. " put u "April 2001" put) 60 s get 80 sub moveto "Malcolm Sabin" show 750 s get moveto u get show 60 s get moveto t get show pause ( t "malcolm @ geometry . demon . co . uk" put u " " put) frame 30 30 moveto "Where does this talk fit ?" show grey sbc 350 200 100 800 600 800 triangle navy sbc 50 sfs 650 200 moveto "presentation" show 650 700 moveto "computation" show 100 810 moveto "small" show 500 810 moveto "large" show pause (t "Karihaloo" put x 200 put y 720 put) yellow sfc yellow spc 10 spw 550 400 moveto t get show x get y get ast symbol pause (t "Fox" put x 330 put y 300 put ) pause (t "Hodulak" put) pause (t "Rudolph" put x 450 put y 450 put) pause (t " Fisch" put x 400 put y 430 put) pause (t "PHarouki" put x 300 put y 720 put) pause (t "Watson" put x 520 put y 720 put) pause (t "Cheney" put x 350 put y 220 put) pause (t "Sabin" put x 400 put y 720 put) frame 50 50 moveto "What's next after Nurbs ?" show 50 sfs 100 300 moveto "Trends" show 100 400 moveto "Thresholds" show 100 500 moveto "Technologies" show 100 600 moveto "Transfer Issues" show 100 700 moveto "Conclusions" show frame yellow spc yellow sfc 6 spw 190 140 moveto 190 830 lineto 900 830 lineto 2 spw 190 785 moveto 900 785 lineto 190 755 moveto 900 755 lineto 190 725 moveto 900 725 lineto 190 695 moveto 900 695 lineto 190 665 moveto 900 665 lineto 190 635 moveto 900 635 lineto 190 605 moveto 900 605 lineto 190 575 moveto 900 575 lineto 190 545 moveto 900 545 lineto 190 515 moveto 900 515 lineto 190 485 moveto 900 485 lineto 190 455 moveto 900 455 lineto 190 425 moveto 900 425 lineto 190 395 moveto 900 395 lineto 190 365 moveto 900 365 lineto 190 335 moveto 900 335 lineto 190 305 moveto 900 305 lineto 190 275 moveto 900 275 lineto 190 245 moveto 900 245 lineto 190 215 moveto 900 215 lineto 190 185 moveto 900 185 lineto 330 140 moveto 330 830 lineto 470 140 moveto 470 830 lineto 610 140 moveto 610 830 lineto 750 140 moveto 750 830 lineto 890 140 moveto 890 830 lineto 45 sfs 500 910 moveto "Date" show 50 50 moveto "Memory size" show 150 840 moveto "1960" show 290 840 moveto "1970" show 430 840 moveto "1980" show 570 840 moveto "1990" show 710 840 moveto "2000" show 850 840 moveto "2010" show 20 150 moveto "1 Gbyte" show 20 250 moveto "100 Mb" show 20 350 moveto " 10 Mb" show 20 450 moveto "1Mbyte" show 20 550 moveto "100Kb" show 20 650 moveto "10Kb" show 20 750 moveto "1Kbyte" show pause ( t "Ferranti Pegasus" put ) ( h 0 put ) 55 sfs white sfc 350 40 moveto t get show lime spc 210 790 h get add 5 symbol pause 9 [ (h 20 decrement) 10 wait ] pause ( t "ICL 1905" put ) green spc 210 610 5 symbol lime spc 280 540 5 symbol pause (t "ICL 1906A" put ) green spc 280 540 5 symbol lime spc 350 490 5 symbol pause ( t "SM4" put ) green spc 350 490 5 symbol lime spc 410 585 10 symbol pause ( t "UK101" put ) green spc 410 585 10 symbol lime spc 500 665 7 symbol pause ( t "380Z" put ) green spc 500 665 7 symbol lime spc 530 575 7 symbol pause (t " MUM primes" put ) green spc 530 575 7 symbol lime spc 540 485 10 symbol pause ( t "VAX" put ) green spc 540 485 10 symbol lime spc 570 455 5 symbol pause ( t "'Eudoxus'" put ) green spc 570 455 5 symbol lime spc 680 335 5 symbol pause ( t "'Euclid'" put) green spc 680 335 5 symbol 710 285 5 symbol lime spc 740 215 5 symbol pause green spc 740 215 blob symbol (t "laptops" put) yellow spc 660 455 difill symbol 740 275 difill symbol frame 55 sfs 50 50 moveto "Thresholds" show 250 800 moveto "1Kbyte" show 500 800 moveto "1Mbyte" show 750 800 moveto "1Gbyte" show 10 spw 100 900 moveto 900 100 lineto pause red spc 12 spw 45 sfs 100 900 moveto 450 550 lineto 2 spw 100 550 lineto 415 870 moveto "32K" show 20 510 moveto "Word processing" show pause 12 spw 100 900 moveto 600 400 lineto 2 spw 100 400 lineto 20 360 moveto "Windows and mice" show pause frame 55 sfs green sbc 20 220 980 650 rectangle 40 250 moveto '"When quantitative changes' show 280 390 moveto 'get large enough' show 180 530 moveto 'they become qualitative ones."' show pause 40 sfs navy sbc 400 750 moveto "- a paraphrase from Karl Marx" show frame 55 sfs 50 50 moveto "Generations of Surface Technology" show pause red spc 50 170 5 symbol white sfc 100 150 moveto "Physical Lofting" show pause 45 sfs (a white put) a get sfc 150 260 moveto "Shapes are defined by the drawing of" show 150 330 moveto "nests of cross-sections accurately onto" show 150 400 moveto "dimensionally stable metal or foil." show (b silver put) b get sfc 150 500 moveto "Nests are drawn in at least two views," show 150 570 moveto "maybe three, with techniques from" show 150 640 moveto "Descriptive Geometry being used to" show 150 710 moveto "ensure consistency." show (c silver put) c get sfc 150 810 moveto "Interrogations also use Descriptive" show 150 880 moveto "Geometry techniques." show pause (a silver put b white put) pause (b silver put c white put) frame 55 sfs 50 50 moveto "Generations of Surface Technology" show red spc 50 170 5 symbol white sfc 100 150 moveto "Physical Lofting" show 45 sfs 150 360 moveto "This is very direct, but requires great" show 150 430 moveto "skill on the part of the loftsman." show 150 530 moveto "It also requires a lot of office space." show pause frame 55 sfs 50 50 moveto "Generations of Surface Technology" show red spc 50 170 5 symbol 100 150 moveto "Physical Lofting" show white sfc 50 280 5 symbol 100 260 moveto "Conic Lofting" show 45 sfs (a white put) a get sfc 150 370 moveto "Shapes are defined by the coefficients of" show 150 440 moveto "the equations of the curves which would" show 150 510 moveto "have been drawn in the primary view." show pause (a silver put b white put) b get sfc 150 610 moveto "Interrogation is by evaluating points on" show 150 680 moveto "these curves and approximating new " show 150 750 moveto "equations through the interpolated points." show frame 55 sfs 50 50 moveto "Generations of Surface Technology" show red spc 50 170 5 symbol 100 150 moveto "Physical Lofting" show 50 280 5 symbol white sfc 100 260 moveto "Conic Lofting" show 45 sfs 150 470 moveto "This process guarantees fair shapes" show 150 540 moveto "relatively automatically, but requires" show 150 610 moveto "analytic, rather than geometric, ability" show 150 680 moveto "on the part of those defining the shapes." show frame 55 sfs 50 50 moveto "Generations of Surface Technology" show red spc 50 170 5 symbol 100 150 moveto "Physical Lofting" show 50 280 5 symbol 100 260 moveto "Conic Lofting" show 50 390 5 symbol white sfc 100 370 moveto "Parametric Surfaces" show 45 sfs (a white put) a get sfc 150 480 moveto "Now the coefficients held are of surface" show 150 550 moveto "equations rather than of curves." show pause (b white put a silver put) b get sfc 150 650 moveto "Interrogation is by iterative algorithms" show 150 720 moveto "possible only on the computer." show frame 55 sfs 50 50 moveto "Generations of Surface Technology" show red spc 50 170 5 symbol 100 150 moveto "Physical Lofting" show 50 280 5 symbol 100 260 moveto "Conic Lofting" show 50 390 5 symbol white sfc 100 370 moveto "Parametric Surfaces" show 45 sfs (a white put) a get sfc 150 500 moveto "These put the responsibility for shapes" show 150 570 moveto "back in the hands of the geometric" show 150 640 moveto "specialists." show pause (a silver put b white put) b get sfc 150 750 moveto "But there are still problems." show frame 55 sfs green spc 50 120 5 symbol 100 100 moveto "Conic Lofting benefits" show 50 sfs 120 200 moveto "less office space" show 120 270 moveto "more reliable precision" show pause 55 sfs 50 420 blob symbol 100 400 moveto "requirements" show 50 sfs 120 500 moveto "half a dozen 10-digit registers = 30b" show pause 100 600 moveto "desk calculators with these became " show 100 670 moveto "available in the 1930's" show pause 100 770 moveto "Liming's book was published in 1937" show frame 55 sfs green spc 50 120 5 symbol 100 100 moveto "Parametric Surface benefits" show 45 sfs 120 200 moveto "easier to design surfaces" show 120 270 moveto "simple unified algorithms for interrogation" show 55 sfs 50 420 blob symbol 100 400 moveto "requirements" show 45 sfs 120 500 moveto "a hundred or so control points + programs" show pause 100 600 moveto "computers of this size became " show 100 670 moveto "available in the 1960's" show pause 100 770 moveto "systems were operational at BAe by 1972" show frame 55 sfs 50 50 moveto "Thresholds" show 250 800 moveto "1Kbyte" show 500 800 moveto "1Mbyte" show 750 800 moveto "1Gbyte" show 10 spw 100 900 moveto 900 100 lineto red spc 12 spw 45 sfs 100 900 moveto 450 550 lineto 2 spw 100 550 lineto 415 870 moveto "32K" show 20 510 moveto "Word processing" show 12 spw 100 900 moveto 600 400 lineto 2 spw 100 400 lineto 20 360 moveto "Windows and mice" show pause yellow spc yellow sfc 14 spw 100 900 moveto 150 850 lineto 2 spw 150 650 lineto 92 630 moveto "Conic" show 80 690 moveto "Lofting" show pause 14spw 100 900 moveto 500 500 lineto 2 spw 500 700 lineto 410 660 moveto "Parametric" show 430 720 moveto "Surfaces" show 100 900 moveto pause 14 spw 100 900 moveto 800 200 lineto 2 spw 800 450 lineto 700 400 moveto "Subdivision" show 720 460 moveto "Surfaces" show frame 120 50 moveto "What are subdivision surfaces ?" show aqua spc 45 sfs 50 165 blob symbol 100 150 moveto "Facet Surfaces" show 100 237 plus symbol 150 220 moveto "facets" show (t 0 put) 100 307 t get add plus symbol 150 290 t get add moveto "vertices" show pause 40 sfs 320 220 moveto "define 'sequence' of vertices." show (l 400 put r 600 put s full put ) s get sps 100 850 moveto 200 800 lineto l get 600 lineto r get 600 lineto 800 800 lineto 900 850 lineto full sps 200 780 oh symbol 400 580 oh symbol 600 580 oh symbol 800 780 oh symbol pause ( l 600 put r 400 put ) pause ( l 400 put r 600 put ) pause 10 [ ( t 8 increment) 10 wait ] 320 290 moveto "need not imply plane bits of surface." show (l 400 put r 600 put s dashed put ) pause 320 370 moveto "define position of bits of surface." show pause (y 0 put) lime spc 200 800 y get sub moveto 400 500 y get add y get add 600 500 y get add y get add 800 800 y get sub curveto pause 320 440 moveto "need not imply interpolation." show (y 30 put) pause navy sbc navy spc 40 520 960 900 rectangle aqua spc 45 sfs 50 545 blob symbol 100 530 moveto "Subdivision Surfaces" show 40 sfs 100 637 plus symbol 150 620 moveto "geometry is defined precisely as the" show 350 690 moveto "limit of refinements." show pause 100 777 plus symbol 150 760 moveto "a coarse representation can define" show 350 830 moveto "a smooth limit surface." show pause 100 917 plus symbol 150 900 moveto "a classic facet surface has a crude refinement." show frame 55 sfs 50 50 moveto "Examples" show 50 150 moveto "Facets" show 20 sfs lime spc 200 300 blob symbol 800 300 blob symbol 800 900 blob symbol 200 900 blob symbol pause 500 300 blob symbol 800 600 blob symbol 500 900 blob symbol 200 600 blob symbol pause 350 300 blob symbol 650 300 blob symbol 800 450 blob symbol 800 750 blob symbol 350 900 blob symbol 650 900 blob symbol 200 450 blob symbol 200 750 blob symbol pause 275 300 blob symbol 425 300 blob symbol 575 300 blob symbol 725 300 blob symbol 275 900 blob symbol 425 900 blob symbol 575 900 blob symbol 725 900 blob symbol 200 375 blob symbol 200 525 blob symbol 200 675 blob symbol 200 825 blob symbol 800 375 blob symbol 800 525 blob symbol 800 675 blob symbol 800 825 blob symbol frame 55 sfs 50 50 moveto "Examples" show 50 150 moveto "Chaikin" show 20 sfs lime spc 200 300 blob symbol 800 300 blob symbol 800 900 blob symbol 200 900 blob symbol pause dkgrey spc 200 300 blob symbol 800 300 blob symbol 800 900 blob symbol 200 900 blob symbol lime spc 350 300 blob symbol 650 300 blob symbol 800 450 blob symbol 800 750 blob symbol 350 900 blob symbol 650 900 blob symbol 200 450 blob symbol 200 750 blob symbol pause dkgrey spc 200 300 blob symbol 800 300 blob symbol 800 900 blob symbol 200 900 blob symbol navy spc 350 300 blob symbol 650 300 blob symbol 800 450 blob symbol 800 750 blob symbol 350 900 blob symbol 650 900 blob symbol 200 450 blob symbol 200 750 blob symbol lime spc 425 300 blob symbol 575 300 blob symbol 687 337 blob symbol 763 413 blob symbol 800 525 blob symbol 800 675 blob symbol 763 787 blob symbol 687 863 blob symbol 575 900 blob symbol 425 900 blob symbol 313 863 blob symbol 237 787 blob symbol 200 525 blob symbol 200 675 blob symbol 237 413 blob symbol 313 337 blob symbol pause navy spc 425 300 blob symbol 575 300 blob symbol 687 337 blob symbol 763 413 blob symbol 800 525 blob symbol 800 675 blob symbol 763 787 blob symbol 687 863 blob symbol 575 900 blob symbol 425 900 blob symbol 313 863 blob symbol 237 787 blob symbol 200 525 blob symbol 200 675 blob symbol 237 413 blob symbol 313 337 blob symbol lime spc 463 300 blob symbol 537 300 blob symbol 603 309 blob symbol 659 328 blob symbol 706 356 blob symbol 744 394 blob symbol 772 441 blob symbol 791 493 blob symbol 800 563 blob symbol 800 637 blob symbol 791 703 blob symbol 772 759 blob symbol 744 806 blob symbol 706 844 blob symbol 659 872 blob symbol 603 891 blob symbol 537 900 blob symbol 463 900 blob symbol 393 891 blob symbol 341 872 blob symbol 294 844 blob symbol 256 806 blob symbol 228 759 blob symbol 209 703 blob symbol 200 637 blob symbol 200 563 blob symbol 209 493 blob symbol 228 441 blob symbol 256 394 blob symbol 294 356 blob symbol 341 328 blob symbol 393 309 blob symbol frame 55 sfs green spc 50 70 5 symbol 100 50 moveto "Subdivision Surface benefits" show 45 sfs 120 150 moveto "Even easier to design surfaces" show 180 220 moveto "freedom of topology" show 180 280 moveto "multiresolution editing" show 120 350 moveto "More robust interrogations" show 55 sfs 50 460 blob symbol 100 440 moveto "requirements" show 45 sfs 120 540 moveto "space for a million or so vertices" show 120 610 moveto "+ facets + indexes + programs = 500Mb" show pause 100 700 moveto "Computers of this size are now available" show pause 100 830 moveto "We can expect to see systems in use soon" show frame 55 sfs 150 50 moveto "Current Subdivision Systems" show 50 sfs 15 spw lime spc 50 220 plus symbol 100 200 moveto "Animation" show 200 270 moveto "- Pixar (Geri's Game)" show 50 390 plus symbol 100 370 moveto "Machining systems" show 200 440 moveto "- Delcam" show 200 510 moveto "- NCgraphics" show 50 630 plus symbol 100 610 moveto "Industrial Design" show 200 680 moveto "- ICEM" show 200 750 moveto "- Alias-Wavefront's Maya" show 45 sfs pause 50 870 moveto "all areas where lower precision is acceptable" show frame 60 sfs 310 50 moveto "Transfer Issues" show pause 60 sfs 60 170 difill symbol 120 150 moveto "no single agreed method" show pause 50 sfs 70 290 moveto "Catmull-Clark" show 70 390 moveto "Loop" show 70 490 moveto "Butterfly" show pause 70 590 moveto "sqrt3" show 70 690 moveto "Laves tilings" show 70 790 moveto "Quasicrystal" show pause 60 sfs 6 spw 440 290 sq symbol 440 390 tri symbol 440 490 tri symbol 440 590 tri symbol 440 690 sqcross symbol 440 790 tri symbol pause 50 sfs 500 290 moveto "cubic nurbs comp." show 500 390 moveto "boxsplines" show 500 490 moveto "interpolating" show pause silver spc 500 590 moveto 560 590 490 710 550 720 curveto 490 730 560 850 500 850 curveto 50 sfs 580 645 moveto "advantages for " show 580 715 moveto "uneven density" show frame 60 sfs 330 50 moveto "Transfer Issues" show 60 170 difill symbol 120 150 moveto "verbose transfer standards" show pause 45 sfs 70 340 moveto "STL" show 70 440 moveto "VRML" show pause 70 600 moveto "These deal with triangle meshes. We might " show 70 665 moveto "need quads. " show 70 740 moveto "They are very literal. There is excellent work" show 70 805 moveto "on compression, but not standardised yet." show frame 60 sfs 330 50 moveto "Transfer Issues" show 60 170 difill symbol 120 150 moveto "Outstanding technical problems" show pause 45 sfs (s "at extraordinary points" put) 50 300 moveto "Curvatures " show 290 300 moveto s get show (t 500 put) 50 t get moveto "Artifacts" show pause (s " " put) 600 300 moveto "Well understood " show 600 t get moveto "Not yet" show pause 10 [ (t 10 decrement) 100 wait ] 50 550 moveto "These will be solved, but which problems get" show 50 620 moveto "solved first may influence which method is " show 50 690 moveto "accepted." show frame 60 sfs (f 1 increment) 320 50 moveto "Conclusions" show 7 spw 45 sfs 60 195 oplus symbol 120 180 moveto "Subdivision surfaces will replace nurbs as" show 200 250 moveto "the standard" show pause 60 395 oplus symbol 120 380 moveto "We need informed choice of which variant" show 200 450 moveto "to standardise on" show pause 60 595 oplus symbol 120 580 moveto "But it will happen anyway" show pause 160 900 moveto "malcolm @ geometry . demon . co . uk" show frame 250 50 moveto "Why half a Gbyte ?" show pause 7 spw lime spc 50 500 moveto 120 205 380 205 450 500 curveto pause white spc 50 500 moveto 150 320 lineto 350 320 lineto 450 500 lineto pause 40 sfs "helvetica" sfn 4 spw 250 280 moveto 450 280 lineto 250 320 moveto 450 320 lineto 430 200 moveto "e" show 410 255 moveto 420 280 lineto 430 255 lineto 420 280 lineto 420 220 lineto 410 345 moveto 420 320 lineto 430 345 lineto 420 320 moveto 420 400 lineto 150 200 moveto 150 320 lineto 350 200 moveto 350 320 lineto 245 170 moveto "h" show 150 225 moveto 350 225 lineto 170 215 moveto 150 225 lineto 170 235 lineto 330 215 moveto 350 225 lineto 330 235 lineto 240 305 moveto 250 280 lineto 260 305 lineto 250 280 moveto 250 550 lineto 260 340 moveto "r" show 160 650 moveto " e ~ h*h/r " show pause 7 spw aqua spc 680 280 moveto 750 150 lineto 870 190 lineto 910 230 lineto 950 350 lineto 910 470 lineto 870 510 lineto 750 550 lineto 630 510 lineto 590 470 lineto 550 350 lineto 590 230 lineto 630 190 lineto 750 150 lineto 820 280 lineto 870 190 lineto 910 230 moveto 820 280 lineto 950 350 lineto 820 420 lineto 910 470 lineto 870 510 moveto 820 420 lineto 750 550 lineto 680 420 lineto 630 510 lineto 590 470 moveto 680 420 lineto 550 350 lineto 680 280 lineto 590 230 lineto 630 190 moveto 680 280 lineto 820 280 lineto 820 420 lineto 680 420 lineto 680 280 lineto 820 420 lineto 4 spw white spc 550 350 moveto 550 650 lineto 950 350 moveto 950 650 lineto 570 610 moveto 550 620 lineto 570 630 lineto 550 620 moveto 950 620 lineto 930 610 moveto 950 620 lineto 930 630 lineto 740 560 moveto "d" show 650 660 moveto "n ~ (d/h)" show 800 630 moveto "2" show pause 450 720 moveto "d ~ r" show 413 820 moveto "e/d ~ 1/n" show frame 250 50 moveto "Why half a Gbyte ?" show 40 sfs "helvetica" sfn (t 820 put) 413 t get moveto "e/d ~ 1/n" show 66 [ (t 10 decrement) 10 wait ] 100 230 moveto "e/d = 1.E-6 means n = 1,000,000" show pause 100 300 moveto "A vertex takes 24 bytes" show 160 370 moveto "and a facet (2 per vertex) takes 12 bytes" show 100 440 moveto "So substantive data takes 48n bytes" show pause 100 510 moveto "Basic indexes take another 52n bytes" show 160 570 moveto "giving 100Mb for a million vertex surface" show pause 100 660 moveto "Allow room for 2 or 3 of these" show 300 720 moveto "plus workspace" show 300 780 moveto "plus program" show 100 880 moveto "and we soon have 500 Mb" show frame