1234567891011121314151617181920212223242526272829303132 |
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.checkCollinear = checkCollinear;
- exports.getDistance = getDistance;
- exports.moveTo = moveTo;
- function int(value) {
- return parseInt(value, 10);
- }
- /**
- * https://en.wikipedia.org/wiki/Collinearity
- * x=(x1+x2)/2
- * y=(y1+y2)/2
- */
- function checkCollinear(p0, p1, p2) {
- return int(p0.x + p2.x) === int(2 * p1.x) && int(p0.y + p2.y) === int(2 * p1.y);
- }
- function getDistance(p1, p2) {
- return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));
- }
- function moveTo(to, from, radius) {
- var vector = { x: to.x - from.x, y: to.y - from.y };
- var length = Math.sqrt(vector.x * vector.x + vector.y * vector.y);
- var unitVector = { x: vector.x / length, y: vector.y / length };
- return {
- x: from.x + unitVector.x * radius,
- y: from.y + unitVector.y * radius
- };
- }
- //# sourceMappingURL=math.js.map
|