@mlightcad/graphic-interface 3.0.7 → 3.0.8

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,8 +1,23 @@
1
- import { AcGeMatrix3d } from '@mlightcad/geometry-engine';
1
+ import { AcGeMatrix3d, AcGePoint3d } from '@mlightcad/geometry-engine';
2
2
  /**
3
3
  * Interface that all of display objects need to implement.
4
4
  */
5
5
  export interface AcGiEntity {
6
+ /**
7
+ * JavaScript (and WebGL) use 64‑bit floating point numbers for CPU-side calculations,
8
+ * but GPU shaders typically use 32‑bit floats. A 32-bit float has ~7.2 decimal digits
9
+ * of precision. If passing 64-bit floating vertices data to GPU directly, it will
10
+ * destroy number preciesion.
11
+ *
12
+ * So we adopt a simpler but effective version of the “origin-shift” idea. Recompute
13
+ * geometry using re-centered coordinates and apply offset to its position. The base
14
+ * point is extractly offset value.
15
+ *
16
+ * Get the rendering base point.
17
+ * @returns Return the rendering base point.
18
+ */
19
+ get basePoint(): AcGePoint3d | undefined;
20
+ set basePoint(value: AcGePoint3d | undefined);
6
21
  /**
7
22
  * Object id of the associated entity in drawing database. When adding this entity into scene,
8
23
  * do remember setting the value of this property.
@@ -1 +1 @@
1
- {"version":3,"file":"AcGiEntity.d.ts","sourceRoot":"","sources":["../src/AcGiEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAA;IACtB,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAC;IAE3B;;;OAGG;IACH,IAAI,OAAO,IAAI,MAAM,CAAA;IACrB,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAAC;IAE1B;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAAA;IACvB,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAC;IAE5B;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAAA;IACtB,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAC;IAE3B;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAA;IACtB,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAC;IAE3B;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAEvC;;OAEG;IACH,SAAS,IAAI,IAAI,CAAA;IAEjB;;OAEG;IACH,WAAW,IAAI,IAAI,CAAA;IAEnB;;;;;;;OAOG;IACH,aAAa,IAAI,UAAU,CAAA;CAC5B"}
1
+ {"version":3,"file":"AcGiEntity.d.ts","sourceRoot":"","sources":["../src/AcGiEntity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAEtE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;;;;;;;;;;OAYG;IACH,IAAI,SAAS,IAAI,WAAW,GAAG,SAAS,CAAA;IACxC,IAAI,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,EAAC;IAC7C;;;OAGG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAA;IACtB,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAC;IAE3B;;;OAGG;IACH,IAAI,OAAO,IAAI,MAAM,CAAA;IACrB,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAAC;IAE1B;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAAA;IACvB,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAC;IAE5B;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAAA;IACtB,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAC;IAE3B;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAAA;IACtB,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAC;IAE3B;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAAA;IAEvC;;OAEG;IACH,SAAS,IAAI,IAAI,CAAA;IAEjB;;OAEG;IACH,WAAW,IAAI,IAAI,CAAA;IAEnB;;;;;;;OAOG;IACH,aAAa,IAAI,UAAU,CAAA;CAC5B"}
@@ -12,6 +12,21 @@ import { AcGiMTextData, AcGiTextStyle } from './AcGiTextStyle';
12
12
  */
13
13
  export type AcGiFontMapping = Record<string, string>;
14
14
  export interface AcGiRenderer<T extends AcGiEntity = AcGiEntity> {
15
+ /**
16
+ * JavaScript (and WebGL) use 64‑bit floating point numbers for CPU-side calculations,
17
+ * but GPU shaders typically use 32‑bit floats. A 32-bit float has ~7.2 decimal digits
18
+ * of precision. If passing 64-bit floating vertices data to GPU directly, it will
19
+ * destroy number preciesion.
20
+ *
21
+ * So we adopt a simpler but effective version of the “origin-shift” idea. Recompute
22
+ * geometry using re-centered coordinates and apply offset to its position. The base
23
+ * point is extractly offset value.
24
+ *
25
+ * Get the rendering base point.
26
+ * @returns Return the rendering base point.
27
+ */
28
+ get basePoint(): AcGePoint3d | undefined;
29
+ set basePoint(value: AcGePoint3d | undefined);
15
30
  /**
16
31
  * Create one group
17
32
  * @param entities Input entities to group together
@@ -1 +1 @@
1
- {"version":3,"file":"AcGiRenderer.d.ts","sourceRoot":"","sources":["../src/AcGiRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC7D;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAEvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEnD;;;;;OAKG;IACH,WAAW,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAExD;;;;;OAKG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAEpE;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAEzD;;;;;;;;;;OAUG;IACH,YAAY,CACV,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,aAAa,GACnB,CAAC,CAAA;IAEJ;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEhD;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAE3C;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CAC/C"}
1
+ {"version":3,"file":"AcGiRenderer.d.ts","sourceRoot":"","sources":["../src/AcGiRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE9D;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC7D;;;;;;;;;;;;OAYG;IACH,IAAI,SAAS,IAAI,WAAW,GAAG,SAAS,CAAA;IACxC,IAAI,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,EAAC;IAE7C;;;;OAIG;IACH,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IAEvB;;;;;OAKG;IACH,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEnD;;;;;OAKG;IACH,WAAW,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAExD;;;;;OAKG;IACH,aAAa,CAAC,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAEpE;;;;;OAKG;IACH,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,CAAC,CAAA;IAEzD;;;;;;;;;;OAUG;IACH,YAAY,CACV,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,aAAa,GACnB,CAAC,CAAA;IAEJ;;;;;OAKG;IACH,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAEhD;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,CAAC,CAAA;IAErE;;;;;OAKG;IACH,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,GAAG,CAAC,CAAA;IAE3C;;;OAGG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;CAC/C"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@mlightcad/graphic-interface",
3
- "version": "3.0.7",
3
+ "version": "3.0.8",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {
7
7
  "type": "git",
8
- "url": "https://gitlab.com/mlightcad/realdwg-web"
8
+ "url": "https://github.com/mlightcad/realdwg-web"
9
9
  },
10
10
  "keywords": [
11
11
  "autocad",