diff options
Diffstat (limited to 'test-client/util.ts')
-rw-r--r-- | test-client/util.ts | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test-client/util.ts b/test-client/util.ts index baebc61e..23679974 100644 --- a/test-client/util.ts +++ b/test-client/util.ts @@ -21,3 +21,16 @@ export function add_v2(p: V2, o: V2 | number) { if (typeof o == "number") return { x: p.x + o, y: p.y + o } else return { x: p.x + o.x, y: p.y + o.y } } + +export function aabb_circle_distance( + min_x: number, + min_y: number, + max_x: number, + max_y: number, + px: number, + py: number +): number { + const dx = px - Math.max(min_x, Math.min(max_x, px)) + const dy = py - Math.max(min_y, Math.min(max_y, py)) + return Math.sqrt(dx * dx + dy * dy) +} |