abstract-3d 2.6.11 → 2.6.12
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/svg/svg-geometries/svg-text.d.ts.map +1 -1
- package/lib/renderers/svg/svg-geometries/svg-text.js +8 -1
- package/lib/renderers/svg/svg-geometries/svg-text.js.map +1 -1
- package/package.json +2 -2
- package/src/.DS_Store +0 -0
- package/src/renderers/.DS_Store +0 -0
- package/src/renderers/svg/svg-geometries/svg-text.ts +16 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-text.d.ts","sourceRoot":"","sources":["../../../../src/renderers/svg/svg-geometries/svg-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"svg-text.d.ts","sourceRoot":"","sources":["../../../../src/renderers/svg/svg-geometries/svg-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAA+F,MAAM,yBAAyB,CAAC;AACxJ,OAAO,EAAgB,UAAU,EAAS,aAAa,EAAE,MAAM,aAAa,CAAC;AAO7E,wBAAgB,IAAI,CAClB,CAAC,EAAE,IAAI,EACP,KAAK,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,EACrC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,IAAI,EACf,SAAS,EAAE,IAAI,GACd,aAAa,CAAC,aAAa,CAAC,CA0B9B"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import { vec3TransRot, vec3RotCombine, vec3Zero } from "../../../abstract-3d.js";
|
|
1
|
+
import { vec3TransRot, vec3RotCombine, vec3Zero, vec3, vec3Dot } from "../../../abstract-3d.js";
|
|
2
2
|
import { svgTrsMatrix, zElem } from "./shared.js";
|
|
3
3
|
import { svgText } from "../svg-encoding.js";
|
|
4
|
+
const SVG_FORWARD = vec3(0.0, 0.0, 1.0);
|
|
5
|
+
const SVG_DOT_OPPOSITE_THRESHOLD = -0.9;
|
|
4
6
|
// dummy
|
|
5
7
|
export function text(t, point, fill, opts, parentPos, parentRot) {
|
|
6
8
|
const pos = vec3TransRot(t.pos, parentPos, parentRot);
|
|
7
9
|
const rot = vec3RotCombine(parentRot, t.rot ?? vec3Zero);
|
|
10
|
+
const textForward = vec3TransRot({ x: 0, y: 0, z: 1 }, vec3Zero, rot);
|
|
11
|
+
//discard texts that are pointing away
|
|
12
|
+
if (vec3Dot(textForward, SVG_FORWARD) <= SVG_DOT_OPPOSITE_THRESHOLD) {
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
8
15
|
const texts = Array();
|
|
9
16
|
const fontSize = t.fontSize;
|
|
10
17
|
const strings = t.text.split("\n");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-text.js","sourceRoot":"","sources":["../../../../src/renderers/svg/svg-geometries/svg-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,cAAc,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"svg-text.js","sourceRoot":"","sources":["../../../../src/renderers/svg/svg-geometries/svg-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAwC,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACxJ,OAAO,EAAE,YAAY,EAAc,KAAK,EAAiB,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,WAAW,GAAS,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC9C,MAAM,0BAA0B,GAAW,CAAC,GAAG,CAAC;AAEhD,QAAQ;AACR,MAAM,UAAU,IAAI,CAClB,CAAO,EACP,KAAqC,EACrC,IAAY,EACZ,IAAgB,EAChB,SAAe,EACf,SAAe;IAEf,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC;IAEzD,MAAM,WAAW,GAAG,YAAY,CAC5B,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EACpB,QAAQ,EACR,GAAG,CACN,CAAC;IAEF,sCAAsC;IACtC,IAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,0BAA0B,EAAE,CAAC;QACnE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,EAAiB,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC5B,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IACjF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,IAAI,IAAI,QAAQ,GAAG,GAAG,CAAC;IACzB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "abstract-3d",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.12",
|
|
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",
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"@types/three": "^0.180.0",
|
|
66
66
|
"react": "^19.2.6"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "fb4fda0f9d16d1257730d6e737bc48422924352d"
|
|
69
69
|
}
|
package/src/.DS_Store
ADDED
|
Binary file
|
|
Binary file
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
import { Text, Vec2, Vec3, vec3TransRot, vec3RotCombine, vec3Zero, vec3, View, vec3Flip, rotationForCameraPos } from "../../../abstract-3d.js";
|
|
1
|
+
import { Text, Vec2, Vec3, vec3TransRot, vec3RotCombine, vec3Zero, vec3, View, vec3Flip, rotationForCameraPos, vec3Dot } from "../../../abstract-3d.js";
|
|
2
2
|
import { svgTrsMatrix, SvgOptions, zElem, zOrderElement } from "./shared.js";
|
|
3
3
|
import { svgText } from "../svg-encoding.js";
|
|
4
4
|
|
|
5
|
+
const SVG_FORWARD: Vec3 = vec3(0.0, 0.0, 1.0);
|
|
6
|
+
const SVG_DOT_OPPOSITE_THRESHOLD: number = -0.9;
|
|
7
|
+
|
|
5
8
|
// dummy
|
|
6
9
|
export function text(
|
|
7
10
|
t: Text,
|
|
@@ -13,6 +16,18 @@ export function text(
|
|
|
13
16
|
): ReadonlyArray<zOrderElement> {
|
|
14
17
|
const pos = vec3TransRot(t.pos, parentPos, parentRot);
|
|
15
18
|
const rot = vec3RotCombine(parentRot, t.rot ?? vec3Zero);
|
|
19
|
+
|
|
20
|
+
const textForward = vec3TransRot(
|
|
21
|
+
{ x: 0, y: 0, z: 1 },
|
|
22
|
+
vec3Zero,
|
|
23
|
+
rot,
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
//discard texts that are pointing away
|
|
27
|
+
if(vec3Dot(textForward, SVG_FORWARD) <= SVG_DOT_OPPOSITE_THRESHOLD) {
|
|
28
|
+
return [];
|
|
29
|
+
}
|
|
30
|
+
|
|
16
31
|
const texts = Array<zOrderElement>();
|
|
17
32
|
const fontSize = t.fontSize;
|
|
18
33
|
const strings = t.text.split("\n");
|