際際滷

際際滷Share a Scribd company logo
舒仄舒亳从亳 亰舒
亞亠仆亠舒亳于仆仂 亳亰从于仂
 弌仂弍于亠仆亳 仗亳仄亳亳于亳 / 亳舒
 亳于亳 仆舒 亠亰亳亠
 仆亳仄亳舒仆亠 仆舒 CFDG
 舒仍舒仆亳舒仆 random  亟于仂
 亰从舒  SVG
仂亟亞仂于亠仆亳 仂 .亠仆从仂于 从舒仂 舒 仂 从舒 仆舒 个 亰舒 亰亳仄亠仆 亠仄亠 2010/2011. 舒亞仍舒于仆仂仂
亳亰仂弍舒亢亠仆亳亠 亠 仂 http://contextfree.lazymoon.org.
Random  亟于仂亳仆仂 亟于仂
 亰仗仂仍亰于舒 亠 亟于仂亳仆仂 亟于仂, 仆舒 从仂亠仂 于仂于亠亠 舒
仗舒于亳仍舒舒 亰舒 亳亰于仂亟
 亰从亳亠 仄亠亢亟 于仂于亠亠 舒 亰舒于舒仆亠 仆舒 亟舒亟亠仆
亞舒亟
 舒亶仆亳亠 仍亳舒 亟舒于舒 于亰仄仂亢仆亳亠 亞仍亳 仆舒 亰舒于舒仆亠
 舒于舒 舒于仆仂仄亠仆仂 舒亰仗亠亟亠仍亠仆 random
 仂亢亠 亟舒 亠 亳亰仗仂仍亰于舒 亳 亰舒 亟亞亳 于亳亟仂于亠 仗舒舒仄亠亳
Random  亟于仂亳仆仂 亟于仂
startshape Begin
油
background { h 200 sat 1 b 1 }
油
rule DrawArrow {
SQUARE { x 0.5 size 1 0.075 }
TRIANGLE { x 1 r 30 size 0.2 }
}
油
rule RandomRotate1 { RandomRotate2 { } }
rule RandomRotate1 { RandomRotate2 { r 180 } }
rule RandomRotate2 { RandomRotate3 { } }
rule RandomRotate2 { RandomRotate3 { r 90 } }
rule RandomRotate3 { RandomRotate4 { } }
rule RandomRotate3 { RandomRotate4 { r 45 } }
rule RandomRotate4 { RandomRotate5 { } }
rule RandomRotate4 { RandomRotate5 { r 15 } }
rule RandomRotate4 { RandomRotate5 { r 30 } }
rule RandomRotate5 { RandomRotate6 { } }
rule RandomRotate5 { RandomRotate6 { r 5 } }
rule RandomRotate5 { RandomRotate6 { r 10 } }
rule RandomRotate6 { RandomRotate7 { } }
rule RandomRotate6 { RandomRotate7 { r 1 } }
rule RandomRotate6 { RandomRotate7 { r 2 } }
rule RandomRotate6 { RandomRotate7 { r 3 } }
rule RandomRotate6 { RandomRotate7 { r 4 } }
rule RandomRotate7 { DrawArrow { } }
油
rule DrawRandomArrows { 30*{ b -0.05 z 1 } RandomRotate1 { }
}
油
rule Begin { DrawRandomArrows { h 240 sat 1 b 1 } }
仂亳亰于仂仍仆亳 仗亳仄亳亳于亳 - 仗亳舒
 仂亰于仂仍磦舒 仂仗亳于舒仆亠 仆舒 仆仂于亳 仗亳仄亳亳于亳 / 亠仄亳仆舒仍仆亳 亳仄于仂仍亳.
 仗亳于舒 亠 从舒仂 仗亳从 仂 仂仗亠舒亳亳 亰舒 仂仗亳舒仆亳亠 仆舒 于亠从仂仆舒 亞舒亳从舒.
 亳仆舒亞亳 亳仄舒 亠从仂 仗仂仍仂亢亠仆亳亠 仆舒 于亳舒仍亠仆 '仗仂从舒亰舒仍亠'
 舒仗仂仄仆 仆舒 亟于亳亢亠仆亳亠仂 仆舒 从仂亠仆从舒舒 于 .
 亳 亟于亳亢亠仆亳亠 仆舒 仗仂从舒亰舒仍亠舒 仄仂亢亠 亟舒 亠 亳亰于舒 仍亳仆亳 亳仍亳 从亳于舒 亳仍亳 仗仂仂
亟舒 亠 仗亳亟于亳亢亳 亟仂 仆仂于舒 仗仂亰亳亳
 磻舒 从仂仄舒仆亟舒 仂仗亳于舒 从亟亠 亟舒 亠 亳于舒 亳 从舒从 亟舒 亠 亰舒仗仍仆亳
仆舒亳于舒仆仂仂.
 仂仄舒仆亟亳亠, 从仂亳仂 舒 仆舒 舒亰仗仂仍仂亢亠仆亳亠 舒 舒从亳于舒, 亠 亟舒 仗仂亰于仂仍磦舒 亳亰仂亟 从仄
SVG 亳 亠 仗亳亟亢舒 从仄 OpenVG 舒仆亟舒舒 亰舒 亞舒亳仆亳 从仂亳亠仍亳
舒弍仂亠亳  于亠从仂仆舒 亞舒亳从舒.
 仂仍亠仆亳亠 仗亳舒 舒 仂仆仂于仂 从仂仆亠从仆仂 仆亠亰舒于亳亳仄亳, .亠. 舒 舒亰仗亳舒仆亳
仗礆仂 仂弍于亠仆舒 从仂仂亟亳仆舒仆舒 亳亠仄舒  舒亰仄亠仆仂 1.
 亠亟仆亢 亰亟舒亟亠仆 亟舒亟亠仆 仗 仄仂亢亠 亟舒 弍亟亠 亳亰仗仂仍亰于舒仆 仍亠亟 仂于舒 从舒仂 于磻舒
亟亞舒 仗亳仄亳亳于舒 亳仍亳 仗舒于亳仍仂   仗舒于亳仍舒 亰舒 仗仂仄礌舒 仆舒 亠从舒舒
舒仆仂仄舒亳仂仆仆舒 仄舒亳舒 亳 亟于亳亢亠仆亳亠 于 仗仂舒仆于仂仂 仆舒 于亠仂于亠亠.
 舒 亟仂弍于仂 亠 仗亳亠仄亠仄, 亠 亟于亳亢亳仄 从舒亠舒 仗仂
从仂仂亟亳仆舒仆舒 亳亠仄舒.
舒 亟仂弍于仂 亠 仆舒亠亠仄 亠从舒舒 仗仂亰亳亳 于
从仂仂亟亳仆舒仆舒舒 亳亠仄舒  仗仂亰亳亳 仆舒 从舒亠舒.
 于亳亢亠仆亳亠仂 亠 舒仄仂 于
舒于仆亳仆舒舒 仂仗亠亟亠仍亠仆舒
仂 Oxy. 丐从 z 仆亠 舒于舒.
 仄舒 舒仄仂 亠亟仆舒
从舒亠舒, 从仂仂
仗仂亠亞仍 仂
仆舒舒仍仂仂 仆舒
从仂仂亟亳仆舒仆舒舒 亳亠仄舒.
仂亳亰于仂仍仆亳 仗亳仄亳亳于亳 - 仗亳舒
舒弍仂舒  仗舒于亳
 MOVETO {x X y Y }  仗亳亟于亳亢于舒 从舒亠舒舒 亟仂 亟舒亟亠仆仂
仄仂  从仂仂亟亳仆舒亳 (X, Y) 于 亠从舒舒 从仂仂亟亳仆舒仆舒
亳亠仄舒.
 LINETO {x X y Y }  亳于舒 仍亳仆亳 仂 亠从舒舒 仗仂亰亳亳
仆舒 从舒亠舒舒 亟仂 亟舒亟亠仆仂 仄仂  从仂仂亟亳仆舒亳 (X, Y) 亳
仗亠仄亠于舒 从舒亠舒舒 舒仄.
 CLOSEPOLY { }  亳于舒 仍亳仆亳 仂 亠从舒舒 仗仂亰亳亳 仆舒
从舒亠舒舒 亟仂 仆舒舒仍仂仂 仆舒 仗仂仍亠亟仆亳 仂仗亳舒仆 仗.
 STROKE { }  亳亰亳于舒 从仂仆 仗仂 仍亳仆亳亳亳亠 仂仗亠亟亠仍亠仆亳
仂 亞仂仆亳亠 从仂仄舒仆亟亳.
 FILL { }  亰舒仗仍于舒 仂仄舒舒 仂仗亠亟亠仍亠仆舒 仂 亞仂仆亳亠
从仂仄舒仆亟亳  仂仗亠亟亠仍亠仆 亳.
仂 仗亳仄亠
path box {
MOVETO{x 0.5 y 0.5}
LINETO{x -0.5 y 0.5}
LINETO{x -0.5 y -0.5}
LINETO{x 0.5 y -0.5}
CLOSEPOLY{}
STROKE{}
}
 乂亳  亟亠弍亠仍亳仆舒 10%
舒仍从仂 仗仂-仍仂亢亠仆 仗亳仄亠
startshape octagon
path octagon {
MOVETO { x cos(0) y sin(0) }
LINETO{x cos(45) y sin(45)}
LINETO{x cos(90) y sin(90) }
LINETO{x cos(135) y sin(135)}
LINETO{x cos(180) y sin(180)}
LINETO{x cos(225) y sin(225)}
LINETO{x cos(270) y sin(270)}
LINETO{x cos(315) y sin(315)}
CLOSEPOLY{}
STROKE{}
}
亰仗仂仍亰于舒仆亠 仆舒 亳从仍亳
path octagon {
MOVETO { x 1 y 0 }
8 * { r 45 }
LINETO{ x cos(45)
y sin(45)}
CLOSEPOLY{}
STROKE{}
}
 仂 亳 仆舒亳仆 从舒从仂 仗亳 仗舒于亳仍舒舒.
 亠舒仍仆仂 亠 仗亠亟亳亰于亳从于舒 亳亰仗仂仍亰于舒仆亠 仆舒
仆仂于舒 舒仆仂仄舒亳仂仆仆舒 仄舒亳舒 亰舒
亠从仂仂 仗仂仍仂亢亠仆亳亠 仆舒 从舒亠舒舒.
仂亢亠 亟舒 亳仄舒 仗仂于亠亠 仂 亠亟仆舒
仂仄舒 于 亟舒亟亠仆 仗
startshape octagon2
path octagon2 {
MOVETO { x 1 y 0 }
8 * { r 45 }
LINETO{ x cos(45)
y sin(45)}
CLOSEPOLY{}
STROKE{}
MOVETO { x (cos(0) * 0.5 )
y ( sin(0) * 0.5 ) }
6 * { r 60 }
LINETO{ x (cos(60) * 0.5 )
y (sin(60) * 0.5 ) }
CLOSEPOLY{}
STROKE{}
}
仂-仍仂亢仆亳 亳从仍亳
startshape octagon2
path octagon2 {
MOVETO { x 1 y 0 }
8 * { r 45 }
LINETO{ x cos(45)
y sin(45)}
CLOSEPOLY{}
STROKE{}
2 * { x 2 } {
MOVETO { x (cos(0) * 0.5 ) y ( sin(0) * 0.5 ) }
6 * { r 60 }
LINETO{ x (cos(60) * 0.5 )
y (sin(60) * 0.5 ) }
CLOSEPOLY{}
}
STROKE {} // 从仂仄舒仆亟舒舒 亰舒 亰舒仗仍于舒仆亠 亳仍亳 亳仂于舒仆亠 亠 亰舒亟仍亢亳亠仍仆仂 亳亰于仆 亳从仍舒
}
舒仗仍于舒仆亠
 弌仍亠亟 亰舒于舒礌亠 仆舒 亟舒亟亠仆 仗 仄仂亢亠 亟舒 亠
仗亳仍仂亢亳 亳仍亳 FILL 亳仍亳 STROKE.
 仂亢亠 亟舒 亳仄舒 仗仂于亠亠 仂 亠亟仆舒 仂仄舒, 从仂仂 亟舒
弍亟亠 亰舒仗仍仆亠仆舒
 FILL 亳 STROKE 仄仂亞舒 亟舒 亠 从仂仄弍亳仆亳舒 
亟亳亠从亳于亳 亰舒 亳亰亳于舒仆亠 仆舒 于.
 弌仍亠亟 于磻舒 FILL 亟亳亠从亳于舒 仄仂亢亠 亟舒 亳仄舒 仆仂于舒
仗仂亠亟亳舒 仂 亟于亳亢亠仆亳 仆舒 从舒亠舒舒, 从仂亠仂 亟舒
亠 仍亠亟于舒仆仂 仂 亰舒仗仍于舒仆亠.
舒仗仍于舒仆亠
startshape octagon2
path octagon2 {
MOVETO { x 1 y 0 }
8 * { r 45 }
LINETO{ x cos(45)
y sin(45)}
CLOSEPOLY{}
STROKE{}
2 * { x 2 } {
MOVETO { x (cos(0) * 0.5 ) y ( sin(0) * 0.5 ) }
6 * { r 60 }
LINETO{ x (cos(60) * 0.5 )
y (sin(60) * 0.5 ) }
CLOSEPOLY{}
}
FILL { h 20 sat 1 b 0.8 }
}
亳亟仂于亠 亰舒仗仍于舒仆亠
 STROKE {shape adjustments width stroke_width param parameters} - 亰亳于舒 从仂仆 仗仂
仗仂仍亠亟仆亳 仂仗亳舒仆 仗  亟亠弍亠仍亳仆舒 仂仗亠亟亠仍亠仆舒 仂 stroke_width (仗仂 仗仂亟舒亰弍亳舒仆亠 0.1).
仂亞舒 亟舒 亠 仗仂亟舒亟舒 亳 仗舒舒仄亠亳 亰舒 仗仂仄礌舒 仆舒 于亠舒 亳 (!) 仂仄舒舒
 FILL {shape adjustments param parameters}  亰舒仗仍于舒仆亠 仆舒 仗仂仍亠亟仆亳 仗 于亰亳仄舒亶从亳
仗亠亟于亳亟 仗舒舒仄亠亳亠 亰舒 仗仂仄礌舒 仆舒 仂仄舒舒. 从仂 仂仄舒舒 亠 舒仄仂仗亠亳舒舒 亠,
仂亞舒于舒 亳仄舒 亰仆舒亠仆亳亠 亳 仗舒舒仄亠舒 亰舒 亰舒仗仍于舒仆亠, 从仂亶仂 仂仗亠亟亠仍 从舒从 亟舒 弍亟亠
亰舒仗仍仆亠仆舒 . 仂 仗仂亟舒亰弍亳舒仆亠 亠 仗仂仍亰于舒 non-zero, 仆仂 仄仂亢亠 亟舒 弍亟亠 亳亰仗仂仍亰于舒仆仂 亳
even-odd 亰舒仗仍于舒仆亠 (仗仂 W3 仗亠亳亳从舒亳舒) :
 舒弍. : 亳 从 亳仄舒 亰仆舒亠仆亳亠 亟舒仍亳 仗舒舒仄亠亳亠 舒 仗仂亟亠亟亠仆亳 亳仍亳 仆亠 .
 舒弍. : 舒从仂 仆亠 亠 仗仂亟舒亟亠仆舒 磦仆舒 从仂仄舒仆亟舒 FILL  亠 亟仂弍舒于
nonz亠r仂 evenodd
舒舒仄亠亳 亰舒 亰舒仗仍于舒仆亠
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
5* {r 72} {
FILL{y 1.88 b 0.5 p evenodd}
STROKE{y 1.88}
}
}
舒舒仄亠亳 亰舒 亰舒仗仍于舒仆亠
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
5* {r 72} {
FILL{y 1.88 b 0.5 p evenodd}
STROKE{y 1.88}
}
}
* 亳亰仗仂仍亰于舒 亠 evenodd 亰舒仗仍于舒仆亠
** 亳 仗亳 STROKE 亳 FILL 仍舒 亳仄舒
亳亰仄亠于舒仆亠 仗仂 y
舒仗仍于舒仆亠仂 亠 仗仂于亠亠 仂 仗仂仂
亟亳亠从亳于舒 亰舒 于
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
}
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
5* {r 72} {
FILL{y 1.88 b 0.5 p evenodd}
STROKE{y 1.88}
}
}
舒仗仍于舒仆亠仂 亠 仗仂于亠亠 仂 仗仂仂
亟亳亠从亳于舒 亰舒 于*
startshape stars
background {sat 1 h 20}
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
FILL{b 0.5 hue 50 sat 1
s 1 p evenodd
r 35 s 2.9 }
STROKE { }
}
* ...从舒从仂 亳 仂亠舒于舒仆亠仂 仆舒 从仂仆
仂于亳 仗亳仄亳亳于亳 !
startshape S2
background {sat .6 h 40}
rule S2 {
50 * { r (360/50) } SRANDOM { x 20 }
S2 { a -0.1 s 0.9 r 45 h 20 }
}
rule SRANDOM { stars { x rand_static(-3, 3)
a rand_static (-0.5, 0)
y rand_static (-5, 5)
s rand_static (0,1 )
hue rand_static (20, 200) }}
/*  仄仆仂亞仂 仗亳 ... */
rule SRANDOM { stars { x rand_static(-3, 3)
a rand_static (-0.5, 0)
y rand_static (-5, 5)
s rand_static (0,1 )
hue rand_static (20, 200) }}
path stars {
MOVETO{x cos(90-144) y sin(90-144)}
4* {r 144} LINETO {y 1}
CLOSEPOLY{}
FILL{b 0.5 hue 50 sat 1 p evenodd r 35 s 3}
STROKE { }
}
亳于亳
 ARCTO {x x y y rx x_radius ry y_radius r ellipse_angle param parameters}  亟于亳亢亳
从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 亠亞仄亠仆 仂 亠仍亳仗舒 亟仂 仂从舒舒 (x, y), 从舒仂 亠 仗亳亠仄舒,
亠 亠仍亳仗舒舒 亠  舒亟亳 (rx, ry) 亳 亠 亰舒于礌舒 仆舒 舒亟亳 (于 亞舒亟亳)
 ARCTO {x x y y r radius param parameters}  亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠
亠亞仄亠仆 仂 仂从亢仆仂  舒亟亳 r 亟仂 仂从舒舒 (x, y)
 CURVETO {x x y y x1 control_x_1 y1 control_y_1}  亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒
仂仗亳亠 从于舒亟舒亳仆舒 从亳于舒 仆舒 亠亰亳亠 亟仂 仂从舒舒  从仂仂亟亳仆舒亳 (x, y) 亳 从仂仆仂仍仆舒
仂从舒 于 (x1, y1)
 CURVETO {x x y y x1 control_x_1 y1 control_y_1 x2 control_x_2 y2 control_y_2} -
亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 从亳于舒 仆舒 亠亰亳亠 亟仂 仂从舒舒 (x, y)  仗于舒
从仂仆仂仍仆舒 仂从舒 于 (x1, y1) 亳 于仂舒 从仂仆仂仍仆舒 仂从舒 亟仂 (x2, y2)
 CURVETO {x x y y}  亟于亳亢亳 从舒亠舒舒 舒从舒 亠 亟舒 仂仗亳亠 从于舒亟舒亳仆舒 从亳于舒 仆舒
亠亰亳亠 亟仂 仂从舒舒 (x, y)  从仂仆仂仍仆舒 仂从舒, 从仂仂 亠 '仂亞仍亠亟舒仍仆仂' 舒亰仗仂仍仂亢亠仆舒
仗礆仂 从仂仆仂仍仆舒舒 仂从舒 仆舒 仗亠亟亳仆舒舒 从亳于舒
亳于亳 仆舒 亠亰亳亠
弌 亠亟仆舒 从仂仆仂仍仆舒 仂从舒
丐舒仆亞亠仆亳亠 于 P0 亳 P2
仗亠仄亳仆舒于舒 仗亠亰 P1
弌 亟于亠 从仂仆仂仍仆亳 仂从亳
P0
P1
P2
丐舒仆亞亠仆舒舒 于 P0 e P0P1,
舒仆亞亠仆舒舒 于 P3 亠 P2P3
亳于舒舒 仄仂亢亠 亟舒 亠
舒仄仂仗亠亠亠.
P0
P1 P2
P3
P4
亳于亳 仆舒 亠亰亳亠
 弌 亠亟仆舒 从仂仆仂仍仆舒 仂从舒
 仂仂亟亳仆舒仆舒舒 亳亠仄舒 亳
亟仂仗亳舒亠仍仆亳亠 舒
亟仂弍舒于亠仆亳 亰舒 亟亠舒亶仍亳
path roll{
MOVETO { x 5 y 0 }
CURVETO { x -5 y 0 x1 0 y1 -10 }
STROKE {b 1 width 0.05 }
}
亳于亳 仆舒 亠亰亳亠  从仂仆仂仍仆亳 仂从亳
path roll{
MOVETO { x 5 y 0 }
CURVETO { x -5 y 0 x1 2.5 y1 5
x2 -2.5 y2 5 }
STROKE {b 1 width 0.05}
}
// 仂 (5,0) 亟仂 (-5, 0)  从仂仆仂仍仆亳 仂从亳 于
(2.5, 5) 亳 (-2.5, 5) 亳 从仂仆  亟亠弍亠仍亳仆舒 0.05
仂仆仂仍仆亳亠 仂从亳
舒 于 (2.5, 5) 亳 (-2.5, 5)
仂仆仂仍仆亳亠 仂从亳
舒 于 (2.5, -5) 亳 (-2.5, 5)
path roll{
MOVETO { x 5 y 0 }
CURVETO { x -5 y 0 x1 2.5 y1 -5
x2 -2.5 y2 5 }
STROKE {b 1 width 0.05}
}
The DAO
startshape dao
background {b -.3}
path roll{
MOVETO{y 1}
ARCTO{y -3}
FILL{b 1}
MOVETO{y -3}
ARCTO{y 1}
FILL{}
MOVETO{y 1}
ARCTO{y -1}
FILL{}
MOVETO{y -1}
ARCTO{y -3 p cw}
FILL{ b 1}
}
rule dao{
roll {}
CIRCLE{b 1 s .7} CIRCLE{y -2 s .7}
}
丐从 ARCTO 亠 亳亰仗仂仍亰于舒 亟亠 舒从仂 亰舒
亳于舒仆亠 仆舒 仗仂仍仂从亢仆仂亳
亰弍仂 仆舒 从亳于舒
 舒舒仄亠 p cw 仆舒 ARCTO 亟亳亠从亳于舒 从舒亰于舒 仆舒 舒从舒舒, 从仂仂 亠 仗仂
仗仂仂从舒 仆舒 舒仂于仆亳从仂于舒舒 亠仍从舒.
 弌 仗舒舒仄亠 p large 仄仂亢亠 亟舒 亠 从舒亢亠 亳亰仗仂仍亰于舒仆亠 仆舒 仗仂-亞仂仍礆舒舒 舒从舒 仂
仂从仆仂舒/亠仍亳仗舒舒.
ARCTO 于 亟亠亶于亳亠
http://www.contextfreeart.org/gallery/view.php?id=1613
HEX
By Fedor
 SVG 从仄 CFDG 亳 仂弍舒仆仂
 亳仄亳亳于亳亠 仆舒 SVG 舒 于仄亠亳仄亳  亠亰亳 仆舒 CFDG 亳
仄仂亢亠 亟舒 仍亠仆仂 亟舒 亠 仆舒仗舒于亳 仗亠仂亟 仂 SVG 舒亞仂于亠 从仄
CFDG 仗亳舒.
 于 仂仄舒 仆舒 ContextFree 亠 亟亠仄仂仆亳舒仆 从仂仆于亠仂
亰舒 TTF 亳仂于亠 (于亢. 亳弍仍亳仂亞舒亳舒).
 舒 仗舒从亳从舒 仍亠仆仂 仄仂亢亠 亟舒 弍亟亠 亠舒仍亳亰亳舒仆 从仂仆于亠仂
亰舒 仗仂-仗仂亳 SVG 舒亶仍仂于亠.
 Context Free 仗仂亰于仂仍磦舒 亰舒仗舒亰于舒仆亠 仆舒 亞亠仆亠亳舒仆舒舒
从舒 从舒仂 于亠从仂亠仆 SVG 舒亶仍.
 SVG 亠 舒仆亟舒亳亰亳舒仆 于亠从仂亠仆 仂仄舒, 从仂亶仂 仄仂亢亠 亟舒
弍亟亠 仂于舒礌 仂 仗仂于亠亠仂 仗仂仗仍仆亳 仗亳仍仂亢亠仆亳 亰舒
舒弍仂舒  于亠从仂仆舒 亞舒亳从舒 (从舒仂 Illustrator, Corel Draw,
InkScape 亳 亟.)
仆亳仄亳舒仆亠 仆舒 CFDG, 从仂亠仂 亳仄舒
舒仄仂 亟亠亠仄亳仆亳亳仆亳 仗舒于亳仍舒
rule DAISYALL {
DAISYSHAPE { }
6*{r __LARO__ h __LARO__ }
DAISYXPAND {x 1}
6*{r __LARO__ } DAISYSHAPE {x 1}
}
rule DAISYXPAND {
DAISYSHAPE { }
6*{r __LARO__ }DAISYSHAPE {x 1 z-1}
DAISYXPAND{s .5 r __LARO__ }
}
path DAISYSHAPE {
MOVETO{x -1 y 0}
ARCTO {x 1 y 0}
ARCTO {x -1 y 0}
STROKE{width 0.03 b -1}
FILL {b 1 a -.8 sat 1}
}
仆亳仄亳舒仆亠 仆舒 仗舒舒仄亠亳
1) 弌亰亟舒于舒仄亠 仗仂仄仂亠仆 从亳仗, 从仂亶仂 亟舒 亞亠仆亠亳舒
仗仂仍亠亟仂于舒亠仍仆仂 仂 CFDG 舒亶仍仂于亠.
2) 亰仗仂仍亰于舒仄亠 从仂仆亰仂仍仆仂仂 仗亳仍仂亢亠仆亳亠 cfdg 亰舒
亞亠仆亠亳舒仆亠 仆舒 于亠从亳 仂 :
cfdg cur.cfdg output$SEQ.png -v ARE
3) 亰仗仂仍亰于舒仄亠 mencoder 亰舒 亞亠仆亠亳舒仆亠 仆舒
舒仆亳仄舒亳:
mencoder mf://*.png -mf w=500:h=500:fps=25:type=png -ovc copy -oac copy -o output.avi
Grammers for Generative Art - Lectures @ Sofia University #4
亰从亳
 http://www.khronos.org/openvg/ - OpenVG 舒仆亟舒
 http://www.contextfreeart.org/mediawiki/index.php/Paths  亠 亰舒
仗亳舒
 http://www.contextfreeart.org/phpbb/viewtopic.php?t=418 
亠舒仆亳亰仄 亰舒 从仂仆于亠亳舒仆亠 仆舒 TTF 亳仂于亠 从仄 SVG 亳 仗仂仍亠
从仄 CFDG 仗舒于亳仍舒
 http://en.wikipedia.org/wiki/B%C3%A9zier_curve  亳于亳 仆舒 亠亰亳亠
 http://www.azarask.in/blog/post/contextfreejs-algorithm-ink-
making-art-with-javascript/ - Context Free with JavaScript
 http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-enc-
images.html  仂亟亳舒仆亠 仆舒 于亳亟亠仂 仂 仗仂仍亠亟仂于舒亠仍仆仂 仂
亳亰仂弍舒亢亠仆亳
 http://roberthodgin.com/ - 亳亰仆亠仆舒亟舒

More Related Content

Viewers also liked (20)

Presentacia 26112013 l.kostova
Presentacia  26112013 l.kostovaPresentacia  26112013 l.kostova
Presentacia 26112013 l.kostova
Emil Hristov
亠从亳 仗于舒 Security
亠从亳 仗于舒 Security亠从亳 仗于舒 Security
亠从亳 仗于舒 Security
LogMan Graduate School on Knowledge Economy
亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
 亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂... 亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
Petar Kardjilov
亳仆亠仆亠 Yordan
亳仆亠仆亠 Yordan亳仆亠仆亠 Yordan
亳仆亠仆亠 Yordan
vyapova
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
Vladimir Vassilev
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
Digital Agency Interactive Share
Chap3
Chap3Chap3
Chap3
Shu Shin
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
Neven Boyanov
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
Leon Anavi
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
NIT- New Internet Technologies PLC
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
eTel (Bulgaria)
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
Ralica Hristova
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
DiNikolo
Network Security and Network Attacks
Network Security and Network AttacksNetwork Security and Network Attacks
Network Security and Network Attacks
Svetlin Nakov
63.从亠 仗舒仄亠
63.从亠 仗舒仄亠63.从亠 仗舒仄亠
63.从亠 仗舒仄亠
dnaidenowa
Presentation Ebrd February 1211
Presentation Ebrd February 1211Presentation Ebrd February 1211
Presentation Ebrd February 1211
ilko gruev
Acc week 10
Acc week 10Acc week 10
Acc week 10
Shu Shin
56. dram 亳 sram
56. dram  亳  sram56. dram  亳  sram
56. dram 亳 sram
dnaidenowa
仗舒亢仆亠仆亳亠 从仂仆仂仍亳 从舒仍从仍舒仂
仗舒亢仆亠仆亳亠 从仂仆仂仍亳   从舒仍从仍舒仂仗舒亢仆亠仆亳亠 从仂仆仂仍亳   从舒仍从仍舒仂
仗舒亢仆亠仆亳亠 从仂仆仂仍亳 从舒仍从仍舒仂
dnaidenowa
Presentacia 26112013 l.kostova
Presentacia  26112013 l.kostovaPresentacia  26112013 l.kostova
Presentacia 26112013 l.kostova
Emil Hristov
亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
 亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂... 亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
亰仗亳亠仄舒仆亠 仆舒 亰舒仗仍舒舒舒 亳 亞仂仂于仆仂 亰舒 亠舒从亳 于 亳舒亳 仆舒 仗仂于亳亠仆舒 舒亟亳仂...
Petar Kardjilov
亳仆亠仆亠 Yordan
亳仆亠仆亠 Yordan亳仆亠仆亠 Yordan
亳仆亠仆亠 Yordan
vyapova
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
舒从 亳 亟舒仍亳 亠亟仆仂舒亳亳亠从亳 舒从亠仗亠亶 亠 仗仂仄亠仆亳 亢亳于仂舒 亳
Vladimir Vassilev
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
\"Guerrilla Marketing\" 于 仆亠仆亠 - 舒仆亠 舒亶亟亠仆仂于舒
Digital Agency Interactive Share
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
弌舒亳舒仆亠 仆舒 仂亠亠仆 弍亳亰仆亠 - 仗 仂 仗仂亞舒仄舒舒 亟仂 仗仂亟从舒
Neven Boyanov
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
亟舒仗舒亳 仆舒 Linux 亰舒 ARM 仂亶于舒
Leon Anavi
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
亟亳仂-于亳亰舒仍仆舒 弍舒亰舒 - 亳亠仄舒 亰舒 仗舒于仍亠仆亳亠
NIT- New Internet Technologies PLC
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
亠亰亠仆舒亳 仄亳仆亳-亠仄亳仆舒 "弌仂亳舒仍仆亳 仄亠亢亳"
eTel (Bulgaria)
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
K仂于舒 舒弍仂舒 弌 舒仍亳舒 亳仂于舒
Ralica Hristova
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
亠亰仂仗舒仆仂 亳 亰舒亳舒 仆舒 Web 仗亳仍仂亢亠仆亳
DiNikolo
Network Security and Network Attacks
Network Security and Network AttacksNetwork Security and Network Attacks
Network Security and Network Attacks
Svetlin Nakov
63.从亠 仗舒仄亠
63.从亠 仗舒仄亠63.从亠 仗舒仄亠
63.从亠 仗舒仄亠
dnaidenowa
Presentation Ebrd February 1211
Presentation Ebrd February 1211Presentation Ebrd February 1211
Presentation Ebrd February 1211
ilko gruev
Acc week 10
Acc week 10Acc week 10
Acc week 10
Shu Shin
56. dram 亳 sram
56. dram  亳  sram56. dram  亳  sram
56. dram 亳 sram
dnaidenowa
仗舒亢仆亠仆亳亠 从仂仆仂仍亳 从舒仍从仍舒仂
仗舒亢仆亠仆亳亠 从仂仆仂仍亳   从舒仍从仍舒仂仗舒亢仆亠仆亳亠 从仂仆仂仍亳   从舒仍从仍舒仂
仗舒亢仆亠仆亳亠 从仂仆仂仍亳 从舒仍从仍舒仂
dnaidenowa

Grammers for Generative Art - Lectures @ Sofia University #4

  • 1. 舒仄舒亳从亳 亰舒 亞亠仆亠舒亳于仆仂 亳亰从于仂 弌仂弍于亠仆亳 仗亳仄亳亳于亳 / 亳舒 亳于亳 仆舒 亠亰亳亠 仆亳仄亳舒仆亠 仆舒 CFDG 舒仍舒仆亳舒仆 random 亟于仂 亰从舒 SVG 仂亟亞仂于亠仆亳 仂 .亠仆从仂于 从舒仂 舒 仂 从舒 仆舒 个 亰舒 亰亳仄亠仆 亠仄亠 2010/2011. 舒亞仍舒于仆仂仂 亳亰仂弍舒亢亠仆亳亠 亠 仂 http://contextfree.lazymoon.org.
  • 2. Random 亟于仂亳仆仂 亟于仂 亰仗仂仍亰于舒 亠 亟于仂亳仆仂 亟于仂, 仆舒 从仂亠仂 于仂于亠亠 舒 仗舒于亳仍舒舒 亰舒 亳亰于仂亟 亰从亳亠 仄亠亢亟 于仂于亠亠 舒 亰舒于舒仆亠 仆舒 亟舒亟亠仆 亞舒亟 舒亶仆亳亠 仍亳舒 亟舒于舒 于亰仄仂亢仆亳亠 亞仍亳 仆舒 亰舒于舒仆亠 舒于舒 舒于仆仂仄亠仆仂 舒亰仗亠亟亠仍亠仆 random 仂亢亠 亟舒 亠 亳亰仗仂仍亰于舒 亳 亰舒 亟亞亳 于亳亟仂于亠 仗舒舒仄亠亳
  • 3. Random 亟于仂亳仆仂 亟于仂 startshape Begin 油 background { h 200 sat 1 b 1 } 油 rule DrawArrow { SQUARE { x 0.5 size 1 0.075 } TRIANGLE { x 1 r 30 size 0.2 } } 油 rule RandomRotate1 { RandomRotate2 { } } rule RandomRotate1 { RandomRotate2 { r 180 } } rule RandomRotate2 { RandomRotate3 { } } rule RandomRotate2 { RandomRotate3 { r 90 } } rule RandomRotate3 { RandomRotate4 { } } rule RandomRotate3 { RandomRotate4 { r 45 } } rule RandomRotate4 { RandomRotate5 { } } rule RandomRotate4 { RandomRotate5 { r 15 } } rule RandomRotate4 { RandomRotate5 { r 30 } } rule RandomRotate5 { RandomRotate6 { } } rule RandomRotate5 { RandomRotate6 { r 5 } } rule RandomRotate5 { RandomRotate6 { r 10 } } rule RandomRotate6 { RandomRotate7 { } } rule RandomRotate6 { RandomRotate7 { r 1 } } rule RandomRotate6 { RandomRotate7 { r 2 } } rule RandomRotate6 { RandomRotate7 { r 3 } } rule RandomRotate6 { RandomRotate7 { r 4 } } rule RandomRotate7 { DrawArrow { } } 油 rule DrawRandomArrows { 30*{ b -0.05 z 1 } RandomRotate1 { } } 油 rule Begin { DrawRandomArrows { h 240 sat 1 b 1 } }
  • 4. 仂亳亰于仂仍仆亳 仗亳仄亳亳于亳 - 仗亳舒 仂亰于仂仍磦舒 仂仗亳于舒仆亠 仆舒 仆仂于亳 仗亳仄亳亳于亳 / 亠仄亳仆舒仍仆亳 亳仄于仂仍亳. 仗亳于舒 亠 从舒仂 仗亳从 仂 仂仗亠舒亳亳 亰舒 仂仗亳舒仆亳亠 仆舒 于亠从仂仆舒 亞舒亳从舒. 亳仆舒亞亳 亳仄舒 亠从仂 仗仂仍仂亢亠仆亳亠 仆舒 于亳舒仍亠仆 '仗仂从舒亰舒仍亠' 舒仗仂仄仆 仆舒 亟于亳亢亠仆亳亠仂 仆舒 从仂亠仆从舒舒 于 . 亳 亟于亳亢亠仆亳亠 仆舒 仗仂从舒亰舒仍亠舒 仄仂亢亠 亟舒 亠 亳亰于舒 仍亳仆亳 亳仍亳 从亳于舒 亳仍亳 仗仂仂 亟舒 亠 仗亳亟于亳亢亳 亟仂 仆仂于舒 仗仂亰亳亳 磻舒 从仂仄舒仆亟舒 仂仗亳于舒 从亟亠 亟舒 亠 亳于舒 亳 从舒从 亟舒 亠 亰舒仗仍仆亳 仆舒亳于舒仆仂仂. 仂仄舒仆亟亳亠, 从仂亳仂 舒 仆舒 舒亰仗仂仍仂亢亠仆亳亠 舒 舒从亳于舒, 亠 亟舒 仗仂亰于仂仍磦舒 亳亰仂亟 从仄 SVG 亳 亠 仗亳亟亢舒 从仄 OpenVG 舒仆亟舒舒 亰舒 亞舒亳仆亳 从仂亳亠仍亳 舒弍仂亠亳 于亠从仂仆舒 亞舒亳从舒. 仂仍亠仆亳亠 仗亳舒 舒 仂仆仂于仂 从仂仆亠从仆仂 仆亠亰舒于亳亳仄亳, .亠. 舒 舒亰仗亳舒仆亳 仗礆仂 仂弍于亠仆舒 从仂仂亟亳仆舒仆舒 亳亠仄舒 舒亰仄亠仆仂 1. 亠亟仆亢 亰亟舒亟亠仆 亟舒亟亠仆 仗 仄仂亢亠 亟舒 弍亟亠 亳亰仗仂仍亰于舒仆 仍亠亟 仂于舒 从舒仂 于磻舒 亟亞舒 仗亳仄亳亳于舒 亳仍亳 仗舒于亳仍仂 仗舒于亳仍舒 亰舒 仗仂仄礌舒 仆舒 亠从舒舒 舒仆仂仄舒亳仂仆仆舒 仄舒亳舒 亳 亟于亳亢亠仆亳亠 于 仗仂舒仆于仂仂 仆舒 于亠仂于亠亠.
  • 5. 舒 亟仂弍于仂 亠 仗亳亠仄亠仄, 亠 亟于亳亢亳仄 从舒亠舒 仗仂 从仂仂亟亳仆舒仆舒 亳亠仄舒. 舒 亟仂弍于仂 亠 仆舒亠亠仄 亠从舒舒 仗仂亰亳亳 于 从仂仂亟亳仆舒仆舒舒 亳亠仄舒 仗仂亰亳亳 仆舒 从舒亠舒. 于亳亢亠仆亳亠仂 亠 舒仄仂 于 舒于仆亳仆舒舒 仂仗亠亟亠仍亠仆舒 仂 Oxy. 丐从 z 仆亠 舒于舒. 仄舒 舒仄仂 亠亟仆舒 从舒亠舒, 从仂仂 仗仂亠亞仍 仂 仆舒舒仍仂仂 仆舒 从仂仂亟亳仆舒仆舒舒 亳亠仄舒. 仂亳亰于仂仍仆亳 仗亳仄亳亳于亳 - 仗亳舒
  • 6. 舒弍仂舒 仗舒于亳 MOVETO {x X y Y } 仗亳亟于亳亢于舒 从舒亠舒舒 亟仂 亟舒亟亠仆仂 仄仂 从仂仂亟亳仆舒亳 (X, Y) 于 亠从舒舒 从仂仂亟亳仆舒仆舒 亳亠仄舒. LINETO {x X y Y } 亳于舒 仍亳仆亳 仂 亠从舒舒 仗仂亰亳亳 仆舒 从舒亠舒舒 亟仂 亟舒亟亠仆仂 仄仂 从仂仂亟亳仆舒亳 (X, Y) 亳 仗亠仄亠于舒 从舒亠舒舒 舒仄. CLOSEPOLY { } 亳于舒 仍亳仆亳 仂 亠从舒舒 仗仂亰亳亳 仆舒 从舒亠舒舒 亟仂 仆舒舒仍仂仂 仆舒 仗仂仍亠亟仆亳 仂仗亳舒仆 仗. STROKE { } 亳亰亳于舒 从仂仆 仗仂 仍亳仆亳亳亳亠 仂仗亠亟亠仍亠仆亳 仂 亞仂仆亳亠 从仂仄舒仆亟亳. FILL { } 亰舒仗仍于舒 仂仄舒舒 仂仗亠亟亠仍亠仆舒 仂 亞仂仆亳亠 从仂仄舒仆亟亳 仂仗亠亟亠仍亠仆 亳.
  • 7. 仂 仗亳仄亠 path box { MOVETO{x 0.5 y 0.5} LINETO{x -0.5 y 0.5} LINETO{x -0.5 y -0.5} LINETO{x 0.5 y -0.5} CLOSEPOLY{} STROKE{} } 乂亳 亟亠弍亠仍亳仆舒 10%
  • 8. 舒仍从仂 仗仂-仍仂亢亠仆 仗亳仄亠 startshape octagon path octagon { MOVETO { x cos(0) y sin(0) } LINETO{x cos(45) y sin(45)} LINETO{x cos(90) y sin(90) } LINETO{x cos(135) y sin(135)} LINETO{x cos(180) y sin(180)} LINETO{x cos(225) y sin(225)} LINETO{x cos(270) y sin(270)} LINETO{x cos(315) y sin(315)} CLOSEPOLY{} STROKE{} }
  • 9. 亰仗仂仍亰于舒仆亠 仆舒 亳从仍亳 path octagon { MOVETO { x 1 y 0 } 8 * { r 45 } LINETO{ x cos(45) y sin(45)} CLOSEPOLY{} STROKE{} } 仂 亳 仆舒亳仆 从舒从仂 仗亳 仗舒于亳仍舒舒. 亠舒仍仆仂 亠 仗亠亟亳亰于亳从于舒 亳亰仗仂仍亰于舒仆亠 仆舒 仆仂于舒 舒仆仂仄舒亳仂仆仆舒 仄舒亳舒 亰舒 亠从仂仂 仗仂仍仂亢亠仆亳亠 仆舒 从舒亠舒舒.
  • 10. 仂亢亠 亟舒 亳仄舒 仗仂于亠亠 仂 亠亟仆舒 仂仄舒 于 亟舒亟亠仆 仗 startshape octagon2 path octagon2 { MOVETO { x 1 y 0 } 8 * { r 45 } LINETO{ x cos(45) y sin(45)} CLOSEPOLY{} STROKE{} MOVETO { x (cos(0) * 0.5 ) y ( sin(0) * 0.5 ) } 6 * { r 60 } LINETO{ x (cos(60) * 0.5 ) y (sin(60) * 0.5 ) } CLOSEPOLY{} STROKE{} }
  • 11. 仂-仍仂亢仆亳 亳从仍亳 startshape octagon2 path octagon2 { MOVETO { x 1 y 0 } 8 * { r 45 } LINETO{ x cos(45) y sin(45)} CLOSEPOLY{} STROKE{} 2 * { x 2 } { MOVETO { x (cos(0) * 0.5 ) y ( sin(0) * 0.5 ) } 6 * { r 60 } LINETO{ x (cos(60) * 0.5 ) y (sin(60) * 0.5 ) } CLOSEPOLY{} } STROKE {} // 从仂仄舒仆亟舒舒 亰舒 亰舒仗仍于舒仆亠 亳仍亳 亳仂于舒仆亠 亠 亰舒亟仍亢亳亠仍仆仂 亳亰于仆 亳从仍舒 }
  • 12. 舒仗仍于舒仆亠 弌仍亠亟 亰舒于舒礌亠 仆舒 亟舒亟亠仆 仗 仄仂亢亠 亟舒 亠 仗亳仍仂亢亳 亳仍亳 FILL 亳仍亳 STROKE. 仂亢亠 亟舒 亳仄舒 仗仂于亠亠 仂 亠亟仆舒 仂仄舒, 从仂仂 亟舒 弍亟亠 亰舒仗仍仆亠仆舒 FILL 亳 STROKE 仄仂亞舒 亟舒 亠 从仂仄弍亳仆亳舒 亟亳亠从亳于亳 亰舒 亳亰亳于舒仆亠 仆舒 于. 弌仍亠亟 于磻舒 FILL 亟亳亠从亳于舒 仄仂亢亠 亟舒 亳仄舒 仆仂于舒 仗仂亠亟亳舒 仂 亟于亳亢亠仆亳 仆舒 从舒亠舒舒, 从仂亠仂 亟舒 亠 仍亠亟于舒仆仂 仂 亰舒仗仍于舒仆亠.
  • 13. 舒仗仍于舒仆亠 startshape octagon2 path octagon2 { MOVETO { x 1 y 0 } 8 * { r 45 } LINETO{ x cos(45) y sin(45)} CLOSEPOLY{} STROKE{} 2 * { x 2 } { MOVETO { x (cos(0) * 0.5 ) y ( sin(0) * 0.5 ) } 6 * { r 60 } LINETO{ x (cos(60) * 0.5 ) y (sin(60) * 0.5 ) } CLOSEPOLY{} } FILL { h 20 sat 1 b 0.8 } }
  • 14. 亳亟仂于亠 亰舒仗仍于舒仆亠 STROKE {shape adjustments width stroke_width param parameters} - 亰亳于舒 从仂仆 仗仂 仗仂仍亠亟仆亳 仂仗亳舒仆 仗 亟亠弍亠仍亳仆舒 仂仗亠亟亠仍亠仆舒 仂 stroke_width (仗仂 仗仂亟舒亰弍亳舒仆亠 0.1). 仂亞舒 亟舒 亠 仗仂亟舒亟舒 亳 仗舒舒仄亠亳 亰舒 仗仂仄礌舒 仆舒 于亠舒 亳 (!) 仂仄舒舒 FILL {shape adjustments param parameters} 亰舒仗仍于舒仆亠 仆舒 仗仂仍亠亟仆亳 仗 于亰亳仄舒亶从亳 仗亠亟于亳亟 仗舒舒仄亠亳亠 亰舒 仗仂仄礌舒 仆舒 仂仄舒舒. 从仂 仂仄舒舒 亠 舒仄仂仗亠亳舒舒 亠, 仂亞舒于舒 亳仄舒 亰仆舒亠仆亳亠 亳 仗舒舒仄亠舒 亰舒 亰舒仗仍于舒仆亠, 从仂亶仂 仂仗亠亟亠仍 从舒从 亟舒 弍亟亠 亰舒仗仍仆亠仆舒 . 仂 仗仂亟舒亰弍亳舒仆亠 亠 仗仂仍亰于舒 non-zero, 仆仂 仄仂亢亠 亟舒 弍亟亠 亳亰仗仂仍亰于舒仆仂 亳 even-odd 亰舒仗仍于舒仆亠 (仗仂 W3 仗亠亳亳从舒亳舒) : 舒弍. : 亳 从 亳仄舒 亰仆舒亠仆亳亠 亟舒仍亳 仗舒舒仄亠亳亠 舒 仗仂亟亠亟亠仆亳 亳仍亳 仆亠 . 舒弍. : 舒从仂 仆亠 亠 仗仂亟舒亟亠仆舒 磦仆舒 从仂仄舒仆亟舒 FILL 亠 亟仂弍舒于 nonz亠r仂 evenodd
  • 15. 舒舒仄亠亳 亰舒 亰舒仗仍于舒仆亠 path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} 5* {r 72} { FILL{y 1.88 b 0.5 p evenodd} STROKE{y 1.88} } }
  • 16. 舒舒仄亠亳 亰舒 亰舒仗仍于舒仆亠 path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} 5* {r 72} { FILL{y 1.88 b 0.5 p evenodd} STROKE{y 1.88} } } * 亳亰仗仂仍亰于舒 亠 evenodd 亰舒仗仍于舒仆亠 ** 亳 仗亳 STROKE 亳 FILL 仍舒 亳仄舒 亳亰仄亠于舒仆亠 仗仂 y
  • 17. 舒仗仍于舒仆亠仂 亠 仗仂于亠亠 仂 仗仂仂 亟亳亠从亳于舒 亰舒 于 path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} } path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} 5* {r 72} { FILL{y 1.88 b 0.5 p evenodd} STROKE{y 1.88} } }
  • 18. 舒仗仍于舒仆亠仂 亠 仗仂于亠亠 仂 仗仂仂 亟亳亠从亳于舒 亰舒 于* startshape stars background {sat 1 h 20} path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} FILL{b 0.5 hue 50 sat 1 s 1 p evenodd r 35 s 2.9 } STROKE { } } * ...从舒从仂 亳 仂亠舒于舒仆亠仂 仆舒 从仂仆
  • 19. 仂于亳 仗亳仄亳亳于亳 ! startshape S2 background {sat .6 h 40} rule S2 { 50 * { r (360/50) } SRANDOM { x 20 } S2 { a -0.1 s 0.9 r 45 h 20 } } rule SRANDOM { stars { x rand_static(-3, 3) a rand_static (-0.5, 0) y rand_static (-5, 5) s rand_static (0,1 ) hue rand_static (20, 200) }} /* 仄仆仂亞仂 仗亳 ... */ rule SRANDOM { stars { x rand_static(-3, 3) a rand_static (-0.5, 0) y rand_static (-5, 5) s rand_static (0,1 ) hue rand_static (20, 200) }} path stars { MOVETO{x cos(90-144) y sin(90-144)} 4* {r 144} LINETO {y 1} CLOSEPOLY{} FILL{b 0.5 hue 50 sat 1 p evenodd r 35 s 3} STROKE { } }
  • 20. 亳于亳 ARCTO {x x y y rx x_radius ry y_radius r ellipse_angle param parameters} 亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 亠亞仄亠仆 仂 亠仍亳仗舒 亟仂 仂从舒舒 (x, y), 从舒仂 亠 仗亳亠仄舒, 亠 亠仍亳仗舒舒 亠 舒亟亳 (rx, ry) 亳 亠 亰舒于礌舒 仆舒 舒亟亳 (于 亞舒亟亳) ARCTO {x x y y r radius param parameters} 亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 亠亞仄亠仆 仂 仂从亢仆仂 舒亟亳 r 亟仂 仂从舒舒 (x, y) CURVETO {x x y y x1 control_x_1 y1 control_y_1} 亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 从于舒亟舒亳仆舒 从亳于舒 仆舒 亠亰亳亠 亟仂 仂从舒舒 从仂仂亟亳仆舒亳 (x, y) 亳 从仂仆仂仍仆舒 仂从舒 于 (x1, y1) CURVETO {x x y y x1 control_x_1 y1 control_y_1 x2 control_x_2 y2 control_y_2} - 亟于亳亢亳 从舒亠舒舒, 舒从舒 亠 亟舒 仂仗亳亠 从亳于舒 仆舒 亠亰亳亠 亟仂 仂从舒舒 (x, y) 仗于舒 从仂仆仂仍仆舒 仂从舒 于 (x1, y1) 亳 于仂舒 从仂仆仂仍仆舒 仂从舒 亟仂 (x2, y2) CURVETO {x x y y} 亟于亳亢亳 从舒亠舒舒 舒从舒 亠 亟舒 仂仗亳亠 从于舒亟舒亳仆舒 从亳于舒 仆舒 亠亰亳亠 亟仂 仂从舒舒 (x, y) 从仂仆仂仍仆舒 仂从舒, 从仂仂 亠 '仂亞仍亠亟舒仍仆仂' 舒亰仗仂仍仂亢亠仆舒 仗礆仂 从仂仆仂仍仆舒舒 仂从舒 仆舒 仗亠亟亳仆舒舒 从亳于舒
  • 21. 亳于亳 仆舒 亠亰亳亠 弌 亠亟仆舒 从仂仆仂仍仆舒 仂从舒 丐舒仆亞亠仆亳亠 于 P0 亳 P2 仗亠仄亳仆舒于舒 仗亠亰 P1 弌 亟于亠 从仂仆仂仍仆亳 仂从亳 P0 P1 P2 丐舒仆亞亠仆舒舒 于 P0 e P0P1, 舒仆亞亠仆舒舒 于 P3 亠 P2P3 亳于舒舒 仄仂亢亠 亟舒 亠 舒仄仂仗亠亠亠. P0 P1 P2 P3 P4
  • 22. 亳于亳 仆舒 亠亰亳亠 弌 亠亟仆舒 从仂仆仂仍仆舒 仂从舒 仂仂亟亳仆舒仆舒舒 亳亠仄舒 亳 亟仂仗亳舒亠仍仆亳亠 舒 亟仂弍舒于亠仆亳 亰舒 亟亠舒亶仍亳 path roll{ MOVETO { x 5 y 0 } CURVETO { x -5 y 0 x1 0 y1 -10 } STROKE {b 1 width 0.05 } }
  • 23. 亳于亳 仆舒 亠亰亳亠 从仂仆仂仍仆亳 仂从亳 path roll{ MOVETO { x 5 y 0 } CURVETO { x -5 y 0 x1 2.5 y1 5 x2 -2.5 y2 5 } STROKE {b 1 width 0.05} } // 仂 (5,0) 亟仂 (-5, 0) 从仂仆仂仍仆亳 仂从亳 于 (2.5, 5) 亳 (-2.5, 5) 亳 从仂仆 亟亠弍亠仍亳仆舒 0.05 仂仆仂仍仆亳亠 仂从亳 舒 于 (2.5, 5) 亳 (-2.5, 5) 仂仆仂仍仆亳亠 仂从亳 舒 于 (2.5, -5) 亳 (-2.5, 5) path roll{ MOVETO { x 5 y 0 } CURVETO { x -5 y 0 x1 2.5 y1 -5 x2 -2.5 y2 5 } STROKE {b 1 width 0.05} }
  • 24. The DAO startshape dao background {b -.3} path roll{ MOVETO{y 1} ARCTO{y -3} FILL{b 1} MOVETO{y -3} ARCTO{y 1} FILL{} MOVETO{y 1} ARCTO{y -1} FILL{} MOVETO{y -1} ARCTO{y -3 p cw} FILL{ b 1} } rule dao{ roll {} CIRCLE{b 1 s .7} CIRCLE{y -2 s .7} } 丐从 ARCTO 亠 亳亰仗仂仍亰于舒 亟亠 舒从仂 亰舒 亳于舒仆亠 仆舒 仗仂仍仂从亢仆仂亳
  • 25. 亰弍仂 仆舒 从亳于舒 舒舒仄亠 p cw 仆舒 ARCTO 亟亳亠从亳于舒 从舒亰于舒 仆舒 舒从舒舒, 从仂仂 亠 仗仂 仗仂仂从舒 仆舒 舒仂于仆亳从仂于舒舒 亠仍从舒. 弌 仗舒舒仄亠 p large 仄仂亢亠 亟舒 亠 从舒亢亠 亳亰仗仂仍亰于舒仆亠 仆舒 仗仂-亞仂仍礆舒舒 舒从舒 仂 仂从仆仂舒/亠仍亳仗舒舒.
  • 27. SVG 从仄 CFDG 亳 仂弍舒仆仂 亳仄亳亳于亳亠 仆舒 SVG 舒 于仄亠亳仄亳 亠亰亳 仆舒 CFDG 亳 仄仂亢亠 亟舒 仍亠仆仂 亟舒 亠 仆舒仗舒于亳 仗亠仂亟 仂 SVG 舒亞仂于亠 从仄 CFDG 仗亳舒. 于 仂仄舒 仆舒 ContextFree 亠 亟亠仄仂仆亳舒仆 从仂仆于亠仂 亰舒 TTF 亳仂于亠 (于亢. 亳弍仍亳仂亞舒亳舒). 舒 仗舒从亳从舒 仍亠仆仂 仄仂亢亠 亟舒 弍亟亠 亠舒仍亳亰亳舒仆 从仂仆于亠仂 亰舒 仗仂-仗仂亳 SVG 舒亶仍仂于亠. Context Free 仗仂亰于仂仍磦舒 亰舒仗舒亰于舒仆亠 仆舒 亞亠仆亠亳舒仆舒舒 从舒 从舒仂 于亠从仂亠仆 SVG 舒亶仍. SVG 亠 舒仆亟舒亳亰亳舒仆 于亠从仂亠仆 仂仄舒, 从仂亶仂 仄仂亢亠 亟舒 弍亟亠 仂于舒礌 仂 仗仂于亠亠仂 仗仂仗仍仆亳 仗亳仍仂亢亠仆亳 亰舒 舒弍仂舒 于亠从仂仆舒 亞舒亳从舒 (从舒仂 Illustrator, Corel Draw, InkScape 亳 亟.)
  • 28. 仆亳仄亳舒仆亠 仆舒 CFDG, 从仂亠仂 亳仄舒 舒仄仂 亟亠亠仄亳仆亳亳仆亳 仗舒于亳仍舒 rule DAISYALL { DAISYSHAPE { } 6*{r __LARO__ h __LARO__ } DAISYXPAND {x 1} 6*{r __LARO__ } DAISYSHAPE {x 1} } rule DAISYXPAND { DAISYSHAPE { } 6*{r __LARO__ }DAISYSHAPE {x 1 z-1} DAISYXPAND{s .5 r __LARO__ } } path DAISYSHAPE { MOVETO{x -1 y 0} ARCTO {x 1 y 0} ARCTO {x -1 y 0} STROKE{width 0.03 b -1} FILL {b 1 a -.8 sat 1} }
  • 29. 仆亳仄亳舒仆亠 仆舒 仗舒舒仄亠亳 1) 弌亰亟舒于舒仄亠 仗仂仄仂亠仆 从亳仗, 从仂亶仂 亟舒 亞亠仆亠亳舒 仗仂仍亠亟仂于舒亠仍仆仂 仂 CFDG 舒亶仍仂于亠. 2) 亰仗仂仍亰于舒仄亠 从仂仆亰仂仍仆仂仂 仗亳仍仂亢亠仆亳亠 cfdg 亰舒 亞亠仆亠亳舒仆亠 仆舒 于亠从亳 仂 : cfdg cur.cfdg output$SEQ.png -v ARE 3) 亰仗仂仍亰于舒仄亠 mencoder 亰舒 亞亠仆亠亳舒仆亠 仆舒 舒仆亳仄舒亳: mencoder mf://*.png -mf w=500:h=500:fps=25:type=png -ovc copy -oac copy -o output.avi
  • 31. 亰从亳 http://www.khronos.org/openvg/ - OpenVG 舒仆亟舒 http://www.contextfreeart.org/mediawiki/index.php/Paths 亠 亰舒 仗亳舒 http://www.contextfreeart.org/phpbb/viewtopic.php?t=418 亠舒仆亳亰仄 亰舒 从仂仆于亠亳舒仆亠 仆舒 TTF 亳仂于亠 从仄 SVG 亳 仗仂仍亠 从仄 CFDG 仗舒于亳仍舒 http://en.wikipedia.org/wiki/B%C3%A9zier_curve 亳于亳 仆舒 亠亰亳亠 http://www.azarask.in/blog/post/contextfreejs-algorithm-ink- making-art-with-javascript/ - Context Free with JavaScript http://www.mplayerhq.hu/DOCS/HTML/en/menc-feat-enc- images.html 仂亟亳舒仆亠 仆舒 于亳亟亠仂 仂 仗仂仍亠亟仂于舒亠仍仆仂 仂 亳亰仂弍舒亢亠仆亳 http://roberthodgin.com/ - 亳亰仆亠仆舒亟舒