path_addEllipse path 22 0 7 7
path_addRect path 25 5 4 4
translate 20 20
begin_block lines
save
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
translate 100 0
save
scale 4 1
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
translate 200 0
save
scale 1 4
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
translate 100 0
save
scale 4 4
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
restore
end_block
drawText 580 15 "non-cosmetic, 0-width"
translate 0 50
setPen black 2
repeat_block lines
drawText 580 15 "non-cosmetic, 2-width"
translate 0 20
translate 0 50
setPen black 0
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 2-width"
setRenderHint Antialiasing
translate 0 20
translate 0 50
setPen black 0
repeat_block lines
drawText 580 15 "non-cosmetic, 0-width"
translate 0 50
setPen black 2
repeat_block lines
drawText 580 15 "non-cosmetic, 2-width"
translate 0 20
translate 0 50
setPen black 0
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 2-width"
translate 0 70
drawText 0 0 "scale(1, 1)"
drawText 150 0 "scale(4, 1)"
drawText 300 0 "scale(1, 4)"
drawText 450 0 "scale(4, 4)"