17 lines
682 B
JavaScript
17 lines
682 B
JavaScript
export const add = (v1, v2) => ({ x: v1.x + v2.x, y: v1.y + v2.y });
|
|
export const sub = (v1, v2) => ({ x: v1.x - v2.x, y: v1.y - v2.y });
|
|
|
|
export const minLinearDist = (A, B) => {
|
|
return Math.min(
|
|
// vertical distances (4) between all edges
|
|
(A.positon.y) - (B.positon.y),
|
|
(A.positon.y + A.size.y) - (B.position.y + B.size.y),
|
|
(A.position.y) - (B.position.y + B.size.y),
|
|
(A.position.y + A.size.y) - (B.position.y),
|
|
// horizontal distances (4) between all edges
|
|
(A.positon.x) - (B.positon.x),
|
|
(A.positon.x + A.size.x) - (B.position.x + B.size.x),
|
|
(A.position.x) - (B.position.x + B.size.x),
|
|
(A.position.x + A.size.x) - (B.position.x),
|
|
);
|
|
}; |