Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- double dist(double x, double y, int i) {
- if ((a[i].x0 - a[i].x1) * (x - a[i].x1) + (a[i].y0 - a[i].y1) * (y - a[i].y1) <= 0) {
- return sqr(x - a[i].x1) + sqr(y - a[i].y1);
- }
- if ((a[i].x1 - a[i].x0) * (x - a[i].x0) + (a[i].y1 - a[i].y0) * (y - a[i].y0) <= 0) {
- return sqr(x - a[i].x0) + sqr(y - a[i].y0);
- }
- double s = (a[i].x0 - x) * (a[i].y1 - y) - (a[i].x1 - x) * (a[i].y0 - y);
- return sqr(s) / (sqr(a[i].x0 - a[i].x1) + sqr(a[i].y0 - a[i].y1));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement