@mlightcad/geometry-engine 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +13 -0
- package/dist/geometry-engine.js +10186 -0
- package/dist/geometry-engine.umd.cjs +4 -0
- package/lib/geometry/AcGeArea2d.d.ts +61 -0
- package/lib/geometry/AcGeArea2d.d.ts.map +1 -0
- package/lib/geometry/AcGeArea2d.js +174 -0
- package/lib/geometry/AcGeArea2d.js.map +1 -0
- package/lib/geometry/AcGeCircArc2d.d.ts +108 -0
- package/lib/geometry/AcGeCircArc2d.d.ts.map +1 -0
- package/lib/geometry/AcGeCircArc2d.js +412 -0
- package/lib/geometry/AcGeCircArc2d.js.map +1 -0
- package/lib/geometry/AcGeCircArc3d.d.ts +138 -0
- package/lib/geometry/AcGeCircArc3d.d.ts.map +1 -0
- package/lib/geometry/AcGeCircArc3d.js +447 -0
- package/lib/geometry/AcGeCircArc3d.js.map +1 -0
- package/lib/geometry/AcGeCurve2d.d.ts +85 -0
- package/lib/geometry/AcGeCurve2d.d.ts.map +1 -0
- package/lib/geometry/AcGeCurve2d.js +213 -0
- package/lib/geometry/AcGeCurve2d.js.map +1 -0
- package/lib/geometry/AcGeCurve3d.d.ts +27 -0
- package/lib/geometry/AcGeCurve3d.d.ts.map +1 -0
- package/lib/geometry/AcGeCurve3d.js +29 -0
- package/lib/geometry/AcGeCurve3d.js.map +1 -0
- package/lib/geometry/AcGeEllipseArc2d.d.ts +105 -0
- package/lib/geometry/AcGeEllipseArc2d.d.ts.map +1 -0
- package/lib/geometry/AcGeEllipseArc2d.js +292 -0
- package/lib/geometry/AcGeEllipseArc2d.js.map +1 -0
- package/lib/geometry/AcGeEllipseArc3d.d.ts +141 -0
- package/lib/geometry/AcGeEllipseArc3d.d.ts.map +1 -0
- package/lib/geometry/AcGeEllipseArc3d.js +442 -0
- package/lib/geometry/AcGeEllipseArc3d.js.map +1 -0
- package/lib/geometry/AcGeLine2d.d.ts +56 -0
- package/lib/geometry/AcGeLine2d.d.ts.map +1 -0
- package/lib/geometry/AcGeLine2d.js +125 -0
- package/lib/geometry/AcGeLine2d.js.map +1 -0
- package/lib/geometry/AcGeLine3d.d.ts +134 -0
- package/lib/geometry/AcGeLine3d.d.ts.map +1 -0
- package/lib/geometry/AcGeLine3d.js +291 -0
- package/lib/geometry/AcGeLine3d.js.map +1 -0
- package/lib/geometry/AcGeLoop2d.d.ts +59 -0
- package/lib/geometry/AcGeLoop2d.d.ts.map +1 -0
- package/lib/geometry/AcGeLoop2d.js +141 -0
- package/lib/geometry/AcGeLoop2d.js.map +1 -0
- package/lib/geometry/AcGePolyline2d.d.ts +90 -0
- package/lib/geometry/AcGePolyline2d.d.ts.map +1 -0
- package/lib/geometry/AcGePolyline2d.js +224 -0
- package/lib/geometry/AcGePolyline2d.js.map +1 -0
- package/lib/geometry/AcGeShape.d.ts +12 -0
- package/lib/geometry/AcGeShape.d.ts.map +1 -0
- package/lib/geometry/AcGeShape.js +22 -0
- package/lib/geometry/AcGeShape.js.map +1 -0
- package/lib/geometry/AcGeShape2d.d.ts +31 -0
- package/lib/geometry/AcGeShape2d.d.ts.map +1 -0
- package/lib/geometry/AcGeShape2d.js +51 -0
- package/lib/geometry/AcGeShape2d.js.map +1 -0
- package/lib/geometry/AcGeShape3d.d.ts +33 -0
- package/lib/geometry/AcGeShape3d.d.ts.map +1 -0
- package/lib/geometry/AcGeShape3d.js +52 -0
- package/lib/geometry/AcGeShape3d.js.map +1 -0
- package/lib/geometry/AcGeSpline3d.d.ts +77 -0
- package/lib/geometry/AcGeSpline3d.d.ts.map +1 -0
- package/lib/geometry/AcGeSpline3d.js +221 -0
- package/lib/geometry/AcGeSpline3d.js.map +1 -0
- package/lib/geometry/index.d.ts +13 -0
- package/lib/geometry/index.d.ts.map +1 -0
- package/lib/geometry/index.js +13 -0
- package/lib/geometry/index.js.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -0
- package/lib/math/AcGeBox2d.d.ts +173 -0
- package/lib/math/AcGeBox2d.d.ts.map +1 -0
- package/lib/math/AcGeBox2d.js +289 -0
- package/lib/math/AcGeBox2d.js.map +1 -0
- package/lib/math/AcGeBox3d.d.ts +195 -0
- package/lib/math/AcGeBox3d.d.ts.map +1 -0
- package/lib/math/AcGeBox3d.js +378 -0
- package/lib/math/AcGeBox3d.js.map +1 -0
- package/lib/math/AcGeEuler.d.ts +133 -0
- package/lib/math/AcGeEuler.d.ts.map +1 -0
- package/lib/math/AcGeEuler.js +358 -0
- package/lib/math/AcGeEuler.js.map +1 -0
- package/lib/math/AcGeMatrix2d.d.ts +203 -0
- package/lib/math/AcGeMatrix2d.d.ts.map +1 -0
- package/lib/math/AcGeMatrix2d.js +393 -0
- package/lib/math/AcGeMatrix2d.js.map +1 -0
- package/lib/math/AcGeMatrix3d.d.ts +279 -0
- package/lib/math/AcGeMatrix3d.d.ts.map +1 -0
- package/lib/math/AcGeMatrix3d.js +1037 -0
- package/lib/math/AcGeMatrix3d.js.map +1 -0
- package/lib/math/AcGePlane.d.ts +131 -0
- package/lib/math/AcGePlane.d.ts.map +1 -0
- package/lib/math/AcGePlane.js +218 -0
- package/lib/math/AcGePlane.js.map +1 -0
- package/lib/math/AcGePoint.d.ts +4 -0
- package/lib/math/AcGePoint.d.ts.map +1 -0
- package/lib/math/AcGePoint.js +2 -0
- package/lib/math/AcGePoint.js.map +1 -0
- package/lib/math/AcGePoint2d.d.ts +17 -0
- package/lib/math/AcGePoint2d.d.ts.map +1 -0
- package/lib/math/AcGePoint2d.js +40 -0
- package/lib/math/AcGePoint2d.js.map +1 -0
- package/lib/math/AcGePoint3d.d.ts +18 -0
- package/lib/math/AcGePoint3d.d.ts.map +1 -0
- package/lib/math/AcGePoint3d.js +43 -0
- package/lib/math/AcGePoint3d.js.map +1 -0
- package/lib/math/AcGeQuaternion.d.ts +230 -0
- package/lib/math/AcGeQuaternion.d.ts.map +1 -0
- package/lib/math/AcGeQuaternion.js +666 -0
- package/lib/math/AcGeQuaternion.js.map +1 -0
- package/lib/math/AcGeVector.d.ts +9 -0
- package/lib/math/AcGeVector.d.ts.map +1 -0
- package/lib/math/AcGeVector.js +2 -0
- package/lib/math/AcGeVector.js.map +1 -0
- package/lib/math/AcGeVector2d.d.ts +361 -0
- package/lib/math/AcGeVector2d.d.ts.map +1 -0
- package/lib/math/AcGeVector2d.js +622 -0
- package/lib/math/AcGeVector2d.js.map +1 -0
- package/lib/math/AcGeVector3d.d.ts +493 -0
- package/lib/math/AcGeVector3d.d.ts.map +1 -0
- package/lib/math/AcGeVector3d.js +868 -0
- package/lib/math/AcGeVector3d.js.map +1 -0
- package/lib/math/index.d.ts +14 -0
- package/lib/math/index.d.ts.map +1 -0
- package/lib/math/index.js +14 -0
- package/lib/math/index.js.map +1 -0
- package/lib/util/AcGeConstants.d.ts +19 -0
- package/lib/util/AcGeConstants.d.ts.map +1 -0
- package/lib/util/AcGeConstants.js +25 -0
- package/lib/util/AcGeConstants.js.map +1 -0
- package/lib/util/AcGeGeometryUtil.d.ts +16 -0
- package/lib/util/AcGeGeometryUtil.d.ts.map +1 -0
- package/lib/util/AcGeGeometryUtil.js +56 -0
- package/lib/util/AcGeGeometryUtil.js.map +1 -0
- package/lib/util/AcGeMathUtil.d.ts +203 -0
- package/lib/util/AcGeMathUtil.d.ts.map +1 -0
- package/lib/util/AcGeMathUtil.js +585 -0
- package/lib/util/AcGeMathUtil.js.map +1 -0
- package/lib/util/AcGeTol.d.ts +91 -0
- package/lib/util/AcGeTol.d.ts.map +1 -0
- package/lib/util/AcGeTol.js +83 -0
- package/lib/util/AcGeTol.js.map +1 -0
- package/lib/util/index.d.ts +5 -0
- package/lib/util/index.d.ts.map +1 -0
- package/lib/util/index.js +5 -0
- package/lib/util/index.js.map +1 -0
- package/package.json +42 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeVector3d.js","sourceRoot":"","sources":["../../src/math/AcGeVector3d.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export * from './AcGeMatrix2d';
|
2
|
+
export * from './AcGeMatrix3d';
|
3
|
+
export * from './AcGeBox3d';
|
4
|
+
export * from './AcGeBox2d';
|
5
|
+
export * from './AcGeVector';
|
6
|
+
export * from './AcGeVector2d';
|
7
|
+
export * from './AcGeVector3d';
|
8
|
+
export * from './AcGePlane';
|
9
|
+
export * from './AcGePoint';
|
10
|
+
export * from './AcGePoint2d';
|
11
|
+
export * from './AcGePoint3d';
|
12
|
+
export * from './AcGeQuaternion';
|
13
|
+
export * from './AcGeEuler';
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
export * from './AcGeMatrix2d';
|
2
|
+
export * from './AcGeMatrix3d';
|
3
|
+
export * from './AcGeBox3d';
|
4
|
+
export * from './AcGeBox2d';
|
5
|
+
export * from './AcGeVector';
|
6
|
+
export * from './AcGeVector2d';
|
7
|
+
export * from './AcGeVector3d';
|
8
|
+
export * from './AcGePlane';
|
9
|
+
export * from './AcGePoint';
|
10
|
+
export * from './AcGePoint2d';
|
11
|
+
export * from './AcGePoint3d';
|
12
|
+
export * from './AcGeQuaternion';
|
13
|
+
export * from './AcGeEuler';
|
14
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { AcGePoint2dLike, AcGePoint3dLike } from '../math';
|
2
|
+
/**
|
3
|
+
* Floating point comparison tolerance.
|
4
|
+
* Default value is 0.000001 (10e-6)
|
5
|
+
*/
|
6
|
+
export declare const FLOAT_TOL: number;
|
7
|
+
/**
|
8
|
+
* 2 * Math.PI
|
9
|
+
*/
|
10
|
+
export declare const TAU: number;
|
11
|
+
/**
|
12
|
+
* 2d origin point
|
13
|
+
*/
|
14
|
+
export declare const ORIGIN_POINT_2D: AcGePoint2dLike;
|
15
|
+
/**
|
16
|
+
* 3d origin point
|
17
|
+
*/
|
18
|
+
export declare const ORIGIN_POINT_3D: AcGePoint3dLike;
|
19
|
+
//# sourceMappingURL=AcGeConstants.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeConstants.d.ts","sourceRoot":"","sources":["../../src/util/AcGeConstants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE1D;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAiB,CAAA;AAEzC;;GAEG;AACH,eAAO,MAAM,GAAG,QAAc,CAAA;AAE9B;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAG7B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,eAI7B,CAAA"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
/**
|
2
|
+
* Floating point comparison tolerance.
|
3
|
+
* Default value is 0.000001 (10e-6)
|
4
|
+
*/
|
5
|
+
export var FLOAT_TOL = 0.000001;
|
6
|
+
/**
|
7
|
+
* 2 * Math.PI
|
8
|
+
*/
|
9
|
+
export var TAU = 2 * Math.PI;
|
10
|
+
/**
|
11
|
+
* 2d origin point
|
12
|
+
*/
|
13
|
+
export var ORIGIN_POINT_2D = {
|
14
|
+
x: 0,
|
15
|
+
y: 0
|
16
|
+
};
|
17
|
+
/**
|
18
|
+
* 3d origin point
|
19
|
+
*/
|
20
|
+
export var ORIGIN_POINT_3D = {
|
21
|
+
x: 0,
|
22
|
+
y: 0,
|
23
|
+
z: 0
|
24
|
+
};
|
25
|
+
//# sourceMappingURL=AcGeConstants.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeConstants.js","sourceRoot":"","sources":["../../src/util/AcGeConstants.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,CAAC,IAAM,SAAS,GAAW,QAAQ,CAAA;AAEzC;;GAEG;AACH,MAAM,CAAC,IAAM,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;AAE9B;;GAEG;AACH,MAAM,CAAC,IAAM,eAAe,GAAoB;IAC9C,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACL,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,IAAM,eAAe,GAAoB;IAC9C,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACL,CAAA"}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { AcGePoint2dLike } from '../math';
|
2
|
+
/**
|
3
|
+
* Determine if the 2d point is inside the polygon
|
4
|
+
* @param point 2d point to check whether it is in the specified polygon
|
5
|
+
* @param polygon an polygon consisted by 2d point array
|
6
|
+
* @param includeOnSide if ture, return true if the specified point is inside the polygon or the polygon border.
|
7
|
+
* @returns Return true if the 2d point is inside the polygon
|
8
|
+
*/
|
9
|
+
declare function isPointInPolygon(point: AcGePoint2dLike, polygon: AcGePoint2dLike[], includeOnSide?: boolean): boolean;
|
10
|
+
declare function isPolygonIntersect(polygon1: AcGePoint2dLike[], polygon2: AcGePoint2dLike[]): boolean;
|
11
|
+
declare const AcGeGeometryUtil: {
|
12
|
+
isPointInPolygon: typeof isPointInPolygon;
|
13
|
+
isPolygonIntersect: typeof isPolygonIntersect;
|
14
|
+
};
|
15
|
+
export { isPointInPolygon, isPolygonIntersect, AcGeGeometryUtil };
|
16
|
+
//# sourceMappingURL=AcGeGeometryUtil.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeGeometryUtil.d.ts","sourceRoot":"","sources":["../../src/util/AcGeGeometryUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,eAAe,EAAE,MAAM,SAAS,CAAA;AAGpD;;;;;;GAMG;AACH,iBAAS,gBAAgB,CACvB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,eAAe,EAAE,EAC1B,aAAa,UAAQ,WAqBtB;AAED,iBAAS,kBAAkB,CACzB,QAAQ,EAAE,eAAe,EAAE,EAC3B,QAAQ,EAAE,eAAe,EAAE,WA4B5B;AAED,QAAA,MAAM,gBAAgB;;;CAGrB,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAA"}
|
@@ -0,0 +1,56 @@
|
|
1
|
+
import { AcGeBox2d } from '../math';
|
2
|
+
import { DEFAULT_TOL } from './AcGeTol';
|
3
|
+
/**
|
4
|
+
* Determine if the 2d point is inside the polygon
|
5
|
+
* @param point 2d point to check whether it is in the specified polygon
|
6
|
+
* @param polygon an polygon consisted by 2d point array
|
7
|
+
* @param includeOnSide if ture, return true if the specified point is inside the polygon or the polygon border.
|
8
|
+
* @returns Return true if the 2d point is inside the polygon
|
9
|
+
*/
|
10
|
+
function isPointInPolygon(point, polygon, includeOnSide) {
|
11
|
+
if (includeOnSide === void 0) { includeOnSide = false; }
|
12
|
+
var x = point.x, y = point.y;
|
13
|
+
var inside = false;
|
14
|
+
var len = polygon.length;
|
15
|
+
for (var i = 0, j = len - 1; i < len; j = i++) {
|
16
|
+
var xi = polygon[i].x, yi = polygon[i].y;
|
17
|
+
var xj = polygon[j].x, yj = polygon[j].y;
|
18
|
+
var isInSide = yi > y !== yj > y;
|
19
|
+
if (includeOnSide) {
|
20
|
+
isInSide = yi >= y !== yj >= y;
|
21
|
+
}
|
22
|
+
var intersect = isInSide && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;
|
23
|
+
if (intersect) {
|
24
|
+
inside = !inside;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
return inside;
|
28
|
+
}
|
29
|
+
function isPolygonIntersect(polygon1, polygon2) {
|
30
|
+
if (polygon1.length === 0 || polygon2.length === 0) {
|
31
|
+
return false;
|
32
|
+
}
|
33
|
+
// fast exclude
|
34
|
+
var tempBox1 = new AcGeBox2d().setFromPoints(polygon1);
|
35
|
+
var tempBox2 = new AcGeBox2d().setFromPoints(polygon2);
|
36
|
+
if (!tempBox1.intersectsBox(tempBox2)) {
|
37
|
+
return false;
|
38
|
+
}
|
39
|
+
for (var i = 0; i < polygon1.length;) {
|
40
|
+
if (isPointInPolygon(polygon1[i], polygon2, true)) {
|
41
|
+
return true;
|
42
|
+
}
|
43
|
+
if (i < polygon1.length - 1 &&
|
44
|
+
DEFAULT_TOL.equalPoint2d(polygon1[i + 1], polygon1[i])) {
|
45
|
+
++i;
|
46
|
+
}
|
47
|
+
++i;
|
48
|
+
}
|
49
|
+
return false;
|
50
|
+
}
|
51
|
+
var AcGeGeometryUtil = {
|
52
|
+
isPointInPolygon: isPointInPolygon,
|
53
|
+
isPolygonIntersect: isPolygonIntersect
|
54
|
+
};
|
55
|
+
export { isPointInPolygon, isPolygonIntersect, AcGeGeometryUtil };
|
56
|
+
//# sourceMappingURL=AcGeGeometryUtil.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeGeometryUtil.js","sourceRoot":"","sources":["../../src/util/AcGeGeometryUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAmB,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAEvC;;;;;;GAMG;AACH,SAAS,gBAAgB,CACvB,KAAsB,EACtB,OAA0B,EAC1B,aAAqB;IAArB,8BAAA,EAAA,qBAAqB;IAErB,IAAM,CAAC,GAAG,KAAK,CAAC,CAAC,EACf,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;IACb,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,IAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAA;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QAC9C,IAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EACrB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnB,IAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EACrB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,QAAQ,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QAChC,IAAI,aAAa,EAAE,CAAC;YAClB,QAAQ,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAChC,CAAC;QACD,IAAM,SAAS,GAAG,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAA;QACzE,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,GAAG,CAAC,MAAM,CAAA;QAClB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,kBAAkB,CACzB,QAA2B,EAC3B,QAA2B;IAE3B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,eAAe;IACf,IAAM,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IACxD,IAAM,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IACxD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAI,CAAC;QACtC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,CAAC;YAClD,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IACE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;YACvB,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EACtD,CAAC;YACD,EAAE,CAAC,CAAA;QACL,CAAC;QACD,EAAE,CAAC,CAAA;IACL,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,IAAM,gBAAgB,GAAG;IACvB,gBAAgB,EAAE,gBAAgB;IAClC,kBAAkB,EAAE,kBAAkB;CACvC,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAA"}
|
@@ -0,0 +1,203 @@
|
|
1
|
+
declare const DEG2RAD: number;
|
2
|
+
declare const RAD2DEG: number;
|
3
|
+
/**
|
4
|
+
* Generate a UUID (universally unique identifier).
|
5
|
+
* http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/21963136#21963136
|
6
|
+
* @returns Return a UUID
|
7
|
+
*/
|
8
|
+
declare function generateUUID(): string;
|
9
|
+
/**
|
10
|
+
* Clamp the value to be between min and max.
|
11
|
+
* @param value Input value to be clamped
|
12
|
+
* @param min Input minimum value
|
13
|
+
* @param max Input maximum value
|
14
|
+
* @returns Return clamped value between min and max
|
15
|
+
*/
|
16
|
+
declare function clamp(value: number, min: number, max: number): number;
|
17
|
+
/**
|
18
|
+
* Computes the Euclidean modulo of m % n, that is: ((n % m) + m) % m
|
19
|
+
* https://en.wikipedia.org/wiki/Modulo_operation
|
20
|
+
* @param n Input one integer
|
21
|
+
* @param m Input one integer
|
22
|
+
* @returns Return the Euclidean modulo of m % n
|
23
|
+
*/
|
24
|
+
declare function euclideanModulo(n: number, m: number): number;
|
25
|
+
/**
|
26
|
+
* Linear mapping of x from range [a1, a2] to range [b1, b2].
|
27
|
+
* @param x Input value to be mapped.
|
28
|
+
* @param a1 Input minimum value for range A.
|
29
|
+
* @param a2 Input maximum value for range A.
|
30
|
+
* @param b1 Input minimum value for range B.
|
31
|
+
* @param b2 Input maximum value for range B.
|
32
|
+
* @returns Return linear mapping of x from range [a1, a2] to range [b1, b2]
|
33
|
+
*/
|
34
|
+
declare function mapLinear(x: number, a1: number, a2: number, b1: number, b2: number): number;
|
35
|
+
/**
|
36
|
+
* Return the percentage in the closed interval [0, 1] of the given value between the start and end point.
|
37
|
+
* https://www.gamedev.net/tutorials/programming/general-and-gameplay-programming/inverse-lerp-a-super-useful-yet-often-overlooked-function-r5230/
|
38
|
+
* @param x Input start point
|
39
|
+
* @param y Input end point
|
40
|
+
* @param value Input a value between start and end
|
41
|
+
* @returns Return the percentage in the closed interval [0, 1] of the given value between the start and end point.
|
42
|
+
*/
|
43
|
+
declare function inverseLerp(x: number, y: number, value: number): number;
|
44
|
+
/**
|
45
|
+
* Returns a value linearly interpolated from two known points based on the given interval - t = 0 will
|
46
|
+
* return x and t = 1 will return y.
|
47
|
+
* https://en.wikipedia.org/wiki/Linear_interpolation
|
48
|
+
* @param x Input start point
|
49
|
+
* @param y Input end point
|
50
|
+
* @param t Input interpolation factor in the closed interval [0, 1]
|
51
|
+
* @returns Return a value linearly interpolated from two known points
|
52
|
+
*/
|
53
|
+
declare function lerp(x: number, y: number, t: number): number;
|
54
|
+
/**
|
55
|
+
* Smoothly interpolate a number from x toward y in a spring-like manner using the dt to maintain frame
|
56
|
+
* rate independent movement. For details, see Frame rate independent damping using lerp.
|
57
|
+
* http://www.rorydriscoll.com/2016/03/07/frame-rate-independent-damping-using-lerp/
|
58
|
+
* @param x Input current point.
|
59
|
+
* @param y Input target point.
|
60
|
+
* @param lambda A higher lambda value will make the movement more sudden, and a lower value will make
|
61
|
+
* the movement more gradual.
|
62
|
+
* @param dt Input delta time in seconds.
|
63
|
+
* @returns Return a number from x toward y
|
64
|
+
*/
|
65
|
+
declare function damp(x: number, y: number, lambda: number, dt: number): number;
|
66
|
+
/**
|
67
|
+
* Return a value that alternates between 0 and length.
|
68
|
+
* https://www.desmos.com/calculator/vcsjnyz7x4
|
69
|
+
* @param x Input the value to pingpong.
|
70
|
+
* @param length The positive value the function will pingpong to. Default is 1.
|
71
|
+
* @returns Return a value that alternates between 0 and length : Float.
|
72
|
+
*/
|
73
|
+
declare function pingpong(x: number, length?: number): number;
|
74
|
+
/**
|
75
|
+
* Return a value between 0-1. A variation on smoothstep that has zero 1st and 2nd order derivatives
|
76
|
+
* at x=0 and x=1.
|
77
|
+
* http://en.wikipedia.org/wiki/Smoothstep
|
78
|
+
* @param x Input the value to evaluate based on its position between min and max.
|
79
|
+
* @param min Any x value below min will be 0.
|
80
|
+
* @param max Any x value above max will be 1.
|
81
|
+
* @returns Return a value between 0-1
|
82
|
+
*/
|
83
|
+
declare function smoothstep(x: number, min: number, max: number): number;
|
84
|
+
/**
|
85
|
+
* Return a value between 0-1. A variation on smoothstep that has zero 1st and 2nd order derivatives
|
86
|
+
* at x=0 and x=1.
|
87
|
+
* @param x Input the value to evaluate based on its position between min and max.
|
88
|
+
* @param min Any x value below min will be 0.
|
89
|
+
* @param max Any x value above max will be 1.
|
90
|
+
* @returns Return a value between 0-1
|
91
|
+
*/
|
92
|
+
declare function smootherstep(x: number, min: number, max: number): number;
|
93
|
+
/**
|
94
|
+
* Random integer in the interval [low, high].
|
95
|
+
* @param low Input interval lower boundary value
|
96
|
+
* @param high Input interval upper boundary value
|
97
|
+
* @returns Return random integer in the interval [low, high].
|
98
|
+
*/
|
99
|
+
declare function randInt(low: number, high: number): number;
|
100
|
+
/**
|
101
|
+
* Random float in the interval [low, high].
|
102
|
+
* @param low Input interval lower boundary value
|
103
|
+
* @param high Input interval upper boundary value
|
104
|
+
* @returns Return random float in the interval [low, high]
|
105
|
+
*/
|
106
|
+
declare function randFloat(low: number, high: number): number;
|
107
|
+
/**
|
108
|
+
* Random float in the interval [- range / 2, range / 2].
|
109
|
+
* @param range Input interval range value
|
110
|
+
* @returns Return random float in the interval [- range / 2, range / 2].
|
111
|
+
*/
|
112
|
+
declare function randFloatSpread(range: number): number;
|
113
|
+
/**
|
114
|
+
* Deterministic pseudo-random float in the interval [0, 1]. The integer seed is optional.
|
115
|
+
* @param s Input one integer seed number
|
116
|
+
* @returns Return pseudo-random float in the interval [0, 1]
|
117
|
+
*/
|
118
|
+
declare function seededRandom(s: number): number;
|
119
|
+
/**
|
120
|
+
* Convert degrees to radians.
|
121
|
+
* @param degrees Input degrees value to be converted
|
122
|
+
* @returns Return converted angle value in radians
|
123
|
+
*/
|
124
|
+
declare function degToRad(degrees: number): number;
|
125
|
+
/**
|
126
|
+
* Convert radians to degrees.
|
127
|
+
* @param radians Input radians value to be converted
|
128
|
+
* @returns Return converted angle value in degrees
|
129
|
+
*/
|
130
|
+
declare function radToDeg(radians: number): number;
|
131
|
+
/**
|
132
|
+
* Return true if n is a power of 2.
|
133
|
+
* @param value Input the number to check
|
134
|
+
* @returns Return true if n is a power of 2.
|
135
|
+
*/
|
136
|
+
declare function isPowerOfTwo(value: number): boolean;
|
137
|
+
/**
|
138
|
+
* Return the smallest power of 2 that is greater than or equal to n.
|
139
|
+
* @param value Input one number
|
140
|
+
* @returns Return the smallest power of 2 that is greater than or equal to n.
|
141
|
+
*/
|
142
|
+
declare function ceilPowerOfTwo(value: number): number;
|
143
|
+
/**
|
144
|
+
* Return the largest power of 2 that is less than or equal to n.
|
145
|
+
* @param value Input one number
|
146
|
+
* @returns Return the largest power of 2 that is less than or equal to n.
|
147
|
+
*/
|
148
|
+
declare function floorPowerOfTwo(value: number): number;
|
149
|
+
/**
|
150
|
+
* Normalize one angle in radian to value in range 0 to 2*PI
|
151
|
+
* @param angle Input one angle value in radians
|
152
|
+
* @returns Return normalized angle value in radians
|
153
|
+
*/
|
154
|
+
declare function normalizeAngle(angle: number): number;
|
155
|
+
/**
|
156
|
+
* Return true if the valueToTest is between (value1, value2) or (value2, value1)
|
157
|
+
* @param valueToTest Input value to test
|
158
|
+
* @param value1 Input the first value
|
159
|
+
* @param value2 Input the second value
|
160
|
+
* @returns Return true if if the valueToTest is between (value1, value2) or (value2, value1).
|
161
|
+
*/
|
162
|
+
declare function isBetween(valueToTest: number, value1: number, value2: number): boolean;
|
163
|
+
/**
|
164
|
+
* Return true if the algleToTest is between startAngle and endAngle
|
165
|
+
* @param angleToTest Input angle to test
|
166
|
+
* @param startAngle Input start angle
|
167
|
+
* @param endAngle Input end angle
|
168
|
+
* @param clockwise Input rotation direction from start angle to end angle
|
169
|
+
* @returns Return true if the algleToTest is between startAngle and endAngle
|
170
|
+
*/
|
171
|
+
declare function isBetweenAngle(angleToTest: number, startAngle: number, endAngle: number, clockwise?: boolean): boolean;
|
172
|
+
declare function intPartLength(num: number): number;
|
173
|
+
declare function relativeEps(num: number, epsilon?: number): number;
|
174
|
+
declare const AcGeMathUtil: {
|
175
|
+
DEG2RAD: number;
|
176
|
+
RAD2DEG: number;
|
177
|
+
generateUUID: typeof generateUUID;
|
178
|
+
clamp: typeof clamp;
|
179
|
+
euclideanModulo: typeof euclideanModulo;
|
180
|
+
mapLinear: typeof mapLinear;
|
181
|
+
inverseLerp: typeof inverseLerp;
|
182
|
+
lerp: typeof lerp;
|
183
|
+
damp: typeof damp;
|
184
|
+
pingpong: typeof pingpong;
|
185
|
+
smoothstep: typeof smoothstep;
|
186
|
+
smootherstep: typeof smootherstep;
|
187
|
+
randInt: typeof randInt;
|
188
|
+
randFloat: typeof randFloat;
|
189
|
+
randFloatSpread: typeof randFloatSpread;
|
190
|
+
seededRandom: typeof seededRandom;
|
191
|
+
degToRad: typeof degToRad;
|
192
|
+
radToDeg: typeof radToDeg;
|
193
|
+
isPowerOfTwo: typeof isPowerOfTwo;
|
194
|
+
ceilPowerOfTwo: typeof ceilPowerOfTwo;
|
195
|
+
floorPowerOfTwo: typeof floorPowerOfTwo;
|
196
|
+
normalizeAngle: typeof normalizeAngle;
|
197
|
+
isBetween: typeof isBetween;
|
198
|
+
isBetweenAngle: typeof isBetweenAngle;
|
199
|
+
intPartLength: typeof intPartLength;
|
200
|
+
relativeEps: typeof relativeEps;
|
201
|
+
};
|
202
|
+
export { DEG2RAD, RAD2DEG, generateUUID, clamp, euclideanModulo, mapLinear, inverseLerp, lerp, damp, pingpong, smoothstep, smootherstep, randInt, randFloat, randFloatSpread, seededRandom, degToRad, radToDeg, isPowerOfTwo, ceilPowerOfTwo, floorPowerOfTwo, normalizeAngle, isBetween, isBetweenAngle, intPartLength, relativeEps, AcGeMathUtil };
|
203
|
+
//# sourceMappingURL=AcGeMathUtil.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeMathUtil.d.ts","sourceRoot":"","sources":["../../src/util/AcGeMathUtil.ts"],"names":[],"mappings":"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"}
|