| 42 | inline double cross2(PT a, PT b, PT c) { return cross(b - a, c - a); } |
| 43 | inline int orientation(PT a, PT b, PT c) { return sign(cross(b - a, c - a)); } |
| 44 | PT perp(PT a) { return PT(-a.y, a.x); } |
| 45 | PT rotateccw90(PT a) { return PT(-a.y, a.x); } |
| 46 | PT rotatecw90(PT a) { return PT(a.y, -a.x); } |
| 47 | PT rotateccw(PT a, double t) { return PT(a.x * cos(t) - a.y * sin(t), a.x * sin(t) + a.y * cos(t)); } |
no test coverage detected