Name |
Appearance |
Definition |
---|---|---|
SimpleDot |
|
1 (x 2 y 2 ) { dup mul exch dup mul add 1 exch sub } |
InvertedSimpleDot |
|
x 2 y 2 1 { dup mul exch dup mul add 1 sub } |
DoubleDot |
|
360xsin2------------------------------360ysin2------------------------------+ { 360 mul sin 2 div exch 360 mul sin 2 div add } |
InvertedDoubleDot |
|
360xsin2------------------------------360ysin2------------------------------+– { 360 mul sin 2 div exch 360 mul sin 2 div add neg } |
CosineDot |
|
180xcos2-------------------------------180ycos2-------------------------------+ { 180 mul cos exch 180 mul cos add 2 div } |
Double |
|
360x2---sin2-------------------------------360ysin2------------------------------+ { 360 mul sin 2 div exch 2 div 360 mul sin 2 div add } |
InvertedDouble |
|
360x2---sin2-------------------------------360ysin2------------------------------+– { 360 mul sin 2 div exch 2 div 360 mul sin 2 div add neg } |
Line |
|
y { exch pop abs neg } |
LineX |
|
x { pop } |
LineY |
|
y { exch pop } |
Round |
|
if x y 1 then 1 (x 2 y 2 ) else ( x 1) 2 ( y 1) 2 1 { abs exch abs 2 copy add 1 le { dup mul exch dup mul add 1 exch sub } { 1 sub dup mul exch 1 sub dup mul add 1 sub } ifelse } |
Ellipse |
|
let w (3 x ) (4 y ) 3 if w 0 then 1x2y0.75----------2+4------------------------------– else if w 1 then 1x–21y–0.75---------------2+4------------------------------------------------------1– else 0.5 w{ abs exch abs 2 copy 3 mul exch 4 mul add 3 sub dup 0 lt { pop dup mul exch 0.75 div dup mul add 4 div 1 exch sub } { dup 1 gt { pop 1 exch sub dup mul exch 1 exch sub 0.75 div dup mul add 4 div 1 sub } { 0.5 exch sub exch pop exch pop } ifelse } ifelse } |
EllipseA |
|
1 (x 2 0.9 y 2 ) { dup mul 0.9 mul exch dup mul add 1 exch sub } |
InvertedEllipseA |
|
x 2 0.9 y 2 1 { dup mul 0.9 mul exch dup mul add 1 sub } |
EllipseB |
|
1x258---y2+– { dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub } |
EllipseC |
|
1 (0.9 x 2 y 2 ) { dup mul exch dup mul 0.9 mul add 1 exch sub } |
InvertedEllipseC |
|
0.9 x 2 y 2 1 { dup mul exch dup mul 0.9 mul add 1 sub } |
Square |
|
max ( x , y ) { abs exch abs 2 copy lt { exch } if pop neg } |
Cross |
|
min ( x , y ) { abs exch abs 2 copy gt { exch } if pop neg } |
Rhomboid |
|
0.9xy+2--------------------------------- { abs exch abs 0.9 mul add 2 div } |
Diamond |
|
if x y 0.75 then 1 (x 2 y 2 ) else if x y 1.23 then 1 (0.85 | x | + | y | ) else ( | x | 1) 2 ( | y | 1) 2 1 { abs exch abs 2 copy add 0.75 le { dup mul exch dup mul add 1 exch sub } { 2 copy add 1.23 le { 0.85 mul add 1 exch sub } { 1 sub dup mul exch 1 sub du mul add 1 sub } ifelse } ifelse } |