|
|
1.1 ! root 1: .IS ! 2: ARC { ! 3: var a1, b1, c1, ! 4: a2, b2, c2; ! 5: start ~ center + abs(radius)*cis(startang); ! 6: end ~ center + abs(radius)*cis(endang); ! 7: midway ~ center + abs(radius)*cis(midang); ! 8: im(start-center)*re(cis(startang)) ! 9: ~ re(start-center)*im(cis(startang)); ! 10: im(end-center)*re(cis(endang)) ! 11: ~ re(end-center)*im(cis(endang)); ! 12: im(midway-center)*re(cis(midang)) ! 13: ~ re(midway-center)*im(cis(midang)); ! 14: a1 ~ 2*(re(end)-re(start)); ! 15: b1 ~ 2*(im(end)-im(start)); ! 16: c1 ~ -re(start)*re(start) - im(start)*im(start) ! 17: + re(end)*re(end) + im(end)*im(end); ! 18: a2 ~ 2*(re(end)-re(midway)); ! 19: b2 ~ 2*(im(end)-im(midway)); ! 20: c2 ~ -re(midway)*re(midway) - im(midway)*im(midway) ! 21: + re(end)*re(end) + im(end)*im(end); ! 22: a1*re(center) + b1*im(center) ~ c1; ! 23: a2*re(center) + b2*im(center) ~ c2; ! 24: startang ~ atan2 (start - center); ! 25: midang ~ atan2 (midway - center); ! 26: endang ~ atan2 (end - center); ! 27: radius ~ abs (start - center); ! 28: radius ~ abs (midway - center); ! 29: radius ~ abs (end - center); ! 30: midway ~ start; ! 31: } ! 32: .IE
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.