cairo/util/cairo-script/examples/sierpinski.cs
Chris Wilson 6f284587a4 [script] Add examples
Add some simple examples to demonstrate CairoScript, courtesy of M Joonas
Philaja.
2008-12-12 12:00:44 +00:00

37 lines
569 B
Smalltalk

%!CairoScript
/1sqrt3 0.577359269 def
/T { % cr size -- cr
exch % size cr
0 0 m 1 index 0 l 1 index dup 2 div exch //1sqrt3 mul l h
exch 2 div
dup 4 ge {
exch % size/2 cr
1 index T
save 1 index 0 translate 1 index T restore
save 1 index dup 2 div exch //1sqrt3 mul translate 1 index T restore
exch
} if
pop
} bind def
dict
/width 512 set
/height 300 set
surface context
1 1 1 set-source-rgb paint
.5 set-line-width
0 300 translate
1 -1 scale
512 T 0 0 0 set-source-rgb stroke
/target get (out.png) write-to-png pop
pop