abstract-3d 2.0.10 → 2.0.11
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/lib/renderers/shared.d.ts +30 -0
- package/lib/renderers/shared.d.ts.map +1 -0
- package/lib/renderers/shared.js +164 -0
- package/lib/renderers/shared.js.map +1 -0
- package/package.json +8 -2
- package/CHANGELOG.md +0 -68
- package/LICENSE +0 -21
- package/src/.DS_Store +0 -0
- package/src/renderers/.DS_Store +0 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Vec3, View } from "../abstract-3d.js";
|
|
2
|
+
export declare function sizeCenterForCameraPos(size: Vec3, center: Vec3, rotation: Vec3, factor: number): readonly [Vec3, Vec3];
|
|
3
|
+
export declare function rotationForCameraPos(view: View): Vec3;
|
|
4
|
+
export declare function parseRgb(color: string): {
|
|
5
|
+
readonly r: number;
|
|
6
|
+
readonly g: number;
|
|
7
|
+
readonly b: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function parseColorString(s: string): {
|
|
10
|
+
readonly r: number;
|
|
11
|
+
readonly g: number;
|
|
12
|
+
readonly b: number;
|
|
13
|
+
};
|
|
14
|
+
export declare function rgbGrayScale(color: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* This will take a HEX or RGB web color. pSBC can shade it darker or lighter,
|
|
17
|
+
* or blend it with a second color, and can also pass it right thru but convert
|
|
18
|
+
* from Hex to RGB (Hex2RGB) or RGB to Hex (RGB2Hex).
|
|
19
|
+
* All without you even knowing what color format you are using.
|
|
20
|
+
*
|
|
21
|
+
* @param {number} p - From 0 to 1 Percentage float (Required).
|
|
22
|
+
* @param {string} from - The starting color in HEX or RGB format.
|
|
23
|
+
* @param {string} [to] - The ending color in HEX or RGB format, optional.
|
|
24
|
+
* @returns {string|null} Either Hex or RGB color. Null if invalid color or percentage number.
|
|
25
|
+
*/
|
|
26
|
+
export declare function shade(p: number, from: string, to?: string): string | undefined;
|
|
27
|
+
export type Optional<T> = {
|
|
28
|
+
readonly [K in keyof T]?: T[K];
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/renderers/shared.ts"],"names":[],"mappings":"AACA,OAAO,EACL,IAAI,EACJ,IAAI,EASL,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,EACZ,QAAQ,EAAE,IAAI,EACd,MAAM,EAAE,MAAM,GACb,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAcvB;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAgBrD;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAItG;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG;IAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAuB1G;AAKD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIlD;AAED;;;;;;;;;;GAUG;AAEH,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA8F9E;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-unused-expressions */
|
|
2
|
+
import { vec3Add, vec3, vec3Sub, vec3Scale, vec3Rot, bounds3FromVec3Array, bounds3ToSize, vec3Zero, } from "../abstract-3d.js";
|
|
3
|
+
export function sizeCenterForCameraPos(size, center, rotation, factor) {
|
|
4
|
+
const half = vec3Scale(size, 0.5);
|
|
5
|
+
const min = vec3Sub(center, half);
|
|
6
|
+
const max = vec3Add(center, half);
|
|
7
|
+
const v1 = vec3Rot(vec3(min.x, min.y, max.z), center, rotation);
|
|
8
|
+
const v2 = vec3Rot(vec3(max.x, min.y, max.z), center, rotation);
|
|
9
|
+
const v3 = vec3Rot(vec3(max.x, max.y, max.z), center, rotation);
|
|
10
|
+
const v4 = vec3Rot(vec3(min.x, max.y, max.z), center, rotation);
|
|
11
|
+
const v5 = vec3Rot(vec3(min.x, min.y, min.z), center, rotation);
|
|
12
|
+
const v6 = vec3Rot(vec3(max.x, min.y, min.z), center, rotation);
|
|
13
|
+
const v7 = vec3Rot(vec3(max.x, max.y, min.z), center, rotation);
|
|
14
|
+
const v8 = vec3Rot(vec3(min.x, max.y, min.z), center, rotation);
|
|
15
|
+
const bounds = bounds3FromVec3Array([v1, v2, v3, v4, v5, v6, v7, v8]);
|
|
16
|
+
return [vec3Scale(bounds3ToSize(bounds), factor), vec3Scale(center, factor)];
|
|
17
|
+
}
|
|
18
|
+
export function rotationForCameraPos(view) {
|
|
19
|
+
switch (view) {
|
|
20
|
+
default:
|
|
21
|
+
case "front":
|
|
22
|
+
return vec3Zero;
|
|
23
|
+
case "back":
|
|
24
|
+
return vec3(-Math.PI, 0, -Math.PI);
|
|
25
|
+
case "top":
|
|
26
|
+
return vec3(Math.PI / 2, 0, 0);
|
|
27
|
+
case "bottom":
|
|
28
|
+
return vec3(-Math.PI / 2, 0, 0);
|
|
29
|
+
case "right":
|
|
30
|
+
return vec3(0, -Math.PI / 2, 0);
|
|
31
|
+
case "left":
|
|
32
|
+
return vec3(0, Math.PI / 2, 0);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export function parseRgb(color) {
|
|
36
|
+
const parts = color.split("(")[1]?.slice(0, -1).split(",");
|
|
37
|
+
const rgb = { r: Number(parts?.[0] ?? 0), g: Number(parts?.[1] ?? 0), b: Number(parts?.[2] ?? 0) };
|
|
38
|
+
return rgb;
|
|
39
|
+
}
|
|
40
|
+
export function parseColorString(s) {
|
|
41
|
+
if (s.startsWith("#")) {
|
|
42
|
+
if (s.length === 9) {
|
|
43
|
+
return {
|
|
44
|
+
// a: parseInt(s.slice(1, 3), 16),
|
|
45
|
+
r: parseInt(s.slice(3, 5), 16),
|
|
46
|
+
g: parseInt(s.slice(5, 7), 16),
|
|
47
|
+
b: parseInt(s.slice(7, 9), 16),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
return { r: parseInt(s.slice(1, 3), 16), g: parseInt(s.slice(3, 5), 16), b: parseInt(s.slice(5, 7), 16) };
|
|
51
|
+
}
|
|
52
|
+
if (s.startsWith("rgb")) {
|
|
53
|
+
const [r, g, b, _a] = s.split("(")[1]?.split(")")[0]?.split(",") ?? [];
|
|
54
|
+
return { r: Number(r ?? 0), g: Number(g ?? 0), b: Number(b ?? 0) };
|
|
55
|
+
}
|
|
56
|
+
if (s === "white") {
|
|
57
|
+
return white;
|
|
58
|
+
}
|
|
59
|
+
if (s === "black") {
|
|
60
|
+
return black;
|
|
61
|
+
}
|
|
62
|
+
return white;
|
|
63
|
+
}
|
|
64
|
+
const white = { r: 255, g: 255, b: 255 };
|
|
65
|
+
const black = { r: 0, g: 0, b: 0 };
|
|
66
|
+
export function rgbGrayScale(color) {
|
|
67
|
+
const parts = color.split("(")[1]?.slice(0, -1).split(",");
|
|
68
|
+
const c = Number(parts?.[0] ?? 416) * 0.3 + Number(parts?.[1] ?? 212) * 0.587 + Number(parts?.[2] ?? 1100) * 0.114;
|
|
69
|
+
return `rgb(${c},${c},${c})`;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* This will take a HEX or RGB web color. pSBC can shade it darker or lighter,
|
|
73
|
+
* or blend it with a second color, and can also pass it right thru but convert
|
|
74
|
+
* from Hex to RGB (Hex2RGB) or RGB to Hex (RGB2Hex).
|
|
75
|
+
* All without you even knowing what color format you are using.
|
|
76
|
+
*
|
|
77
|
+
* @param {number} p - From 0 to 1 Percentage float (Required).
|
|
78
|
+
* @param {string} from - The starting color in HEX or RGB format.
|
|
79
|
+
* @param {string} [to] - The ending color in HEX or RGB format, optional.
|
|
80
|
+
* @returns {string|null} Either Hex or RGB color. Null if invalid color or percentage number.
|
|
81
|
+
*/
|
|
82
|
+
export function shade(p, from, to) {
|
|
83
|
+
if (typeof p !== "number" ||
|
|
84
|
+
p < -1 ||
|
|
85
|
+
p > 1 ||
|
|
86
|
+
typeof from !== "string" ||
|
|
87
|
+
(from[0] !== "r" && from[0] !== "#") ||
|
|
88
|
+
(to && typeof to !== "string")) {
|
|
89
|
+
return undefined; // ErrorCheck
|
|
90
|
+
}
|
|
91
|
+
const sbcRip = (d) => {
|
|
92
|
+
const l = d.length;
|
|
93
|
+
const RGB = {};
|
|
94
|
+
if (l > 9) {
|
|
95
|
+
const dArr = d.split(",");
|
|
96
|
+
if (dArr.length < 3 || dArr.length > 4)
|
|
97
|
+
return null; // ErrorCheck
|
|
98
|
+
RGB[0] = i(dArr[0].split("(")[1]);
|
|
99
|
+
RGB[1] = i(dArr[1]);
|
|
100
|
+
RGB[2] = i(dArr[2]);
|
|
101
|
+
RGB[3] = dArr[3] ? parseFloat(dArr[3]) : -1;
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
if (l === 8 || l === 6 || l < 4)
|
|
105
|
+
return null; // ErrorCheck
|
|
106
|
+
if (l < 6) {
|
|
107
|
+
d = "#" + d[1] + d[1] + d[2] + d[2] + d[3] + d[3] + (l > 4 ? String(d[4]) + d[4] : ""); // 3 or 4 digit
|
|
108
|
+
}
|
|
109
|
+
const dInt = i(d.slice(1), 16);
|
|
110
|
+
RGB[0] = (dInt >> 16) & 255;
|
|
111
|
+
RGB[1] = (dInt >> 8) & 255;
|
|
112
|
+
RGB[2] = dInt & 255;
|
|
113
|
+
RGB[3] = -1;
|
|
114
|
+
if (l === 9 || l === 5) {
|
|
115
|
+
RGB[3] = r((RGB[2] / 255) * 10000) / 10000;
|
|
116
|
+
RGB[2] = RGB[1];
|
|
117
|
+
RGB[1] = RGB[0];
|
|
118
|
+
RGB[0] = (dInt >> 24) & 255;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return RGB;
|
|
122
|
+
};
|
|
123
|
+
const i = parseInt;
|
|
124
|
+
const r = Math.round;
|
|
125
|
+
let h = from.length > 9;
|
|
126
|
+
h = typeof to === "string" ? (to.length > 9 ? true : to === "c" ? !h : false) : h;
|
|
127
|
+
const b = p < 0;
|
|
128
|
+
p = b ? p * -1 : p;
|
|
129
|
+
to = to && to !== "c" ? to : b ? "#000000" : "#FFFFFF";
|
|
130
|
+
const f = sbcRip(from);
|
|
131
|
+
const t = sbcRip(to);
|
|
132
|
+
if (!f || !t) {
|
|
133
|
+
return undefined; // ErrorCheck
|
|
134
|
+
}
|
|
135
|
+
if (h) {
|
|
136
|
+
return ("rgb" +
|
|
137
|
+
(f[3] > -1 || t[3] > -1 ? "a(" : "(") +
|
|
138
|
+
r((t[0] - f[0]) * p + f[0]) +
|
|
139
|
+
"," +
|
|
140
|
+
r((t[1] - f[1]) * p + f[1]) +
|
|
141
|
+
"," +
|
|
142
|
+
r((t[2] - f[2]) * p + f[2]) +
|
|
143
|
+
(f[3] < 0 && t[3] < 0
|
|
144
|
+
? ")"
|
|
145
|
+
: "," +
|
|
146
|
+
(f[3] > -1 && t[3] > -1 ? r(((t[3] - f[3]) * p + f[3]) * 10000) / 10000 : t[3] < 0 ? f[3] : t[3]) +
|
|
147
|
+
")"));
|
|
148
|
+
}
|
|
149
|
+
return ("#" +
|
|
150
|
+
(0x100000000 +
|
|
151
|
+
r((t[0] - f[0]) * p + f[0]) * 0x1000000 +
|
|
152
|
+
r((t[1] - f[1]) * p + f[1]) * 0x10000 +
|
|
153
|
+
r((t[2] - f[2]) * p + f[2]) * 0x100 +
|
|
154
|
+
(f[3] > -1 && t[3] > -1
|
|
155
|
+
? r(((t[3] - f[3]) * p + f[3]) * 255)
|
|
156
|
+
: t[3] > -1
|
|
157
|
+
? r(t[3] * 255)
|
|
158
|
+
: f[3] > -1
|
|
159
|
+
? r(f[3] * 255)
|
|
160
|
+
: 255))
|
|
161
|
+
.toString(16)
|
|
162
|
+
.slice(1, f[3] > -1 || t[3] > -1 ? undefined : -2));
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/renderers/shared.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "abstract-3d",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.11",
|
|
4
4
|
"description": "Abstract 3D",
|
|
5
5
|
"author": "Divid AB <info@divid.se>",
|
|
6
6
|
"repository": "https://github.com/dividab/abstract-visuals/tree/master/packages/abstract-3d",
|
|
@@ -12,26 +12,32 @@
|
|
|
12
12
|
"exports": {
|
|
13
13
|
".": {
|
|
14
14
|
"ts": "./src/index.ts",
|
|
15
|
+
"types": "./lib/index.d.ts",
|
|
15
16
|
"import": "./lib/index.js"
|
|
16
17
|
},
|
|
17
18
|
"./react": {
|
|
18
19
|
"ts": "./src/renderers/react/index.ts",
|
|
20
|
+
"types": "./lib/renderers/react/index.d.ts",
|
|
19
21
|
"import": "./lib/renderers/react/index.js"
|
|
20
22
|
},
|
|
21
23
|
"./dxf": {
|
|
22
24
|
"ts": "./src/renderers/dxf/index.ts",
|
|
25
|
+
"types": "./lib/renderers/dxf/index.d.ts",
|
|
23
26
|
"import": "./lib/renderers/dxf/index.js"
|
|
24
27
|
},
|
|
25
28
|
"./step": {
|
|
26
29
|
"ts": "./src/renderers/step/index.ts",
|
|
30
|
+
"types": "./lib/renderers/step/index.d.ts",
|
|
27
31
|
"import": "./lib/renderers/step/index.js"
|
|
28
32
|
},
|
|
29
33
|
"./stl": {
|
|
30
34
|
"ts": "./src/renderers/stl/index.ts",
|
|
35
|
+
"types": "./lib/renderers/stl/index.d.ts",
|
|
31
36
|
"import": "./lib/renderers/stl/index.js"
|
|
32
37
|
},
|
|
33
38
|
"./svg": {
|
|
34
39
|
"ts": "./src/renderers/svg/index.ts",
|
|
40
|
+
"types": "./lib/renderers/svg/index.d.ts",
|
|
35
41
|
"import": "./lib/renderers/svg/index.js"
|
|
36
42
|
}
|
|
37
43
|
},
|
|
@@ -59,5 +65,5 @@
|
|
|
59
65
|
"@types/three": "^0.180.0",
|
|
60
66
|
"react": "^19.2.6"
|
|
61
67
|
},
|
|
62
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "17921b59da5eee6cc446fd37a2134165af4d1901"
|
|
63
69
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/).
|
|
4
|
-
|
|
5
|
-
## v2.0.9
|
|
6
|
-
|
|
7
|
-
- Made Text only front sided
|
|
8
|
-
|
|
9
|
-
## v1.7.0
|
|
10
|
-
|
|
11
|
-
- Allow using the abstract 3d scene origin in the DXF export
|
|
12
|
-
|
|
13
|
-
## v1.6.0
|
|
14
|
-
|
|
15
|
-
- Included abstract image and made a new Image component to draw abstract images.
|
|
16
|
-
|
|
17
|
-
## v1.4.0
|
|
18
|
-
|
|
19
|
-
- Added a flag to turn off alpha test on texture materials.
|
|
20
|
-
|
|
21
|
-
## v1.3.9
|
|
22
|
-
|
|
23
|
-
- Added a setting for the dxf exporter to specify the sides of the cylinders.
|
|
24
|
-
|
|
25
|
-
## v1.3.4
|
|
26
|
-
|
|
27
|
-
- Bugfix Polygon: THREE.WebGLAttributes: The size of the buffer attribute's array buffer does not match the original size. Resizing buffer attributes is not supported.
|
|
28
|
-
|
|
29
|
-
## v1.3.1
|
|
30
|
-
|
|
31
|
-
- Text bounds calculation.
|
|
32
|
-
|
|
33
|
-
## v1.3.0
|
|
34
|
-
|
|
35
|
-
- Exposed functions to calculate bounds from geometry.
|
|
36
|
-
|
|
37
|
-
## v1.2.2
|
|
38
|
-
|
|
39
|
-
- Fixed the square holes to the SVG renderer
|
|
40
|
-
- Added opacity to the SVG elements
|
|
41
|
-
|
|
42
|
-
## v1.2.0
|
|
43
|
-
|
|
44
|
-
- Added holes rendering to the SVG renderer
|
|
45
|
-
|
|
46
|
-
## v1.1.4
|
|
47
|
-
|
|
48
|
-
- Added screen space ambient occlusion
|
|
49
|
-
|
|
50
|
-
## v1.1.0
|
|
51
|
-
|
|
52
|
-
- Added outlines to hotspots
|
|
53
|
-
|
|
54
|
-
## v0.9.0
|
|
55
|
-
|
|
56
|
-
- Added React event to React renderer callbacks
|
|
57
|
-
|
|
58
|
-
## v0.8.0
|
|
59
|
-
|
|
60
|
-
- Added reactPopovers to React renderer
|
|
61
|
-
|
|
62
|
-
## v0.7.0
|
|
63
|
-
|
|
64
|
-
- Added onHoverGroup to React renderer
|
|
65
|
-
|
|
66
|
-
## v0.1.0 - 2024-06-05
|
|
67
|
-
|
|
68
|
-
- Start of changelog.
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
The MIT License (MIT)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2018 Divid AB
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
package/src/.DS_Store
DELETED
|
Binary file
|
package/src/renderers/.DS_Store
DELETED
|
Binary file
|