@leafer/math
Advanced tools
+2
-2
| { | ||
| "name": "@leafer/math", | ||
| "version": "1.0.0-rc.12", | ||
| "version": "1.0.0-rc.16", | ||
| "description": "@leafer/math", | ||
@@ -25,4 +25,4 @@ "author": "Chao (Leafer) Wan", | ||
| "devDependencies": { | ||
| "@leafer/interface": "1.0.0-rc.12" | ||
| "@leafer/interface": "1.0.0-rc.16" | ||
| } | ||
| } |
+2
-2
@@ -78,4 +78,4 @@ import { IPoint, IPointData, IMatrixData } from '@leafer/interface' | ||
| public getDistancePoint(to: IPointData, distance: number): IPoint { | ||
| return new Point(P.getDistancePoint(this, to, distance)) | ||
| public getDistancePoint(to: IPointData, distance: number, changeTo?: boolean): IPoint { | ||
| return new Point(P.getDistancePoint(this, to, distance, changeTo)) | ||
| } | ||
@@ -82,0 +82,0 @@ |
+19
-10
@@ -33,2 +33,7 @@ import { IPointData, IMatrixData, IRadiusPointData, IMatrixWithScaleData } from '@leafer/interface' | ||
| copyFrom(t: IPointData, x: number, y: number): void { | ||
| t.x = x | ||
| t.y = y | ||
| }, | ||
| move(t: IPointData, x: number, y: number): void { | ||
@@ -64,3 +69,3 @@ t.x += x | ||
| const { tempPoint: temp } = P | ||
| P.copy(temp, t) | ||
| copy(temp, t) | ||
| toInnerPoint(matrix, temp, temp) | ||
@@ -72,3 +77,3 @@ return temp | ||
| const { tempPoint: temp } = P | ||
| P.copy(temp, t) | ||
| copy(temp, t) | ||
| toOuterPoint(matrix, temp, temp) | ||
@@ -80,3 +85,3 @@ return temp | ||
| const { tempRadiusPoint: temp } = P | ||
| P.copy(temp, t) | ||
| copy(temp, t) | ||
| P.toInnerRadiusPointOf(t, matrix, temp) | ||
@@ -116,3 +121,3 @@ return temp | ||
| getDistance(t: IPointData, point: IPointData): number { | ||
| return P.getDistanceFrom(t.x, t.y, point.x, point.y) | ||
| return getDistanceFrom(t.x, t.y, point.x, point.y) | ||
| }, | ||
@@ -127,7 +132,7 @@ | ||
| getMinDistanceFrom(x1: number, y1: number, x2: number, y2: number, x3: number, y3: number): number { | ||
| return min(P.getDistanceFrom(x1, y1, x2, y2), P.getDistanceFrom(x2, y2, x3, y3)) | ||
| return min(getDistanceFrom(x1, y1, x2, y2), getDistanceFrom(x2, y2, x3, y3)) | ||
| }, | ||
| getAngle(t: IPointData, to: IPointData): number { | ||
| return P.getAtan2(t, to) / OneRadian | ||
| return getAtan2(t, to) / OneRadian | ||
| }, | ||
@@ -153,5 +158,8 @@ | ||
| getDistancePoint(t: IPointData, to: IPointData, distance: number): IPointData { | ||
| const r = P.getAtan2(t, to) | ||
| return { x: t.x + cos(r) * distance, y: t.y + sin(r) * distance } | ||
| getDistancePoint(t: IPointData, to: IPointData, distance: number, changeTo: boolean): IPointData { | ||
| const r = getAtan2(t, to) | ||
| to = changeTo ? to : {} as IPointData | ||
| to.x = t.x + cos(r) * distance | ||
| to.y = t.y + sin(r) * distance | ||
| return to | ||
| }, | ||
@@ -164,2 +172,3 @@ | ||
| const P = PointHelper | ||
| const P = PointHelper | ||
| const { getDistanceFrom, copy, getAtan2 } = P |
+3
-2
@@ -30,3 +30,3 @@ import { INumberMap, IPoint, IPointData, IMatrixData, IBounds, IBoundsData, IMatrix, IObject, IBoundsDataFn, IRadiusPointData, IMatrixWithLayoutData, IAutoBounds, IAutoBoundsData, ISizeData, ILayoutData, IMatrixWithScaleData, IAround, IOffsetBoundsData, ITwoPointBoundsData, IMatrixWithOptionScaleData, IScaleData } from '@leafer/interface'; | ||
| getDistance(to: IPointData): number; | ||
| getDistancePoint(to: IPointData, distance: number): IPoint; | ||
| getDistancePoint(to: IPointData, distance: number, changeTo?: boolean): IPoint; | ||
| getAngle(to: IPointData): number; | ||
@@ -133,2 +133,3 @@ getAtan2(to: IPointData): number; | ||
| copy(t: IPointData, point: IPointData): void; | ||
| copyFrom(t: IPointData, x: number, y: number): void; | ||
| move(t: IPointData, x: number, y: number): void; | ||
@@ -154,3 +155,3 @@ scale(t: IPointData, scaleX: number, scaleY?: number): void; | ||
| getAtan2(t: IPointData, to: IPointData): number; | ||
| getDistancePoint(t: IPointData, to: IPointData, distance: number): IPointData; | ||
| getDistancePoint(t: IPointData, to: IPointData, distance: number, changeTo: boolean): IPointData; | ||
| reset(t: IPointData): void; | ||
@@ -157,0 +158,0 @@ }; |
59238
0.58%1434
0.63%