@nothing-but/utils
Advanced tools
Comparing version 0.7.1 to 0.7.2
# @nothing-but/utils | ||
## 0.7.2 | ||
### Patch Changes | ||
- 69bbe07: Drop vec\_ prefix | ||
## 0.7.1 | ||
@@ -4,0 +10,0 @@ |
@@ -17,2 +17,3 @@ import type { Position } from './types.js'; | ||
}, el: HTMLElement): Position; | ||
export declare function shouldIgnoreKeydown(e: KeyboardEvent): boolean; | ||
//# sourceMappingURL=event.d.ts.map |
@@ -31,1 +31,10 @@ export const PASSIVE = { passive: true }; | ||
} | ||
export function shouldIgnoreKeydown(e) { | ||
return (e.ctrlKey || | ||
e.altKey || | ||
e.metaKey || | ||
e.shiftKey || | ||
e.isComposing || | ||
e.defaultPrevented || | ||
e.target !== document.body); | ||
} |
@@ -54,7 +54,7 @@ import type { Position } from './types.js'; | ||
*/ | ||
export declare function vec_equals(a: Position, b: Position): boolean; | ||
export declare function equals(a: Position, b: Position): boolean; | ||
/** | ||
* Subtracts a vector from another vector in place. The first vector is **mutated**. | ||
*/ | ||
export declare function vec_subtract(a: Position, b: Position): void; | ||
export declare function subtract(a: Position, b: Position): void; | ||
/** | ||
@@ -64,8 +64,8 @@ * Calculates the difference between two vectors. | ||
*/ | ||
export declare function vec_difference(a: Position, b: Position): Vector; | ||
export declare function difference(a: Position, b: Position): Vector; | ||
/** | ||
* Adds a vector or a force to another vector in place. The first vector is **mutated**. | ||
*/ | ||
export declare function vec_add(vec: Position, velocity: Position | Force | number): void; | ||
export declare function vec_add(vec: Position, x: number, y: number): void; | ||
export declare function add(vec: Position, velocity: Position | Force | number): void; | ||
export declare function add(vec: Position, x: number, y: number): void; | ||
/** | ||
@@ -75,7 +75,7 @@ * Calculates the sum of two vectors. | ||
*/ | ||
export declare function vec_sum(a: Position, b: Position): Vector; | ||
export declare function sum(a: Position, b: Position): Vector; | ||
/** | ||
* Multiplies a vector by another vector or a scalar in place. The first vector is **mutated**. | ||
*/ | ||
export declare function vec_multiply(a: Position, b: Position | number): void; | ||
export declare function multiply(a: Position, b: Position | number): void; | ||
/** | ||
@@ -85,7 +85,7 @@ * Calculates the product of two vectors. | ||
*/ | ||
export declare function product(a: Position, b: Position): Vector; | ||
export declare function product(a: Position, b: Position | number): Vector; | ||
/** | ||
* Divides a vector by another vector in place. The first vector is **mutated**. | ||
*/ | ||
export declare function vec_divide(a: Position, b: Position): void; | ||
export declare function divide(a: Position, b: Position): void; | ||
/** | ||
@@ -97,4 +97,4 @@ * Calculates the quotient of two vectors. | ||
export declare function quotient(a: Position, b: Position): Vector; | ||
export declare function vec_map(vec: Position, fn: (xy: number) => number): Vector; | ||
export declare function vec_mut(vec: Position, fn: (xy: number) => number): void; | ||
export declare function map(vec: Position, fn: (xy: number) => number): Vector; | ||
export declare function mut(vec: Position, fn: (xy: number) => number): void; | ||
/** | ||
@@ -105,2 +105,3 @@ * Calculates the distance between two vectors. | ||
export declare function distance(a: Position, b: Position): number; | ||
export declare function average(...vectors: Position[]): Vector; | ||
/** | ||
@@ -115,3 +116,3 @@ * Calculates the angle between two vectors. | ||
*/ | ||
export declare function vec_rotate(point: Vector, rad: number): void; | ||
export declare function rotate(point: Vector, rad: number): void; | ||
/** | ||
@@ -124,3 +125,3 @@ * Rotates the {@link point} vector around {@link origin} by {@link rad} angle. | ||
*/ | ||
export declare function vec_rotate_around(point: Vector, origin: Vector, rad: number): void; | ||
export declare function rotate_around(point: Vector, origin: Vector, rad: number): void; | ||
/** | ||
@@ -127,0 +128,0 @@ * Represents a force with magnitude and angle in 2D space. |
@@ -47,3 +47,3 @@ /** | ||
*/ | ||
export function vec_equals(a, b) { | ||
export function equals(a, b) { | ||
return a.x === b.x && a.y === b.y; | ||
@@ -54,3 +54,3 @@ } | ||
*/ | ||
export function vec_subtract(a, b) { | ||
export function subtract(a, b) { | ||
a.x -= b.x; | ||
@@ -63,6 +63,6 @@ a.y -= b.y; | ||
*/ | ||
export function vec_difference(a, b) { | ||
export function difference(a, b) { | ||
return vector(a.x - b.x, a.y - b.y); | ||
} | ||
export function vec_add(vec, x, y) { | ||
export function add(vec, x, y) { | ||
if (typeof x === 'number') { | ||
@@ -83,3 +83,3 @@ vec.x += x; | ||
*/ | ||
export function vec_sum(a, b) { | ||
export function sum(a, b) { | ||
return vector(a.x + b.x, a.y + b.y); | ||
@@ -90,3 +90,3 @@ } | ||
*/ | ||
export function vec_multiply(a, b) { | ||
export function multiply(a, b) { | ||
if (typeof b === 'number') { | ||
@@ -105,2 +105,5 @@ a.x *= b; | ||
export function product(a, b) { | ||
if (typeof b === 'number') { | ||
return vector(a.x * b, a.y * b); | ||
} | ||
return vector(a.x * b.x, a.y * b.y); | ||
@@ -111,3 +114,3 @@ } | ||
*/ | ||
export function vec_divide(a, b) { | ||
export function divide(a, b) { | ||
a.x /= b.x; | ||
@@ -124,6 +127,6 @@ a.y /= b.y; | ||
} | ||
export function vec_map(vec, fn) { | ||
export function map(vec, fn) { | ||
return vector(fn(vec.x), fn(vec.y)); | ||
} | ||
export function vec_mut(vec, fn) { | ||
export function mut(vec, fn) { | ||
vec.x = fn(vec.x); | ||
@@ -141,2 +144,10 @@ vec.y = fn(vec.y); | ||
} | ||
export function average(...vectors) { | ||
let x = 0, y = 0; | ||
for (const vec of vectors) { | ||
x += vec.x; | ||
y += vec.y; | ||
} | ||
return vector(x / vectors.length, y / vectors.length); | ||
} | ||
/** | ||
@@ -153,3 +164,3 @@ * Calculates the angle between two vectors. | ||
*/ | ||
export function vec_rotate(point, rad) { | ||
export function rotate(point, rad) { | ||
const { x, y } = point, cos = Math.cos(rad), sin = Math.sin(rad); | ||
@@ -166,3 +177,3 @@ point.x = x * cos - y * sin; | ||
*/ | ||
export function vec_rotate_around(point, origin, rad) { | ||
export function rotate_around(point, origin, rad) { | ||
const { x, y } = point, { x: ox, y: oy } = origin, cos = Math.cos(rad), sin = Math.sin(rad); | ||
@@ -169,0 +180,0 @@ point.x = ox + (x - ox) * cos - (y - oy) * sin; |
{ | ||
"name": "@nothing-but/utils", | ||
"version": "0.7.1", | ||
"version": "0.7.2", | ||
"license": "MIT", | ||
@@ -5,0 +5,0 @@ "author": "Damian Tarnawski <gthetarnav@gmail.com>", |
@@ -41,1 +41,13 @@ import type { Position } from './types.js' | ||
} | ||
export function shouldIgnoreKeydown(e: KeyboardEvent): boolean { | ||
return ( | ||
e.ctrlKey || | ||
e.altKey || | ||
e.metaKey || | ||
e.shiftKey || | ||
e.isComposing || | ||
e.defaultPrevented || | ||
e.target !== document.body | ||
) | ||
} |
@@ -81,3 +81,3 @@ import type { Position } from './types.js' | ||
*/ | ||
export function vec_equals(a: Position, b: Position): boolean { | ||
export function equals(a: Position, b: Position): boolean { | ||
return a.x === b.x && a.y === b.y | ||
@@ -89,3 +89,3 @@ } | ||
*/ | ||
export function vec_subtract(a: Position, b: Position): void { | ||
export function subtract(a: Position, b: Position): void { | ||
a.x -= b.x | ||
@@ -99,3 +99,3 @@ a.y -= b.y | ||
*/ | ||
export function vec_difference(a: Position, b: Position): Vector { | ||
export function difference(a: Position, b: Position): Vector { | ||
return vector(a.x - b.x, a.y - b.y) | ||
@@ -107,5 +107,5 @@ } | ||
*/ | ||
export function vec_add(vec: Position, velocity: Position | Force | number): void | ||
export function vec_add(vec: Position, x: number, y: number): void | ||
export function vec_add(vec: Position, x: Position | Force | number, y?: number): void { | ||
export function add(vec: Position, velocity: Position | Force | number): void | ||
export function add(vec: Position, x: number, y: number): void | ||
export function add(vec: Position, x: Position | Force | number, y?: number): void { | ||
if (typeof x === 'number') { | ||
@@ -127,3 +127,3 @@ vec.x += x | ||
*/ | ||
export function vec_sum(a: Position, b: Position): Vector { | ||
export function sum(a: Position, b: Position): Vector { | ||
return vector(a.x + b.x, a.y + b.y) | ||
@@ -135,3 +135,3 @@ } | ||
*/ | ||
export function vec_multiply(a: Position, b: Position | number): void { | ||
export function multiply(a: Position, b: Position | number): void { | ||
if (typeof b === 'number') { | ||
@@ -150,3 +150,6 @@ a.x *= b | ||
*/ | ||
export function product(a: Position, b: Position): Vector { | ||
export function product(a: Position, b: Position | number): Vector { | ||
if (typeof b === 'number') { | ||
return vector(a.x * b, a.y * b) | ||
} | ||
return vector(a.x * b.x, a.y * b.y) | ||
@@ -158,3 +161,3 @@ } | ||
*/ | ||
export function vec_divide(a: Position, b: Position): void { | ||
export function divide(a: Position, b: Position): void { | ||
a.x /= b.x | ||
@@ -173,7 +176,7 @@ a.y /= b.y | ||
export function vec_map(vec: Position, fn: (xy: number) => number): Vector { | ||
export function map(vec: Position, fn: (xy: number) => number): Vector { | ||
return vector(fn(vec.x), fn(vec.y)) | ||
} | ||
export function vec_mut(vec: Position, fn: (xy: number) => number): void { | ||
export function mut(vec: Position, fn: (xy: number) => number): void { | ||
vec.x = fn(vec.x) | ||
@@ -193,2 +196,12 @@ vec.y = fn(vec.y) | ||
export function average(...vectors: Position[]): Vector { | ||
let x = 0, | ||
y = 0 | ||
for (const vec of vectors) { | ||
x += vec.x | ||
y += vec.y | ||
} | ||
return vector(x / vectors.length, y / vectors.length) | ||
} | ||
/** | ||
@@ -206,3 +219,3 @@ * Calculates the angle between two vectors. | ||
*/ | ||
export function vec_rotate(point: Vector, rad: number): void { | ||
export function rotate(point: Vector, rad: number): void { | ||
const { x, y } = point, | ||
@@ -222,3 +235,3 @@ cos = Math.cos(rad), | ||
*/ | ||
export function vec_rotate_around(point: Vector, origin: Vector, rad: number): void { | ||
export function rotate_around(point: Vector, origin: Vector, rad: number): void { | ||
const { x, y } = point, | ||
@@ -225,0 +238,0 @@ { x: ox, y: oy } = origin, |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
113437
2901