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.
@@ -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,EAAsF,MAAM,yBAAyB,CAAC;AAC/I,OAAO,EAAgB,UAAU,EAAS,aAAa,EAAE,MAAM,aAAa,CAAC;AAI7E,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,CAc9B"}
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,EAA8C,MAAM,yBAAyB,CAAC;AAC/I,OAAO,EAAE,YAAY,EAAc,KAAK,EAAiB,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,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;IACzD,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"}
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.11",
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": "24bfc640f3b666f27999d80fadd627da7dd28aad"
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");