blob: bd865dfd1124c7edbb066d105a6fa4a993330e21 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include <u.h>
#include <libc.h>
#include <draw.h>
#include "dat.h"
#include "fns.h"
double
round(double n)
{
return floor(n + 0.5);
}
Point
rotatept(Point p, double θ, Point c)
{
Point r;
p = subpt(p, c);
r.x = round(p.x*cos(θ) - p.y*sin(θ));
r.y = round(p.x*sin(θ) + p.y*cos(θ));
r = addpt(r, c);
return r;
}
double
hypot3(double x, double y, double z)
{
return hypot(x, hypot(y, z));
}
|