[cairo-commit] talks/ddc_2005 cairo.xml,1.1,1.2
Carl Worth
commit at pdx.freedesktop.org
Tue Jul 19 05:33:05 PDT 2005
- Previous message: [cairo-commit] talks/ddc_2005 .cvsignore, NONE, 1.1 Makefile, NONE,
1.1 badspline.eps, NONE, 1.1 cairo-title.svg, NONE,
1.1 cairo.svg, NONE, 1.1 cairo.xml, NONE, 1.1 goodspline.eps,
NONE, 1.1 pumpkin-small.jpg, NONE, 1.1 rendering-model.svg,
NONE, 1.1
- Next message: [cairo-commit] libsvg ChangeLog,1.72,1.73
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Committed by: cworth
Update of /cvs/cairo/talks/ddc_2005
In directory gabe:/tmp/cvs-serv9200
Modified Files:
cairo.xml
Log Message:
Talk is about half-finished now...
Index: cairo.xml
===================================================================
RCS file: /cvs/cairo/talks/ddc_2005/cairo.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- cairo.xml 19 Jul 2005 11:06:40 -0000 1.1
+++ cairo.xml 19 Jul 2005 12:33:03 -0000 1.2
@@ -7,7 +7,7 @@
<slides theme="cairo"
presentation="an insider's guide to cairo"
- presentation-subtitle="an insider's guide"
+ presentation-subtitle="an insiderâs guide"
URL="http://cairographics.org"
bullet="bullet">
@@ -48,16 +48,205 @@
</g>
</slide>
- <slide title="why is stroking hard?">
- <li>postscript doesn't always get it right</li>
- <li>inkscape doesn't always get it right</li>
+ <slide title="is stroking that hard?">
+ <li>postscript doesnât always get it right</li>
+ <li>inkscape doesnât always get it right</li>
</slide>
- <slide title="why is stroking hard?">
- <li>postscript doesn't always get it right</li>
- <li>inkscape doesn't always get it right</li>
+ <slide title="is stroking that hard?">
+ <li>postscript doesnât always get it right</li>
+ <li>inkscape doesnât always get it right</li>
<li>...</li>
- <li>cairo doesn't always get it right</li>
+ <li>cairo doesnât always get it right</li>
+ </slide>
+
+ <slide title="cubic Bezier splines">
+ <ul>
+ <li>well understood primitive</li>
+ <li>many pleasing properties:</li>
+ <ul>
+ <li>easily decomposed</li>
+ <li>bounded by convex hull of control points</li>
+ </ul>
+ <li>but cannot represent circular arcs exactly</li>
+ </ul>
+ </slide>
+
+ <slide title="deCastlejau decomposition">
+ <g transform="translate(0,100)">
+ <path stroke="black" stroke-width="2" fill="none"
+ d="M0,300 L 200,0 L 500,0, L 800,200"/>
+ <circle cx="0" cy="300" r="5"/>
+ <circle cx="200" cy="0" r="5"/>
+ <circle cx="500" cy="0" r="5"/>
+ <circle cx="800" cy="200" r="5"/>
+ </g>
+ </slide>
+
+ <slide title="1) find 3 midpoints">
+ <g transform="translate(0,100)" fill="#808080">
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M0,300 L 200,0 L 500,0, L 800,200"/>
+ <circle cx="0" cy="300" r="5"/>
+ <circle cx="200" cy="0" r="5"/>
+ <circle cx="500" cy="0" r="5"/>
+ <circle cx="800" cy="200" r="5"/>
+ <path stroke="blue" stroke-width="2" fill="none"
+ d="M100,150 L 350,0 L 650,100"/>
+ <circle fill="blue" cx="100" cy="150" r="5"/>
+ <circle fill="blue" cx="350" cy="0" r="5"/>
+ <circle fill="blue" cx="650" cy="100" r="5"/>
+ </g>
+ </slide>
+
+ <slide title="2) find 2 new midpoints">
+ <g transform="translate(0,100)" fill="#808080">
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M0,300 L 200,0 L 500,0, L 800,200"/>
+ <circle cx="0" cy="300" r="5"/>
+ <circle cx="200" cy="0" r="5"/>
+ <circle cx="500" cy="0" r="5"/>
+ <circle cx="800" cy="200" r="5"/>
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M100,150 L 350,0 L 650,100"/>
+ <circle cx="100" cy="150" r="5"/>
+ <circle cx="350" cy="0" r="5"/>
+ <circle cx="650" cy="100" r="5"/>
+ <path stroke="blue" stroke-width="2" fill="none"
+ d="M225,75 L 500,50"/>
+ <circle fill="blue" cx="225" cy="75" r="5"/>
+ <circle fill="blue" cx="500" cy="50" r="5"/>
+ </g>
+ </slide>
+
+ <slide title="3) final midpoint is on spline">
+ <g transform="translate(0,100)" fill="#808080">
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M0,300 L 200,0 L 500,0, L 800,200"/>
+ <circle cx="0" cy="300" r="5"/>
+ <circle cx="200" cy="0" r="5"/>
+ <circle cx="500" cy="0" r="5"/>
+ <circle cx="800" cy="200" r="5"/>
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M100,150 L 350,0 L 650,100"/>
+ <circle cx="100" cy="150" r="5"/>
+ <circle cx="350" cy="0" r="5"/>
+ <circle cx="650" cy="100" r="5"/>
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M225,75 L 500,50"/>
+ <circle cx="225" cy="75" r="5"/>
+ <circle cx="500" cy="50" r="5"/>
+ <circle fill="blue" cx="362.5" cy="62.5" r="5"/>
+ </g>
+ </slide>
+
+ <slide title="4) two sub-splines fell out">
+ <g transform="translate(0,100)" fill="#808080">
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M0,300 L 200,0 L 500,0, L 800,200"/>
+ <circle cx="200" cy="0" r="5"/>
+ <circle cx="500" cy="0" r="5"/>
+ <path stroke="#808080" stroke-width="2" fill="none"
+ d="M100,150 L 350,0 L 650,100"/>
+ <circle cx="350" cy="0" r="5"/>
+
+ <path stroke="blue" stroke-width="2" fill="none"
+ d="M0,300 L100,150 L225,75 L 362.5,62.5"/>
+ <circle fill="blue" cx="0" cy="300" r="5"/>
+ <circle fill="blue" cx="100" cy="150" r="5"/>
+ <circle fill="blue" cx="225" cy="75" r="5"/>
+
+ <path stroke="red" stroke-width="2" fill="none"
+ d="M362.5,62.5 L 500,50 L 650,100 L 800,200"/>
+ <circle fill="violet" cx="362.5" cy="62.5" r="5"/>
+ <circle fill="red" cx="500" cy="50" r="5"/>
+ <circle fill="red" cx="650" cy="100" r="5"/>
+ <circle fill="red" cx="800" cy="200" r="5"/>
+ </g>
+ </slide>
+
+ <slide title="let's try stroking">
+ </slide>
+
+ <slide title="let's try stroking">
+ <g stroke="black" stroke-width="2" fill="none" transform="translate(300,0)" font-size="40">
+ <path d="M50,350 C 50,50 150,350 150,50"/>
+ </g>
+ </slide>
+
+ <slide title="let's try stroking">
+ <g stroke="black" stroke-width="2" fill="none" transform="translate(300,0)" font-size="40">
+ <path d="M50,350 C 50,50 150,350 150,50"/>
+ <circle cx="50" cy="350" r="20"/>
+ </g>
+ </slide>
+
+ <slide title="now simplify the pen">
+ <g stroke="black" stroke-width="2" fill="none" transform="translate(300,0)" font-size="40">
+ <path d="M50,350 C 50,50 150,350 150,50"/>
+ <path d="M70,350 L 60,367.320508075688772 L 40,367.320508075688772 L 30,350 L 40,332.679491924311227 L 60,332.679491924311227 z" />
+ <circle cx="70" cy="350" r="2" stroke="none" fill="red" />
+ <circle cx="60" cy="367.320508075688772" r="2" stroke="none" fill="orange" />
+ <circle cx="40" cy="367.320508075688772" r="2" stroke="none" fill="yellow" />
+ <circle cx="30" cy="350" r="2" stroke="none" fill="green" />
+ <circle cx="40" cy="332.679491924311227" r="2" stroke="orange" fill="blue" />
+ <circle cx="60" cy="332.679491924311227" r="2" stroke="none" fill="violet" />
+ </g>
+ </slide>
+
+ <slide title="ooh, pretty colors">
+ <g stroke="black" stroke-width="2" fill="none" transform="translate(300,0)" font-size="40">
+ <path stroke="#C0C0C0" d="M50,350 C 50,50 150,350 150,50"/>
+ <path d="M70,350 L 60,367.320508075688772 L 40,367.320508075688772 L 30,350 L 40,332.679491924311227 L 60,332.679491924311227 z" />
+ <circle cx="70" cy="350" r="2" stroke="none" fill="red" />
+ <circle cx="60" cy="367.320508075688772" r="2" stroke="none" fill="orange" />
+ <circle cx="40" cy="367.320508075688772" r="2" stroke="none" fill="yellow" />
+ <circle cx="30" cy="350" r="2" stroke="none" fill="green" />
+ <circle cx="40" cy="332.679491924311227" r="2" stroke="orange" fill="blue" />
+ <circle cx="60" cy="332.679491924311227" r="2" stroke="none" fill="violet" />
+ <path stroke="red" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(20,0)" />
+ <path stroke="orange" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(10, 17.320508075688772)" />
+ <path stroke="yellow" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-9.999999999999999, 17.320508075688772)"/>
+ <path stroke="green" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-19.999999999999999, 5.527147875260444e-75)"/>
+ <path stroke="blue" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-10, -17.320508075688772)"/>
+ <path stroke="violet" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(9.999999999999999, -17.320508075688772)"/>
+ </g>
+ </slide>
+
+ <slide title="...but ugly lumps">
+ <g stroke="black" stroke-width="2" fill="none" transform="translate(300,0)" font-size="40">
+ <path stroke="#C0C0C0" d="M50,350 C 50,50 150,350 150,50"/>
+ <path d="M70,350 L 60,367.320508075688772 L 40,367.320508075688772 L 30,350 L 40,332.679491924311227 L 60,332.679491924311227 z" />
+ <circle cx="70" cy="350" r="2" stroke="none" fill="red" />
+ <circle cx="60" cy="367.320508075688772" r="2" stroke="none" fill="orange" />
+ <circle cx="40" cy="367.320508075688772" r="2" stroke="none" fill="yellow" />
+ <circle cx="30" cy="350" r="2" stroke="none" fill="green" />
+ <circle cx="40" cy="332.679491924311227" r="2" stroke="orange" fill="blue" />
+ <circle cx="60" cy="332.679491924311227" r="2" stroke="none" fill="violet" />
+ <path stroke="red" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(20,0)" />
+ <path stroke="orange" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(10, 17.320508075688772)" />
+ <path stroke="yellow" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-9.999999999999999, 17.320508075688772)"/>
+ <path stroke="green" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-19.999999999999999, 5.527147875260444e-75)"/>
+ <path stroke="blue" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(-10, -17.320508075688772)"/>
+ <path stroke="violet" d="M50,350 C 50,50 150,350 150,50"
+ transform="translate(9.999999999999999, -17.320508075688772)"/>
+
+ <circle stroke="black" stroke-width="2" fill="none"
+ cx="53" cy="210" r="16" />
+ <circle stroke="black" stroke-width="2" fill="none"
+ cx="148" cy="190" r="16" />
+ </g>
</slide>
<!-- Minkowksi sum, convolution of polygonal tracings -->
@@ -65,7 +254,7 @@
<slide title="tessellation">
</slide>
- <!-- robust implementation, Hobby's algorithm -->
+ <!-- robust implementation, Hobbyâs algorithm -->
<slide title="rasterization">
</slide>
- Previous message: [cairo-commit] talks/ddc_2005 .cvsignore, NONE, 1.1 Makefile, NONE,
1.1 badspline.eps, NONE, 1.1 cairo-title.svg, NONE,
1.1 cairo.svg, NONE, 1.1 cairo.xml, NONE, 1.1 goodspline.eps,
NONE, 1.1 pumpkin-small.jpg, NONE, 1.1 rendering-model.svg,
NONE, 1.1
- Next message: [cairo-commit] libsvg ChangeLog,1.72,1.73
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the cairo-commit
mailing list