workadventure/front/src/Utils/MathUtils.ts

26 lines
763 B
TypeScript
Raw Normal View History

2021-12-01 14:48:14 +01:00
export class MathUtils {
/**
2021-12-03 10:11:16 +01:00
*
2021-12-01 14:48:14 +01:00
* @param p Position to check.
* @param r Rectangle to check the overlap against.
* @returns true is overlapping
*/
public static isOverlappingWithRectangle(
2021-12-03 10:11:16 +01:00
p: { x: number; y: number },
r: { x: number; y: number; width: number; height: number }
2021-12-01 14:48:14 +01:00
): boolean {
2021-12-03 10:11:16 +01:00
return this.isBetween(p.x, r.x, r.x + r.width) && this.isBetween(p.y, r.y, r.y + r.height);
2021-12-01 14:48:14 +01:00
}
/**
2021-12-03 10:11:16 +01:00
*
2021-12-01 14:48:14 +01:00
* @param value Value to check
* @param min inclusive min value
* @param max inclusive max value
* @returns true if value is in <min, max>
*/
public static isBetween(value: number, min: number, max: number): boolean {
2021-12-03 10:11:16 +01:00
return value >= min && value <= max;
2021-12-01 14:48:14 +01:00
}
2021-12-03 10:11:16 +01:00
}