@ntf/math 1.1.3 → 1.3.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.
Files changed (125) hide show
  1. package/dist/index.cjs +2536 -0
  2. package/dist/index.d.cts +738 -0
  3. package/dist/index.d.mts +738 -0
  4. package/dist/index.mjs +2489 -0
  5. package/package.json +19 -12
  6. package/dist/cjs/algebra/function.js +0 -7
  7. package/dist/cjs/algebra/function.js.map +0 -1
  8. package/dist/cjs/algebra/linear.js +0 -42
  9. package/dist/cjs/algebra/linear.js.map +0 -1
  10. package/dist/cjs/algebra/quad.js +0 -53
  11. package/dist/cjs/algebra/quad.js.map +0 -1
  12. package/dist/cjs/color.js +0 -232
  13. package/dist/cjs/color.js.map +0 -1
  14. package/dist/cjs/common/error.js +0 -14
  15. package/dist/cjs/common/error.js.map +0 -1
  16. package/dist/cjs/common/sign.js +0 -14
  17. package/dist/cjs/common/sign.js.map +0 -1
  18. package/dist/cjs/common/types.js +0 -77
  19. package/dist/cjs/common/types.js.map +0 -1
  20. package/dist/cjs/geometry/angle.js +0 -11
  21. package/dist/cjs/geometry/angle.js.map +0 -1
  22. package/dist/cjs/geometry/bbox.js +0 -87
  23. package/dist/cjs/geometry/bbox.js.map +0 -1
  24. package/dist/cjs/geometry/circle.js +0 -64
  25. package/dist/cjs/geometry/circle.js.map +0 -1
  26. package/dist/cjs/geometry/object.js +0 -3
  27. package/dist/cjs/geometry/object.js.map +0 -1
  28. package/dist/cjs/geometry/rectangle.js +0 -83
  29. package/dist/cjs/geometry/rectangle.js.map +0 -1
  30. package/dist/cjs/geometry/square.js +0 -66
  31. package/dist/cjs/geometry/square.js.map +0 -1
  32. package/dist/cjs/geometry/triangle.js +0 -65
  33. package/dist/cjs/geometry/triangle.js.map +0 -1
  34. package/dist/cjs/index.js +0 -59
  35. package/dist/cjs/index.js.map +0 -1
  36. package/dist/cjs/matrices/mat3.js +0 -184
  37. package/dist/cjs/matrices/mat3.js.map +0 -1
  38. package/dist/cjs/matrices/mat4.js +0 -275
  39. package/dist/cjs/matrices/mat4.js.map +0 -1
  40. package/dist/cjs/quaternion.js +0 -196
  41. package/dist/cjs/quaternion.js.map +0 -1
  42. package/dist/cjs/vectors/vec2.js +0 -154
  43. package/dist/cjs/vectors/vec2.js.map +0 -1
  44. package/dist/cjs/vectors/vec3.js +0 -161
  45. package/dist/cjs/vectors/vec3.js.map +0 -1
  46. package/dist/esm/algebra/function.js +0 -3
  47. package/dist/esm/algebra/function.js.map +0 -1
  48. package/dist/esm/algebra/linear.js +0 -38
  49. package/dist/esm/algebra/linear.js.map +0 -1
  50. package/dist/esm/algebra/quad.js +0 -49
  51. package/dist/esm/algebra/quad.js.map +0 -1
  52. package/dist/esm/color.js +0 -226
  53. package/dist/esm/color.js.map +0 -1
  54. package/dist/esm/common/error.js +0 -10
  55. package/dist/esm/common/error.js.map +0 -1
  56. package/dist/esm/common/sign.js +0 -10
  57. package/dist/esm/common/sign.js.map +0 -1
  58. package/dist/esm/common/types.js +0 -65
  59. package/dist/esm/common/types.js.map +0 -1
  60. package/dist/esm/geometry/angle.js +0 -5
  61. package/dist/esm/geometry/angle.js.map +0 -1
  62. package/dist/esm/geometry/bbox.js +0 -83
  63. package/dist/esm/geometry/bbox.js.map +0 -1
  64. package/dist/esm/geometry/circle.js +0 -60
  65. package/dist/esm/geometry/circle.js.map +0 -1
  66. package/dist/esm/geometry/object.js +0 -2
  67. package/dist/esm/geometry/object.js.map +0 -1
  68. package/dist/esm/geometry/rectangle.js +0 -79
  69. package/dist/esm/geometry/rectangle.js.map +0 -1
  70. package/dist/esm/geometry/square.js +0 -62
  71. package/dist/esm/geometry/square.js.map +0 -1
  72. package/dist/esm/geometry/triangle.js +0 -59
  73. package/dist/esm/geometry/triangle.js.map +0 -1
  74. package/dist/esm/index.js +0 -40
  75. package/dist/esm/index.js.map +0 -1
  76. package/dist/esm/matrices/mat3.js +0 -180
  77. package/dist/esm/matrices/mat3.js.map +0 -1
  78. package/dist/esm/matrices/mat4.js +0 -271
  79. package/dist/esm/matrices/mat4.js.map +0 -1
  80. package/dist/esm/quaternion.js +0 -192
  81. package/dist/esm/quaternion.js.map +0 -1
  82. package/dist/esm/vectors/vec2.js +0 -150
  83. package/dist/esm/vectors/vec2.js.map +0 -1
  84. package/dist/esm/vectors/vec3.js +0 -157
  85. package/dist/esm/vectors/vec3.js.map +0 -1
  86. package/dist/types/algebra/function.d.ts +0 -6
  87. package/dist/types/algebra/function.d.ts.map +0 -1
  88. package/dist/types/algebra/linear.d.ts +0 -14
  89. package/dist/types/algebra/linear.d.ts.map +0 -1
  90. package/dist/types/algebra/quad.d.ts +0 -18
  91. package/dist/types/algebra/quad.d.ts.map +0 -1
  92. package/dist/types/color.d.ts +0 -87
  93. package/dist/types/color.d.ts.map +0 -1
  94. package/dist/types/common/error.d.ts +0 -6
  95. package/dist/types/common/error.d.ts.map +0 -1
  96. package/dist/types/common/sign.d.ts +0 -2
  97. package/dist/types/common/sign.d.ts.map +0 -1
  98. package/dist/types/common/types.d.ts +0 -26
  99. package/dist/types/common/types.d.ts.map +0 -1
  100. package/dist/types/geometry/angle.d.ts +0 -5
  101. package/dist/types/geometry/angle.d.ts.map +0 -1
  102. package/dist/types/geometry/bbox.d.ts +0 -35
  103. package/dist/types/geometry/bbox.d.ts.map +0 -1
  104. package/dist/types/geometry/circle.d.ts +0 -26
  105. package/dist/types/geometry/circle.d.ts.map +0 -1
  106. package/dist/types/geometry/object.d.ts +0 -5
  107. package/dist/types/geometry/object.d.ts.map +0 -1
  108. package/dist/types/geometry/rectangle.d.ts +0 -31
  109. package/dist/types/geometry/rectangle.d.ts.map +0 -1
  110. package/dist/types/geometry/square.d.ts +0 -27
  111. package/dist/types/geometry/square.d.ts.map +0 -1
  112. package/dist/types/geometry/triangle.d.ts +0 -42
  113. package/dist/types/geometry/triangle.d.ts.map +0 -1
  114. package/dist/types/index.d.ts +0 -23
  115. package/dist/types/index.d.ts.map +0 -1
  116. package/dist/types/matrices/mat3.d.ts +0 -58
  117. package/dist/types/matrices/mat3.d.ts.map +0 -1
  118. package/dist/types/matrices/mat4.d.ts +0 -85
  119. package/dist/types/matrices/mat4.d.ts.map +0 -1
  120. package/dist/types/quaternion.d.ts +0 -49
  121. package/dist/types/quaternion.d.ts.map +0 -1
  122. package/dist/types/vectors/vec2.d.ts +0 -56
  123. package/dist/types/vectors/vec2.d.ts.map +0 -1
  124. package/dist/types/vectors/vec3.d.ts +0 -55
  125. package/dist/types/vectors/vec3.d.ts.map +0 -1
package/package.json CHANGED
@@ -1,13 +1,23 @@
1
1
  {
2
2
  "name": "@ntf/math",
3
- "version": "1.1.3",
3
+ "version": "1.3.0",
4
4
  "description": "Another math library",
5
5
  "files": [
6
6
  "dist"
7
7
  ],
8
- "main": "./dist/cjs/index.js",
9
- "module": "./dist/esm/index.js",
10
- "types": "./dist/types/index.d.ts",
8
+ "main": "./dist/index.cjs",
9
+ "module": "./dist/index.mjs",
10
+ "types": "./dist/index.d.cts",
11
+ "exports": {
12
+ "require": {
13
+ "types": "./dist/index.d.cts",
14
+ "default": "./dist/index.cjs"
15
+ },
16
+ "import": {
17
+ "types": "./dist/index.d.mts",
18
+ "default": "./dist/index.mjs"
19
+ }
20
+ },
11
21
  "repository": {
12
22
  "type": "git",
13
23
  "url": "git+https://github.com/N1ghtTheF0x/ntf-math.git"
@@ -30,15 +40,12 @@
30
40
  "homepage": "https://github.com/N1ghtTheF0x/ntf-math#readme",
31
41
  "devDependencies": {
32
42
  "typescript": "latest",
33
- "ts-node": "latest",
34
- "express": "latest"
43
+ "tsx": "latest",
44
+ "express": "latest",
45
+ "pkgroll": "latest"
35
46
  },
36
47
  "scripts": {
37
- "test": "ts-node --project tsconfig.test.json test.ts",
38
- "build:cjs": "tsc --build tsconfig.cjs.json",
39
- "build:esm": "tsc --build tsconfig.esm.json",
40
- "build": "npm run build:cjs && npm run build:esm",
41
- "fix-esm-imports": "node fix-esm-imports.mjs dist/esm",
42
- "postbuild:esm": "npm run fix-esm-imports"
48
+ "test": "tsx --project tsconfig.test.json test.ts",
49
+ "build": "pkgroll --src source"
43
50
  }
44
51
  }
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MathFunction = void 0;
4
- class MathFunction {
5
- }
6
- exports.MathFunction = MathFunction;
7
- //# sourceMappingURL=function.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"function.js","sourceRoot":"","sources":["../../../source/algebra/function.ts"],"names":[],"mappings":";;;AAEA,MAAsB,YAAY;CAIjC;AAJD,oCAIC"}
@@ -1,42 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LinearFunction = void 0;
4
- const sign_1 = require("../common/sign");
5
- const vec2_1 = require("../vectors/vec2");
6
- const function_1 = require("./function");
7
- class LinearFunction extends function_1.MathFunction {
8
- m;
9
- b;
10
- static get(m, b, x) {
11
- return new this(m, b).get(x);
12
- }
13
- static fromPoints(a, b) {
14
- const veca = vec2_1.Vec2.resolve(a);
15
- const vecb = vec2_1.Vec2.resolve(b);
16
- const m = (vecb.y - veca.y) / (vecb.x - veca.x);
17
- const h = -m * veca.x + veca.y;
18
- return new this(m, h);
19
- }
20
- constructor(m, b) {
21
- super();
22
- this.m = m;
23
- this.b = b;
24
- }
25
- get(x) {
26
- return this.m;
27
- }
28
- roots() {
29
- const x = -(this.b) / this.m;
30
- if (!isNaN(x))
31
- return [new vec2_1.Vec2(x)];
32
- return [];
33
- }
34
- toString() {
35
- const bsign = (0, sign_1.sign_char)(this.b);
36
- if (bsign)
37
- return `f(x) = ${this.m} * x ${bsign} ${Math.abs(this.b)}`;
38
- return `f(x) = ${this.m} * x`;
39
- }
40
- }
41
- exports.LinearFunction = LinearFunction;
42
- //# sourceMappingURL=linear.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linear.js","sourceRoot":"","sources":["../../../source/algebra/linear.ts"],"names":[],"mappings":";;;AAAA,yCAA0C;AAC1C,0CAAgD;AAChD,yCAAyC;AAIzC,MAAa,cAAe,SAAQ,uBAAsB;IAc5B;IAAiB;IAZpC,MAAM,CAAC,GAAG,CAAC,CAAS,EAAC,CAAS,EAAC,CAAS;QAE3C,OAAO,IAAI,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC/B,CAAC;IACM,MAAM,CAAC,UAAU,CAAC,CAAW,EAAC,CAAW;QAE5C,MAAM,IAAI,GAAG,WAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,WAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5B,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAA;QAC1B,OAAO,IAAI,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;IACxB,CAAC;IACD,YAA0B,CAAS,EAAQ,CAAS;QAEhD,KAAK,EAAE,CAAA;QAFe,MAAC,GAAD,CAAC,CAAQ;QAAQ,MAAC,GAAD,CAAC,CAAQ;IAGpD,CAAC;IACM,GAAG,CAAC,CAAS;QAEhB,OAAO,IAAI,CAAC,CAAC,CAAA;IACjB,CAAC;IACM,KAAK;QAER,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAA;QAC1B,IAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACR,OAAO,CAAC,IAAI,WAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACxB,OAAO,EAAE,CAAA;IACb,CAAC;IACM,QAAQ;QAEX,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAG,KAAK;YACJ,OAAO,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;QAC9D,OAAO,UAAU,IAAI,CAAC,CAAC,MAAM,CAAA;IACjC,CAAC;CACJ;AApCD,wCAoCC"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QuadFunction = void 0;
4
- const sign_1 = require("../common/sign");
5
- const vec2_1 = require("../vectors/vec2");
6
- const function_1 = require("./function");
7
- class QuadFunction extends function_1.MathFunction {
8
- a;
9
- b;
10
- c;
11
- static get(a, b, c, x) {
12
- return new this(a, b, c).get(x);
13
- }
14
- constructor(a, b, c) {
15
- super();
16
- this.a = a;
17
- this.b = b;
18
- this.c = c;
19
- if (a == 0)
20
- throw new Error("'a' cannot be 0");
21
- }
22
- get(x) {
23
- return this.a * x * x + this.b * x + this.c;
24
- }
25
- roots() {
26
- const roots = new Array;
27
- const discriminant = this.b * this.b - 4 * this.a * this.c;
28
- const n0 = (-this.b + Math.sqrt(discriminant)) / (2 * this.a);
29
- const n1 = (-this.b + Math.sqrt(discriminant)) / (2 * this.a);
30
- if (!isNaN(n0))
31
- roots.push(new vec2_1.Vec2(n0));
32
- if (!isNaN(n1) && n0 != n1)
33
- roots.push(new vec2_1.Vec2(n1));
34
- return roots;
35
- }
36
- toString(type = "standard") {
37
- switch (type) {
38
- default:
39
- case "standard":
40
- {
41
- const bsign = (0, sign_1.sign_char)(this.b);
42
- const csign = (0, sign_1.sign_char)(this.c);
43
- if (bsign && csign)
44
- return `f(x) = ${this.a}x^2 ${bsign} ${Math.abs(this.b)}x ${csign} ${Math.abs(this.c)}`;
45
- if (bsign)
46
- return `f(x) = ${this.a}x^2 ${bsign} ${Math.abs(this.b)}x`;
47
- return `f(x) = ${this.a}x^2`;
48
- }
49
- }
50
- }
51
- }
52
- exports.QuadFunction = QuadFunction;
53
- //# sourceMappingURL=quad.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"quad.js","sourceRoot":"","sources":["../../../source/algebra/quad.ts"],"names":[],"mappings":";;;AAAA,yCAA0C;AAC1C,0CAAgD;AAChD,yCAAyC;AAQzC,MAAa,YAAa,SAAQ,uBAAsB;IAM1B;IAAiB;IAAiB;IAJrD,MAAM,CAAC,GAAG,CAAC,CAAS,EAAC,CAAS,EAAC,CAAS,EAAC,CAAS;QAErD,OAAO,IAAI,IAAI,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC;IACD,YAA0B,CAAS,EAAQ,CAAS,EAAQ,CAAS;QAEjE,KAAK,EAAE,CAAA;QAFe,MAAC,GAAD,CAAC,CAAQ;QAAQ,MAAC,GAAD,CAAC,CAAQ;QAAQ,MAAC,GAAD,CAAC,CAAQ;QAGjE,IAAG,CAAC,IAAI,CAAC;YACL,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAC1C,CAAC;IACM,GAAG,CAAC,CAAS;QAEhB,OAAO,IAAI,CAAC,CAAC,GAAC,CAAC,GAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IACzC,CAAC;IACM,KAAK;QAER,MAAM,KAAK,GAAG,IAAI,KAAW,CAAA;QAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;QACxD,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAC,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACzD,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAC,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAEzD,IAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACT,KAAK,CAAC,IAAI,CAAC,IAAI,WAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5B,IAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE;YACrB,KAAK,CAAC,IAAI,CAAC,IAAI,WAAI,CAAC,EAAE,CAAC,CAAC,CAAA;QAE5B,OAAO,KAAK,CAAA;IAChB,CAAC;IACM,QAAQ,CAA6B,OAAU,UAAe;QAEjE,QAAO,IAAI,EACX,CAAC;YACG,QAAQ;YACR,KAAK,UAAU;gBACf,CAAC;oBACG,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;oBAC/B,MAAM,KAAK,GAAG,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;oBAC/B,IAAG,KAAK,IAAI,KAAK;wBACb,OAAO,UAAU,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;oBAC3F,IAAG,KAAK;wBACJ,OAAO,UAAU,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAA;oBAC9D,OAAO,UAAU,IAAI,CAAC,CAAC,KAAK,CAAA;gBAChC,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAhDD,oCAgDC"}
package/dist/cjs/color.js DELETED
@@ -1,232 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveColor = exports.HSLColor = exports.RGBAColor = void 0;
4
- const error_1 = require("./common/error");
5
- const types_1 = require("./common/types");
6
- const index_1 = require("./index");
7
- function _hex_to_array(hex) {
8
- if (!(0, types_1.check_hex)(hex))
9
- return undefined;
10
- const part = (0, types_1.get_hex_part)(hex);
11
- const a = parseInt(part.substring(0, 2), 16) / 0xff;
12
- const b = parseInt(part.substring(2, 4), 16) / 0xff;
13
- const c = parseInt(part.substring(4, 6), 16) / 0xff;
14
- const d = part.length == 8 ? parseInt(hex.substring(6, 8), 16) / 0xff : 1;
15
- return [a, b, c, d];
16
- }
17
- function _number_to_rgb(number) {
18
- const blue = number & 0xff;
19
- const green = (number & 0xff00) >>> 8;
20
- const red = (number & 0xff0000) >>> 16;
21
- return [red / 0xff, green / 0xff, blue / 0xff];
22
- }
23
- function _number_to_rgba(number) {
24
- const alpha = number & 0xff;
25
- const blue = (number & 0xff00) >>> 8;
26
- const green = (number & 0xff0000) >>> 16;
27
- const red = (number & 0xff000000) >>> 24;
28
- return [red / 0xff, green / 0xff, blue / 0xff, alpha / 0xff];
29
- }
30
- function _fix_integer(number) {
31
- return number * 0xff | 0;
32
- }
33
- class RGBAColor {
34
- _red;
35
- get red() { return this._red; }
36
- set red(val) { this._red = (0, index_1.clamp)(val, 0, 1); }
37
- _green;
38
- get green() { return this._green; }
39
- set green(val) { this._green = (0, index_1.clamp)(val, 0, 1); }
40
- _blue;
41
- get blue() { return this._blue; }
42
- set blue(val) { this._blue = (0, index_1.clamp)(val, 0, 1); }
43
- _alpha;
44
- get alpha() { return this._alpha; }
45
- set alpha(val) { this._alpha = (0, index_1.clamp)(val, 0, 1); }
46
- static resolve(a) {
47
- if (a == null || typeof a == "undefined")
48
- throw new error_1.ResolveError("RGBAColor", a);
49
- if ((0, types_1.check_number_array)(a, 3) || (0, types_1.check_number_array)(a, 4))
50
- return new this(a[0], a[1], a[2], a[3]);
51
- if ((0, types_1.has_property)(a, "red", "number") && (0, types_1.has_property)(a, "green", "number") && (0, types_1.has_property)(a, "blue", "number"))
52
- return new this(a.red, a.green, a.blue, (0, types_1.has_property)(a, "alpha", "number") ? a.alpha : undefined);
53
- if ((0, types_1.check_number)(a)) {
54
- const hex = a.toString(16);
55
- const convert = hex.length <= 6 ? _number_to_rgb : _number_to_rgba;
56
- return this.resolve(convert(a));
57
- }
58
- if ((0, types_1.check_string)(a)) {
59
- if (a.startsWith("rgb")) {
60
- const hasAlpha = a.startsWith("rgba");
61
- const offset = hasAlpha ? 5 : 4;
62
- const parts = a.substring(offset, a.indexOf(")", offset)).split(",");
63
- if ((0, types_1.check_string_array)(parts, hasAlpha ? 4 : 3))
64
- return this.resolve(parts.map((v) => parseInt(v) / 0xff));
65
- }
66
- const hex = _hex_to_array(a);
67
- if (hex)
68
- return this.resolve(hex);
69
- }
70
- throw new error_1.ResolveError("RGBAColor", a);
71
- }
72
- static is(a) {
73
- try {
74
- this.resolve(a);
75
- }
76
- catch (e) {
77
- return false;
78
- }
79
- return false;
80
- }
81
- constructor(red, green, blue, alpha = 1) {
82
- this._red = (0, index_1.clamp)(red, 0, 1);
83
- this._green = (0, index_1.clamp)(green, 0, 1);
84
- this._blue = (0, index_1.clamp)(blue, 0, 1);
85
- this._alpha = (0, index_1.clamp)(alpha, 0, 1);
86
- }
87
- toArray(withAlpha = false) {
88
- return withAlpha ? [this.red, this.green, this.blue, this.alpha] : (this.alpha == 1 ? [this.red, this.green, this.blue] : this.toArray(true));
89
- }
90
- toJSON(withAlpha = false) {
91
- return withAlpha ? {
92
- red: this.red, green: this.green, blue: this.blue, alpha: this.alpha
93
- } : (this.alpha == 1 ? { red: this.red, green: this.green, blue: this.blue } : this.toJSON(true));
94
- }
95
- toString(withAlpha = false) {
96
- return withAlpha ? `rgba(${_fix_integer(this.red)},${_fix_integer(this.green)},${_fix_integer(this.blue)},${_fix_integer(this.alpha)})` : (this.alpha == 1 ? `rgb(${_fix_integer(this.red)},${_fix_integer(this.green)},${_fix_integer(this.blue)})` : this.toString(true));
97
- }
98
- toHSL(withAlpha = true) {
99
- const red = this.red, green = this.green, blue = this.blue;
100
- const min = Math.min(red, green, blue), max = Math.max(red, green, blue);
101
- const luminace = (min + max) / 2;
102
- if (min == max)
103
- return new HSLColor(0, 0, luminace, withAlpha ? this.alpha : undefined);
104
- const d = max - min;
105
- const saturation = luminace > 0.5 ? d / (2 - max - min) : d / (max + min);
106
- if (max == red)
107
- return new HSLColor(((green - blue) / d + (green < blue ? 6 : 0)) / 6, saturation, luminace);
108
- if (max == green)
109
- return new HSLColor(((blue - red) / d + 2) / 6, saturation, luminace);
110
- if (max == blue)
111
- return new HSLColor(((red - green) / d + 4) / 6, saturation, luminace);
112
- return new HSLColor(0, saturation, luminace, withAlpha ? this.alpha : undefined);
113
- }
114
- invert(withAlpha = false) {
115
- return new RGBAColor(1 - this.red, 1 - this.green, 1 - this.blue, withAlpha ? 1 - this.alpha : this.alpha);
116
- }
117
- }
118
- exports.RGBAColor = RGBAColor;
119
- class HSLColor {
120
- _hue;
121
- get hue() { return this._hue; }
122
- set hue(val) { this._hue = (0, index_1.clamp)(val, 0, 1); }
123
- _saturation;
124
- get saturation() { return this._saturation; }
125
- set saturation(val) { this._saturation = (0, index_1.clamp)(val, 0, 1); }
126
- _luminace;
127
- get luminace() { return this._luminace; }
128
- set luminace(val) { this._luminace = (0, index_1.clamp)(val, 0, 1); }
129
- _alpha;
130
- get alpha() { return this._alpha; }
131
- set alpha(val) { this._alpha = val & 0xff; }
132
- static resolve(a) {
133
- if (a == null || typeof a == "undefined")
134
- throw new error_1.ResolveError("HSLColor", a);
135
- if ((0, types_1.check_number_array)(a, 3) || (0, types_1.check_number_array)(a, 4))
136
- return new this(a[0], a[1], a[2], a[3]);
137
- if ((0, types_1.has_property)(a, "hue", "number") && (0, types_1.has_property)(a, "saturation", "number") && (0, types_1.has_property)(a, "luminace", "number"))
138
- return new this(a.hue, a.saturation, a.luminace, (0, types_1.has_property)(a, "alpha", "number") ? a.alpha : undefined);
139
- if ((0, types_1.check_number)(a)) {
140
- const hex = a.toString(16);
141
- const convert = hex.length <= 6 ? _number_to_rgb : _number_to_rgba;
142
- return this.resolve(convert(a));
143
- }
144
- if ((0, types_1.check_string)(a)) {
145
- if (a.startsWith("hsl")) {
146
- const hasAlpha = a.startsWith("hsla");
147
- const offset = hasAlpha ? 5 : 4;
148
- const parts = a.substring(offset, a.indexOf(")", offset)).split(",");
149
- if ((0, types_1.check_string_array)(parts, hasAlpha ? 4 : 3))
150
- return this.resolve(parts.map((v) => parseInt(v) / 0xff));
151
- }
152
- const hex = _hex_to_array(a);
153
- if (hex)
154
- return this.resolve(hex);
155
- }
156
- throw new error_1.ResolveError("HSLColor", a);
157
- }
158
- static is(a) {
159
- try {
160
- this.resolve(a);
161
- }
162
- catch (e) {
163
- return false;
164
- }
165
- return true;
166
- }
167
- constructor(hue, saturation, luminace, alpha = 0xff) {
168
- this._hue = (0, index_1.clamp)(hue, 0, 1);
169
- this._saturation = (0, index_1.clamp)(saturation, 0, 1);
170
- this._luminace = (0, index_1.clamp)(luminace, 0, 1);
171
- this._alpha = alpha & 0xff;
172
- }
173
- toArray(withAlpha = false) {
174
- return withAlpha ? [this.hue, this.saturation, this.luminace, this.alpha] : (this.alpha == 1 ? [this.hue, this.saturation, this.luminace] : this.toArray(true));
175
- }
176
- toJSON(withAlpha = false) {
177
- return withAlpha ? {
178
- hue: this.hue, saturation: this.saturation, luminace: this.luminace, alpha: this.alpha
179
- } : (this.alpha == 1 ? { hue: this.hue, saturation: this.saturation, luminace: this.luminace } : this.toJSON(true));
180
- }
181
- toString(withAlpha = false) {
182
- return withAlpha ? `hsla(${_fix_integer(this.hue)},${_fix_integer(this.saturation)},${_fix_integer(this.luminace)},${_fix_integer(this.alpha)})` : (this.alpha == 1 ? `hsl(${_fix_integer(this.hue)},${_fix_integer(this.saturation)},${_fix_integer(this.luminace)})` : this.toString(true));
183
- }
184
- toRGB(withAlpha = true) {
185
- if (this.saturation == 0)
186
- return new RGBAColor(this.luminace * 0xff, this.luminace * 0xff, this.luminace * 0xff, withAlpha ? this.alpha : undefined);
187
- const q = this.luminace < 0.5 ? this.luminace * (1 + this.saturation) : this.luminace + this.saturation - this.luminace * this.saturation;
188
- const p = 2 * this.luminace - q;
189
- function _hue_2_rgb(t) {
190
- let _t = t;
191
- if (_t < 0)
192
- _t++;
193
- if (_t > 1)
194
- _t--;
195
- if (_t < 1. / 6)
196
- return p + (q - p) * 6 * _t;
197
- if (_t < 1. / 2)
198
- return q;
199
- if (_t < 2. / 3)
200
- return p + (q - p) * (2. / 3 - _t) * 6;
201
- return p;
202
- }
203
- return new RGBAColor(_hue_2_rgb(this.hue + 1. / 3) * 0xff, _hue_2_rgb(this.hue) * 0xff, _hue_2_rgb(this.hue - 1. / 3) * 0xff, withAlpha ? this.alpha : undefined);
204
- }
205
- invert(withAlpha = false) {
206
- return new HSLColor(1 - this.hue, 1 - this.saturation, 1 - this.luminace, withAlpha ? 1 - this.alpha : this.alpha);
207
- }
208
- }
209
- exports.HSLColor = HSLColor;
210
- function resolveColor(a, preferHSL = false) {
211
- const results = [];
212
- try {
213
- const rgba = RGBAColor.resolve(a);
214
- results.push(rgba);
215
- }
216
- catch (e) { }
217
- try {
218
- const hsla = HSLColor.resolve(a);
219
- results.push(hsla);
220
- }
221
- catch (e) { }
222
- let offset = preferHSL ? 1 : 0;
223
- const firstItem = results[offset];
224
- if (firstItem)
225
- return firstItem;
226
- const secondItem = results[offset + 1];
227
- if (secondItem)
228
- return secondItem;
229
- throw new error_1.ResolveError("Color", a);
230
- }
231
- exports.resolveColor = resolveColor;
232
- //# sourceMappingURL=color.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"color.js","sourceRoot":"","sources":["../../source/color.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ResolveError = void 0;
4
- class ResolveError extends Error {
5
- target;
6
- value;
7
- constructor(target, value) {
8
- super(`can't resolve ${value} to ${target}`);
9
- this.target = target;
10
- this.value = value;
11
- }
12
- }
13
- exports.ResolveError = ResolveError;
14
- //# sourceMappingURL=error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../source/common/error.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAa,SAAQ,KAAK;IAEA;IAA+B;IAAlE,YAAmC,MAAc,EAAiB,KAAc;QAE5E,KAAK,CAAC,iBAAiB,KAAK,OAAO,MAAM,EAAE,CAAC,CAAA;QAFb,WAAM,GAAN,MAAM,CAAQ;QAAiB,UAAK,GAAL,KAAK,CAAS;IAGhF,CAAC;CACJ;AAND,oCAMC"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.sign_char = void 0;
4
- function sign_char(num) {
5
- if (num == 0)
6
- return undefined;
7
- if (num < 0)
8
- return "-";
9
- if (num > 0)
10
- return "+";
11
- return undefined;
12
- }
13
- exports.sign_char = sign_char;
14
- //# sourceMappingURL=sign.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sign.js","sourceRoot":"","sources":["../../../source/common/sign.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,GAAoB;IAE1C,IAAG,GAAG,IAAI,CAAC;QACP,OAAO,SAAS,CAAA;IACpB,IAAG,GAAG,GAAG,CAAC;QACN,OAAO,GAAG,CAAA;IACd,IAAG,GAAG,GAAG,CAAC;QACN,OAAO,GAAG,CAAA;IACd,OAAO,SAAS,CAAA;AACpB,CAAC;AATD,8BASC"}
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.has_property = exports.check_string_array = exports.check_number_array = exports.check_array = exports.check_string = exports.check_hex = exports.get_hex_part = exports.check_hex_digit = exports.check_number = void 0;
4
- function check_number(obj) {
5
- return obj != null && typeof obj == "number" && !isNaN(obj);
6
- }
7
- exports.check_number = check_number;
8
- function check_hex_digit(obj) {
9
- if (!check_string(obj) || obj.length != 1)
10
- return false;
11
- switch (obj.toUpperCase()) {
12
- default:
13
- return false;
14
- case "0":
15
- case "1":
16
- case "2":
17
- case "3":
18
- case "4":
19
- case "5":
20
- case "6":
21
- case "7":
22
- case "8":
23
- case "9":
24
- case "A":
25
- case "B":
26
- case "C":
27
- case "D":
28
- case "E":
29
- case "F":
30
- return true;
31
- }
32
- }
33
- exports.check_hex_digit = check_hex_digit;
34
- function get_hex_part(string) {
35
- let offset = 0;
36
- if (string.startsWith("#") || string.startsWith("$"))
37
- offset = 1;
38
- if (string.startsWith("0x"))
39
- offset = 2;
40
- return string.substring(offset);
41
- }
42
- exports.get_hex_part = get_hex_part;
43
- function check_hex(obj) {
44
- if (!check_string(obj))
45
- return false;
46
- const value = get_hex_part(obj).split("").map((char) => parseInt(char.toUpperCase(), 16));
47
- return check_number_array(value);
48
- }
49
- exports.check_hex = check_hex;
50
- function check_string(obj) {
51
- return obj != null && typeof obj == "string" && obj.length > 0;
52
- }
53
- exports.check_string = check_string;
54
- function check_array(obj, predicate, requiredLength) {
55
- if (!Array.isArray(obj))
56
- return false;
57
- if (requiredLength && requiredLength != obj.length)
58
- return false;
59
- for (const item of obj)
60
- if (predicate && !predicate(item))
61
- return false;
62
- return true;
63
- }
64
- exports.check_array = check_array;
65
- function check_number_array(obj, requiredLength) {
66
- return check_array(obj, check_number, requiredLength);
67
- }
68
- exports.check_number_array = check_number_array;
69
- function check_string_array(obj, requiredLength) {
70
- return check_array(obj, check_string, requiredLength);
71
- }
72
- exports.check_string_array = check_string_array;
73
- function has_property(obj, name, type) {
74
- return obj != null && typeof obj == "object" && name in obj && typeof obj[name] == type;
75
- }
76
- exports.has_property = has_property;
77
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../source/common/types.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.degree_to_radian = exports.radian_to_degree = exports.cap_angle_degree = exports.MAX_ANGLE_DEGREE = void 0;
4
- exports.MAX_ANGLE_DEGREE = 360;
5
- const cap_angle_degree = (angle) => angle % exports.MAX_ANGLE_DEGREE;
6
- exports.cap_angle_degree = cap_angle_degree;
7
- const radian_to_degree = (angle) => angle * (180 / Math.PI);
8
- exports.radian_to_degree = radian_to_degree;
9
- const degree_to_radian = (angle) => angle * (Math.PI / 180);
10
- exports.degree_to_radian = degree_to_radian;
11
- //# sourceMappingURL=angle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angle.js","sourceRoot":"","sources":["../../../source/geometry/angle.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,GAAG,CAAA;AAC5B,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,wBAAgB,CAAA;AAA9D,QAAA,gBAAgB,oBAA8C;AAEpE,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,GAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAA3D,QAAA,gBAAgB,oBAA2C;AACjE,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,GAAC,GAAG,CAAC,CAAA;AAA3D,QAAA,gBAAgB,oBAA2C"}
@@ -1,87 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BoundingBox = void 0;
4
- const error_1 = require("../common/error");
5
- const types_1 = require("../common/types");
6
- const vec2_1 = require("../vectors/vec2");
7
- const circle_1 = require("./circle");
8
- const rectangle_1 = require("./rectangle");
9
- const square_1 = require("./square");
10
- class BoundingBox {
11
- left;
12
- right;
13
- top;
14
- bottom;
15
- get width() { return this.right - this.left; }
16
- set width(val) { this.right = this.left + val; }
17
- get height() { return this.bottom - this.top; }
18
- set height(val) { this.bottom = this.top + val; }
19
- static resolve(a) {
20
- if (a == null || typeof a == "undefined")
21
- throw new error_1.ResolveError("BoundingBox", a);
22
- if ((0, types_1.check_number_array)(a, 4))
23
- return new this(a[0], a[1], a[2], a[3]);
24
- if ((0, types_1.has_property)(a, "left", "number") && (0, types_1.has_property)(a, "right", "number") && (0, types_1.has_property)(a, "top", "number") && (0, types_1.has_property)(a, "bottom", "number"))
25
- return new this(a.left, a.right, a.top, a.bottom);
26
- if ((0, types_1.check_string)(a)) {
27
- const parts = a.split(",");
28
- if ((0, types_1.check_string_array)(parts, 4))
29
- return this.resolve(parts.map((v) => parseFloat(v)));
30
- }
31
- throw new error_1.ResolveError("BoundingBox", a);
32
- }
33
- static is(a) {
34
- try {
35
- this.resolve(a);
36
- }
37
- catch (e) {
38
- return false;
39
- }
40
- return true;
41
- }
42
- constructor(left, right, top, bottom) {
43
- this.left = left;
44
- this.right = right;
45
- this.top = top;
46
- this.bottom = bottom;
47
- }
48
- toArray() {
49
- return [this.left, this.right, this.top, this.bottom];
50
- }
51
- toString() {
52
- return `${this.left},${this.right},${this.top},${this.bottom}`;
53
- }
54
- toJSON() {
55
- return {
56
- left: this.left, top: this.top,
57
- right: this.right, bottom: this.bottom
58
- };
59
- }
60
- toSquare() {
61
- return new square_1.Square(this.width, this.height);
62
- }
63
- toRectangle() {
64
- return new rectangle_1.Rectangle(this.left, this.top, this.width, this.height);
65
- }
66
- inside(a) {
67
- const bbox = BoundingBox.resolve(a);
68
- return this.right >= bbox.left && bbox.right >= this.left && this.bottom >= bbox.top && bbox.bottom >= this.top;
69
- }
70
- insidePoint(a) {
71
- const point = vec2_1.Vec2.resolve(a);
72
- return this.left <= point.x && this.right >= point.x && this.top >= point.y && this.bottom <= point.y;
73
- }
74
- insideCircle(a) {
75
- const circle = circle_1.Circle.resolve(a);
76
- const center = vec2_1.Vec2.resolve(circle).add(circle.radius);
77
- const bboxhe = new vec2_1.Vec2(this.width / 2, this.height / 2);
78
- const bboxcenter = new vec2_1.Vec2(this.left + bboxhe.x, this.top + bboxhe.y);
79
- let diff = center.subtract(bboxcenter);
80
- const clamped = vec2_1.Vec2.clamp(diff, bboxhe.invert(), bboxhe);
81
- const closest = bboxcenter.add(clamped);
82
- diff = closest.subtract(center);
83
- return diff.length() < circle.radius;
84
- }
85
- }
86
- exports.BoundingBox = BoundingBox;
87
- //# sourceMappingURL=bbox.js.map