@fbltd/math 1.0.26 → 1.0.28
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/dist/bin/src/colors/color.js +2 -2
- package/dist/bin/src/figures/point.js +18 -0
- package/dist/bin/src/matrices/matrix3d.js +1 -1
- package/dist/types/src/colors/color.d.ts +2 -2
- package/dist/types/src/colors/color.d.ts.map +1 -1
- package/dist/types/src/figures/point.d.ts +4 -0
- package/dist/types/src/figures/point.d.ts.map +1 -1
- package/dist/types/src/matrices/matrix3d.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -43,7 +43,7 @@ export class Color {
|
|
|
43
43
|
return this.toString();
|
|
44
44
|
}
|
|
45
45
|
toString(format = 'hex') {
|
|
46
|
-
return Color.
|
|
46
|
+
return Color.representation(this, format);
|
|
47
47
|
}
|
|
48
48
|
toNumber() {
|
|
49
49
|
return Color.toNumber(this);
|
|
@@ -63,7 +63,7 @@ export class Color {
|
|
|
63
63
|
static areEquals(c1, c2) {
|
|
64
64
|
return Color.toNumber(c1) === Color.toNumber(c2);
|
|
65
65
|
}
|
|
66
|
-
static
|
|
66
|
+
static representation(color, format = 'hex') {
|
|
67
67
|
switch (format) {
|
|
68
68
|
case "rgba":
|
|
69
69
|
return `rgba(${color.red},${color.green},${color.blue},${normalizeShade(color.alpha)})`;
|
|
@@ -11,4 +11,22 @@ export class Point {
|
|
|
11
11
|
static abs(p) {
|
|
12
12
|
return p.map(Math.abs);
|
|
13
13
|
}
|
|
14
|
+
static dotProduct(p1, p2) {
|
|
15
|
+
return p1.reduce((acc, c, index) => {
|
|
16
|
+
return acc + c * p2[index];
|
|
17
|
+
}, 0);
|
|
18
|
+
}
|
|
19
|
+
static crossProduct(a, b) {
|
|
20
|
+
return [
|
|
21
|
+
a[1] * b[2] - b[1] * a[2],
|
|
22
|
+
a[2] * b[0] - a[0] * b[2],
|
|
23
|
+
a[0] * b[1] - b[0] * a[1],
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
static tripleProduct(crossFactorA, crossFactorB, dotFactor) {
|
|
27
|
+
return Point.dotProduct(Point.crossProduct(crossFactorA, crossFactorB), dotFactor);
|
|
28
|
+
}
|
|
29
|
+
static normal(p1, p2, p3) {
|
|
30
|
+
return Point.crossProduct(Point.dif(p2, p1), Point.dif(p3, p1));
|
|
31
|
+
}
|
|
14
32
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Angle, AngleUnits, approximately } from "../../index.js";
|
|
2
|
-
import {
|
|
2
|
+
import {} from "../type.utils.js";
|
|
3
3
|
export const identityMatrix3d = [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0];
|
|
4
4
|
Object.freeze(identityMatrix3d);
|
|
5
5
|
export class Matrix3d {
|
|
@@ -13,13 +13,13 @@ export declare class Color {
|
|
|
13
13
|
get blue(): number;
|
|
14
14
|
get alpha(): number;
|
|
15
15
|
[Symbol.toPrimitive](): string;
|
|
16
|
-
toString(format?: Parameters<typeof Color.
|
|
16
|
+
toString(format?: Parameters<typeof Color.representation>[1]): string;
|
|
17
17
|
toNumber(): number;
|
|
18
18
|
isEqual(c: Color): boolean;
|
|
19
19
|
static ofNumber(value: number): Color;
|
|
20
20
|
static ofNumberAlpha(value: number): Color;
|
|
21
21
|
static toNumber(color: Color): number;
|
|
22
22
|
static areEquals(c1: Color, c2: Color): boolean;
|
|
23
|
-
static
|
|
23
|
+
static representation(color: Color, format?: 'rgba' | 'hex'): string;
|
|
24
24
|
}
|
|
25
25
|
//# sourceMappingURL=color.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../src/colors/color.ts"],"names":[],"mappings":"AAGA,qBAAa,KAAK;IACF,OAAO,CAAC,IAAI;IAAU,OAAO,CAAC,MAAM;IAAU,OAAO,CAAC,KAAK;IAAU,OAAO,CAAC,MAAM;gBAA3E,IAAI,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,EAAU,KAAK,EAAE,MAAM,EAAU,MAAM,SAAM;IAOrG,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAEpB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAErB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED,IAAI,GAAG,IAhBQ,MAAM,CAkBpB;IAED,IAAI,KAAK,IAhBQ,MAAM,CAkBtB;IAED,IAAI,IAAI,IAhBQ,MAAM,CAkBrB;IAED,IAAI,KAAK,IAhBQ,MAAM,CAkBtB;IAED,CAAC,MAAM,CAAC,WAAW,CAAC;IAIpB,QAAQ,CAAC,MAAM,GAAE,UAAU,CAAC,OAAO,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../src/colors/color.ts"],"names":[],"mappings":"AAGA,qBAAa,KAAK;IACF,OAAO,CAAC,IAAI;IAAU,OAAO,CAAC,MAAM;IAAU,OAAO,CAAC,KAAK;IAAU,OAAO,CAAC,MAAM;gBAA3E,IAAI,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,EAAU,KAAK,EAAE,MAAM,EAAU,MAAM,SAAM;IAOrG,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAEpB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAErB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED,IAAI,GAAG,IAhBQ,MAAM,CAkBpB;IAED,IAAI,KAAK,IAhBQ,MAAM,CAkBtB;IAED,IAAI,IAAI,IAhBQ,MAAM,CAkBrB;IAED,IAAI,KAAK,IAhBQ,MAAM,CAkBtB;IAED,CAAC,MAAM,CAAC,WAAW,CAAC;IAIpB,QAAQ,CAAC,MAAM,GAAE,UAAU,CAAC,OAAO,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAS;IAInE,QAAQ;IAIR,OAAO,CAAC,CAAC,EAAE,KAAK;IAIhB,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAQ7B,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM;IASlC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK;IAI5B,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK;IAIrC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,GAAE,MAAM,GAAG,KAAa;CAWrE"}
|
|
@@ -6,5 +6,9 @@ export declare class Point {
|
|
|
6
6
|
static scale<T extends IPoint>(p: T, scale: number): T;
|
|
7
7
|
static dif<T extends IPoint>(p1: T, p2: T): T;
|
|
8
8
|
static abs<T extends IPoint>(p: T): T;
|
|
9
|
+
static dotProduct<T extends IPoint>(p1: T, p2: T): number;
|
|
10
|
+
static crossProduct(a: IPoint3, b: IPoint3): IPoint3;
|
|
11
|
+
static tripleProduct(crossFactorA: IPoint3, crossFactorB: IPoint3, dotFactor: any): number;
|
|
12
|
+
static normal(p1: IPoint3, p2: IPoint3, p3: IPoint3): IPoint3;
|
|
9
13
|
}
|
|
10
14
|
//# sourceMappingURL=point.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../../src/figures/point.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACtC,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAC9C,MAAM,MAAM,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAEtC,qBAAa,KAAK;IACd,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IAI7C,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAItD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IAI7C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../../src/figures/point.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACtC,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAC9C,MAAM,MAAM,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAEtC,qBAAa,KAAK;IACd,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IAI7C,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAItD,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IAI7C,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;IAIrC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM;IAYzD,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO;IAgBpD,MAAM,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,KAAA,GAAG,MAAM;IAWrF,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO;CAIhE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matrix3d.d.ts","sourceRoot":"","sources":["../../../../src/matrices/matrix3d.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAiB,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,
|
|
1
|
+
{"version":3,"file":"matrix3d.d.ts","sourceRoot":"","sources":["../../../../src/matrices/matrix3d.ts"],"names":[],"mappings":"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"}
|