@itwin/core-geometry 4.2.0-dev.31 → 4.2.0-dev.33

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.
Files changed (111) hide show
  1. package/lib/cjs/Geometry.d.ts +2 -2
  2. package/lib/cjs/Geometry.js +2 -2
  3. package/lib/cjs/Geometry.js.map +1 -1
  4. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts +93 -91
  5. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  6. package/lib/cjs/curve/CurveChainWithDistanceIndex.js +171 -152
  7. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
  8. package/lib/cjs/curve/CurveCurve.d.ts +13 -11
  9. package/lib/cjs/curve/CurveCurve.d.ts.map +1 -1
  10. package/lib/cjs/curve/CurveCurve.js +14 -12
  11. package/lib/cjs/curve/CurveCurve.js.map +1 -1
  12. package/lib/cjs/curve/CurveLocationDetail.d.ts +8 -7
  13. package/lib/cjs/curve/CurveLocationDetail.d.ts.map +1 -1
  14. package/lib/cjs/curve/CurveLocationDetail.js +2 -1
  15. package/lib/cjs/curve/CurveLocationDetail.js.map +1 -1
  16. package/lib/cjs/curve/CurvePrimitive.d.ts +1 -2
  17. package/lib/cjs/curve/CurvePrimitive.d.ts.map +1 -1
  18. package/lib/cjs/curve/CurvePrimitive.js +2 -2
  19. package/lib/cjs/curve/CurvePrimitive.js.map +1 -1
  20. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.d.ts +1 -1
  21. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.d.ts.map +1 -1
  22. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js +2 -2
  23. package/lib/cjs/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  24. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.d.ts +20 -12
  25. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.d.ts.map +1 -1
  26. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js +63 -14
  27. package/lib/cjs/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  28. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.d.ts +31 -24
  29. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  30. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js +85 -83
  31. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  32. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.d.ts +8 -7
  33. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.d.ts.map +1 -1
  34. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js +123 -95
  35. package/lib/cjs/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  36. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.d.ts +2 -2
  37. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.d.ts.map +1 -1
  38. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js +9 -5
  39. package/lib/cjs/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  40. package/lib/cjs/geometry3d/GeometryHandler.d.ts +12 -16
  41. package/lib/cjs/geometry3d/GeometryHandler.d.ts.map +1 -1
  42. package/lib/cjs/geometry3d/GeometryHandler.js +21 -26
  43. package/lib/cjs/geometry3d/GeometryHandler.js.map +1 -1
  44. package/lib/cjs/geometry3d/Range.d.ts.map +1 -1
  45. package/lib/cjs/geometry3d/Range.js.map +1 -1
  46. package/lib/cjs/geometry4d/Map4d.d.ts +14 -8
  47. package/lib/cjs/geometry4d/Map4d.d.ts.map +1 -1
  48. package/lib/cjs/geometry4d/Map4d.js +38 -16
  49. package/lib/cjs/geometry4d/Map4d.js.map +1 -1
  50. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  51. package/lib/cjs/polyface/PolyfaceBuilder.js +7 -10
  52. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  53. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  54. package/lib/cjs/serialization/GeometrySamples.js +7 -1
  55. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  56. package/lib/esm/Geometry.d.ts +2 -2
  57. package/lib/esm/Geometry.js +2 -2
  58. package/lib/esm/Geometry.js.map +1 -1
  59. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +93 -91
  60. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  61. package/lib/esm/curve/CurveChainWithDistanceIndex.js +171 -152
  62. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
  63. package/lib/esm/curve/CurveCurve.d.ts +13 -11
  64. package/lib/esm/curve/CurveCurve.d.ts.map +1 -1
  65. package/lib/esm/curve/CurveCurve.js +14 -12
  66. package/lib/esm/curve/CurveCurve.js.map +1 -1
  67. package/lib/esm/curve/CurveLocationDetail.d.ts +8 -7
  68. package/lib/esm/curve/CurveLocationDetail.d.ts.map +1 -1
  69. package/lib/esm/curve/CurveLocationDetail.js +2 -1
  70. package/lib/esm/curve/CurveLocationDetail.js.map +1 -1
  71. package/lib/esm/curve/CurvePrimitive.d.ts +1 -2
  72. package/lib/esm/curve/CurvePrimitive.d.ts.map +1 -1
  73. package/lib/esm/curve/CurvePrimitive.js +2 -2
  74. package/lib/esm/curve/CurvePrimitive.js.map +1 -1
  75. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.d.ts +1 -1
  76. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.d.ts.map +1 -1
  77. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js +2 -2
  78. package/lib/esm/curve/internalContexts/ClosestPointStrokeHandler.js.map +1 -1
  79. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.d.ts +20 -12
  80. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.d.ts.map +1 -1
  81. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js +63 -14
  82. package/lib/esm/curve/internalContexts/CurveCurveCloseApproachXY.js.map +1 -1
  83. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.d.ts +31 -24
  84. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.d.ts.map +1 -1
  85. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js +85 -83
  86. package/lib/esm/curve/internalContexts/CurveCurveIntersectXY.js.map +1 -1
  87. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.d.ts +8 -7
  88. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.d.ts.map +1 -1
  89. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js +124 -96
  90. package/lib/esm/curve/internalContexts/CurveCurveIntersectXYZ.js.map +1 -1
  91. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.d.ts +2 -2
  92. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.d.ts.map +1 -1
  93. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js +9 -5
  94. package/lib/esm/curve/internalContexts/CurveOffsetXYHandler.js.map +1 -1
  95. package/lib/esm/geometry3d/GeometryHandler.d.ts +12 -16
  96. package/lib/esm/geometry3d/GeometryHandler.d.ts.map +1 -1
  97. package/lib/esm/geometry3d/GeometryHandler.js +21 -26
  98. package/lib/esm/geometry3d/GeometryHandler.js.map +1 -1
  99. package/lib/esm/geometry3d/Range.d.ts.map +1 -1
  100. package/lib/esm/geometry3d/Range.js.map +1 -1
  101. package/lib/esm/geometry4d/Map4d.d.ts +14 -8
  102. package/lib/esm/geometry4d/Map4d.d.ts.map +1 -1
  103. package/lib/esm/geometry4d/Map4d.js +38 -16
  104. package/lib/esm/geometry4d/Map4d.js.map +1 -1
  105. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  106. package/lib/esm/polyface/PolyfaceBuilder.js +7 -10
  107. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  108. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  109. package/lib/esm/serialization/GeometrySamples.js +7 -1
  110. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  111. package/package.json +3 -3
@@ -5,7 +5,8 @@ import { BeJSONFunctions } from "../Geometry";
5
5
  import { Point3d, Vector3d } from "../geometry3d/Point3dVector3d";
6
6
  import { Transform } from "../geometry3d/Transform";
7
7
  import { Matrix4d } from "./Matrix4d";
8
- /** Map4 carries two Matrix4d which are inverses of each other.
8
+ /**
9
+ * Map4 carries two Matrix4d which are inverses of each other.
9
10
  * @public
10
11
  */
11
12
  export declare class Map4d implements BeJSONFunctions {
@@ -20,7 +21,8 @@ export declare class Map4d implements BeJSONFunctions {
20
21
  static createRefs(matrix0: Matrix4d, matrix1: Matrix4d): Map4d;
21
22
  /** Create an identity map. */
22
23
  static createIdentity(): Map4d;
23
- /** Create a Map4d with given transform pair.
24
+ /**
25
+ * Create a Map4d with given transform pair.
24
26
  * @returns undefined if the transforms are not inverses of each other.
25
27
  */
26
28
  static createTransform(transform0: Transform, transform1?: Transform): Map4d | undefined;
@@ -46,26 +48,30 @@ export declare class Map4d implements BeJSONFunctions {
46
48
  toJSON(): any;
47
49
  /** Test if both matrices are almost equal to those */
48
50
  isAlmostEqual(other: Map4d): boolean;
49
- /** Create a map between a frustum and world coordinates.
51
+ /**
52
+ * Create a map between a frustum and world coordinates.
50
53
  * @param origin lower left of frustum
51
- * @param uVector Vector from lower left rear to lower right rear
52
- * @param vVector Vector from lower left rear to upper left rear
54
+ * @param uVector Vector from lower left rear to lower right rear.
55
+ * @param vVector Vector from lower left rear to upper left rear.
53
56
  * @param wVector Vector from lower left rear to lower left front, i.e. lower left rear towards eye.
54
57
  * @param fraction front size divided by rear size.
55
58
  */
56
59
  static createVectorFrustum(origin: Point3d, uVector: Vector3d, vVector: Vector3d, wVector: Vector3d, fraction: number): Map4d | undefined;
57
- /** multiply this*other. The output matrices are
60
+ /**
61
+ * Multiply this*other. The output matrices are
58
62
  * * output matrix0 = `this.matrix0 * other.matrix0`
59
63
  * * output matrix1 = 'other.matrix1 * this.matrix1`
60
64
  */
61
65
  multiplyMapMap(other: Map4d): Map4d;
62
66
  /** Exchange the two matrices of the map. */
63
67
  reverseInPlace(): void;
64
- /** return a Map4d whose transform0 is
68
+ /**
69
+ * Return a Map4d whose transform0 is
65
70
  * other.transform0 * this.transform0 * other.transform1
66
71
  */
67
72
  sandwich0This1(other: Map4d): Map4d;
68
- /** return a Map4d whose transform0 is
73
+ /**
74
+ * Return a Map4d whose transform0 is
69
75
  * other.transform1 * this.transform0 * other.transform0
70
76
  */
71
77
  sandwich1This0(other: Map4d): Map4d;
@@ -1 +1 @@
1
- {"version":3,"file":"Map4d.d.ts","sourceRoot":"","sources":["../../../src/geometry4d/Map4d.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,qBAAa,KAAM,YAAW,eAAe;IAC3C,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO;IAIP,iEAAiE;IACjE,IAAW,UAAU,IAAI,QAAQ,CAA0B;IAC3D,iEAAiE;IACjE,IAAW,UAAU,IAAI,QAAQ,CAA0B;IAC3D,oEAAoE;WACtD,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;IAG7D,8BAA8B;WAChB,cAAc,IAAI,KAAK;IACrC;;OAEG;WACW,eAAe,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS;IAY/F;;;;;;OAMG;WACW,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS;IAU3H,uCAAuC;IAChC,OAAO,CAAC,KAAK,EAAE,KAAK;IAC3B,mCAAmC;IAC5B,KAAK,IAAI,KAAK;IACrB,8CAA8C;IACvC,WAAW;IAClB,6GAA6G;IACtG,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAOnC,6GAA6G;WAC/F,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,KAAK;IAKzC,gEAAgE;IACzD,MAAM,IAAI,GAAG;IACpB,sDAAsD;IAC/C,aAAa,CAAC,KAAK,EAAE,KAAK;IAGjC;;;;;;OAMG;WACW,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAyBhJ;;;OAGG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAG1C,4CAA4C;IACrC,cAAc;IAKrB;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAG1C;;OAEG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;CAG3C"}
1
+ {"version":3,"file":"Map4d.d.ts","sourceRoot":"","sources":["../../../src/geometry4d/Map4d.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;;GAGG;AACH,qBAAa,KAAM,YAAW,eAAe;IAC3C,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO;IAIP,iEAAiE;IACjE,IAAW,UAAU,IAAI,QAAQ,CAEhC;IACD,iEAAiE;IACjE,IAAW,UAAU,IAAI,QAAQ,CAEhC;IACD,oEAAoE;WACtD,UAAU,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;IAG7D,8BAA8B;WAChB,cAAc,IAAI,KAAK;IAGrC;;;OAGG;WACW,eAAe,CAAC,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,KAAK,GAAG,SAAS;IAY/F;;;;;;OAMG;WACW,YAAY,CACxB,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,GAC3E,KAAK,GAAG,SAAS;IAUpB,uCAAuC;IAChC,OAAO,CAAC,KAAK,EAAE,KAAK;IAI3B,mCAAmC;IAC5B,KAAK,IAAI,KAAK;IAGrB,8CAA8C;IACvC,WAAW;IAIlB,6GAA6G;IACtG,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;IAOnC,6GAA6G;WAC/F,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,KAAK;IAKzC,gEAAgE;IACzD,MAAM,IAAI,GAAG;IAGpB,sDAAsD;IAC/C,aAAa,CAAC,KAAK,EAAE,KAAK;IAGjC;;;;;;;OAOG;WACW,mBAAmB,CAC/B,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GACzF,KAAK,GAAG,SAAS;IA4BpB;;;;OAIG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAM1C,4CAA4C;IACrC,cAAc;IAKrB;;;OAGG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAM1C;;;OAGG;IACI,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;CAM3C"}
@@ -11,7 +11,8 @@ exports.Map4d = void 0;
11
11
  const Matrix3d_1 = require("../geometry3d/Matrix3d");
12
12
  const Transform_1 = require("../geometry3d/Transform");
13
13
  const Matrix4d_1 = require("./Matrix4d");
14
- /** Map4 carries two Matrix4d which are inverses of each other.
14
+ /**
15
+ * Map4 carries two Matrix4d which are inverses of each other.
15
16
  * @public
16
17
  */
17
18
  class Map4d {
@@ -20,16 +21,23 @@ class Map4d {
20
21
  this._matrix1 = matrix1;
21
22
  }
22
23
  /** Return a reference to (not copy of) the "forward" Matrix4d */
23
- get transform0() { return this._matrix0; }
24
+ get transform0() {
25
+ return this._matrix0;
26
+ }
24
27
  /** Return a reference to (not copy of) the "reverse" Matrix4d */
25
- get transform1() { return this._matrix1; }
28
+ get transform1() {
29
+ return this._matrix1;
30
+ }
26
31
  /** Create a Map4d, capturing the references to the two matrices. */
27
32
  static createRefs(matrix0, matrix1) {
28
33
  return new Map4d(matrix0, matrix1);
29
34
  }
30
35
  /** Create an identity map. */
31
- static createIdentity() { return new Map4d(Matrix4d_1.Matrix4d.createIdentity(), Matrix4d_1.Matrix4d.createIdentity()); }
32
- /** Create a Map4d with given transform pair.
36
+ static createIdentity() {
37
+ return new Map4d(Matrix4d_1.Matrix4d.createIdentity(), Matrix4d_1.Matrix4d.createIdentity());
38
+ }
39
+ /**
40
+ * Create a Map4d with given transform pair.
33
41
  * @returns undefined if the transforms are not inverses of each other.
34
42
  */
35
43
  static createTransform(transform0, transform1) {
@@ -63,11 +71,19 @@ class Map4d {
63
71
  return undefined;
64
72
  }
65
73
  /** Copy contents from another Map4d */
66
- setFrom(other) { this._matrix0.setFrom(other._matrix0), this._matrix1.setFrom(other._matrix1); }
74
+ setFrom(other) {
75
+ this._matrix0.setFrom(other._matrix0);
76
+ this._matrix1.setFrom(other._matrix1);
77
+ }
67
78
  /** Return a clone of this Map4d */
68
- clone() { return new Map4d(this._matrix0.clone(), this._matrix1.clone()); }
79
+ clone() {
80
+ return new Map4d(this._matrix0.clone(), this._matrix1.clone());
81
+ }
69
82
  /** Reinitialize this Map4d as an identity. */
70
- setIdentity() { this._matrix0.setIdentity(); this._matrix1.setIdentity(); }
83
+ setIdentity() {
84
+ this._matrix0.setIdentity();
85
+ this._matrix1.setIdentity();
86
+ }
71
87
  /** Set this map4d from a json object that the two Matrix4d values as properties named matrix0 and matrix1 */
72
88
  setFromJSON(json) {
73
89
  if (json.matrix0 && json.matrix1) {
@@ -84,15 +100,18 @@ class Map4d {
84
100
  return result;
85
101
  }
86
102
  /** Return a json object `{matrix0: value0, matrix1: value1}` */
87
- toJSON() { return { matrix0: this._matrix0.toJSON(), matrix1: this._matrix1.toJSON() }; }
103
+ toJSON() {
104
+ return { matrix0: this._matrix0.toJSON(), matrix1: this._matrix1.toJSON() };
105
+ }
88
106
  /** Test if both matrices are almost equal to those */
89
107
  isAlmostEqual(other) {
90
108
  return this._matrix0.isAlmostEqual(other._matrix0) && this._matrix1.isAlmostEqual(other._matrix1);
91
109
  }
92
- /** Create a map between a frustum and world coordinates.
110
+ /**
111
+ * Create a map between a frustum and world coordinates.
93
112
  * @param origin lower left of frustum
94
- * @param uVector Vector from lower left rear to lower right rear
95
- * @param vVector Vector from lower left rear to upper left rear
113
+ * @param uVector Vector from lower left rear to lower right rear.
114
+ * @param vVector Vector from lower left rear to upper left rear.
96
115
  * @param wVector Vector from lower left rear to lower left front, i.e. lower left rear towards eye.
97
116
  * @param fraction front size divided by rear size.
98
117
  */
@@ -121,7 +140,8 @@ class Map4d {
121
140
  */
122
141
  return result;
123
142
  }
124
- /** multiply this*other. The output matrices are
143
+ /**
144
+ * Multiply this*other. The output matrices are
125
145
  * * output matrix0 = `this.matrix0 * other.matrix0`
126
146
  * * output matrix1 = 'other.matrix1 * this.matrix1`
127
147
  */
@@ -134,18 +154,20 @@ class Map4d {
134
154
  this._matrix0 = this._matrix1;
135
155
  this._matrix1 = temp;
136
156
  }
137
- /** return a Map4d whose transform0 is
157
+ /**
158
+ * Return a Map4d whose transform0 is
138
159
  * other.transform0 * this.transform0 * other.transform1
139
160
  */
140
161
  sandwich0This1(other) {
141
162
  return new Map4d(other._matrix0.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix1)), other._matrix0.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix1)));
142
163
  }
143
- /** return a Map4d whose transform0 is
164
+ /**
165
+ * Return a Map4d whose transform0 is
144
166
  * other.transform1 * this.transform0 * other.transform0
145
167
  */
146
168
  sandwich1This0(other) {
147
169
  return new Map4d(other._matrix1.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix0)), other._matrix1.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix0)));
148
170
  }
149
- } // Map4d
171
+ }
150
172
  exports.Map4d = Map4d;
151
173
  //# sourceMappingURL=Map4d.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Map4d.js","sourceRoot":"","sources":["../../../src/geometry4d/Map4d.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Numerics\r\n */\r\n\r\nimport { BeJSONFunctions } from \"../Geometry\";\r\nimport { Matrix3d } from \"../geometry3d/Matrix3d\";\r\nimport { Point3d, Vector3d } from \"../geometry3d/Point3dVector3d\";\r\nimport { Transform } from \"../geometry3d/Transform\";\r\nimport { Matrix4d } from \"./Matrix4d\";\r\n\r\n/** Map4 carries two Matrix4d which are inverses of each other.\r\n * @public\r\n */\r\nexport class Map4d implements BeJSONFunctions {\r\n private _matrix0: Matrix4d;\r\n private _matrix1: Matrix4d;\r\n private constructor(matrix0: Matrix4d, matrix1: Matrix4d) {\r\n this._matrix0 = matrix0;\r\n this._matrix1 = matrix1;\r\n }\r\n /** Return a reference to (not copy of) the \"forward\" Matrix4d */\r\n public get transform0(): Matrix4d { return this._matrix0; }\r\n /** Return a reference to (not copy of) the \"reverse\" Matrix4d */\r\n public get transform1(): Matrix4d { return this._matrix1; }\r\n /** Create a Map4d, capturing the references to the two matrices. */\r\n public static createRefs(matrix0: Matrix4d, matrix1: Matrix4d) {\r\n return new Map4d(matrix0, matrix1);\r\n }\r\n /** Create an identity map. */\r\n public static createIdentity(): Map4d { return new Map4d(Matrix4d.createIdentity(), Matrix4d.createIdentity()); }\r\n /** Create a Map4d with given transform pair.\r\n * @returns undefined if the transforms are not inverses of each other.\r\n */\r\n public static createTransform(transform0: Transform, transform1?: Transform): Map4d | undefined {\r\n if (transform1 === undefined) {\r\n transform1 = transform0.inverse();\r\n if (transform1 === undefined)\r\n return undefined;\r\n } else {\r\n const product = transform0.multiplyTransformTransform(transform1);\r\n if (!product.isIdentity)\r\n return undefined;\r\n }\r\n return new Map4d(Matrix4d.createTransform(transform0), Matrix4d.createTransform(transform1));\r\n }\r\n /**\r\n * Create a mapping the scales and translates (no rotation) between boxes.\r\n * @param lowA low point of box A\r\n * @param highA high point of box A\r\n * @param lowB low point of box B\r\n * @param highB high point of box B\r\n */\r\n public static createBoxMap(lowA: Point3d, highA: Point3d, lowB: Point3d, highB: Point3d, result?: Map4d): Map4d | undefined {\r\n const t0 = Matrix4d.createBoxToBox(lowA, highA, lowB, highB, result ? result.transform0 : undefined);\r\n const t1 = Matrix4d.createBoxToBox(lowB, highB, lowA, highA, result ? result.transform1 : undefined);\r\n if (t0 && t1) {\r\n if (result)\r\n return result;\r\n return new Map4d(t0, t1);\r\n }\r\n return undefined;\r\n }\r\n /** Copy contents from another Map4d */\r\n public setFrom(other: Map4d) { this._matrix0.setFrom(other._matrix0), this._matrix1.setFrom(other._matrix1); }\r\n /** Return a clone of this Map4d */\r\n public clone(): Map4d { return new Map4d(this._matrix0.clone(), this._matrix1.clone()); }\r\n /** Reinitialize this Map4d as an identity. */\r\n public setIdentity() { this._matrix0.setIdentity(); this._matrix1.setIdentity(); }\r\n /** Set this map4d from a json object that the two Matrix4d values as properties named matrix0 and matrix1 */\r\n public setFromJSON(json: any): void {\r\n if (json.matrix0 && json.matrix1) {\r\n this._matrix0.setFromJSON(json.matrix0);\r\n this._matrix1.setFromJSON(json.matrix1);\r\n } else\r\n this.setIdentity();\r\n }\r\n /** Create a map4d from a json object that the two Matrix4d values as properties named matrix0 and matrix1 */\r\n public static fromJSON(json?: any): Map4d {\r\n const result = new Map4d(Matrix4d.createIdentity(), Matrix4d.createIdentity());\r\n result.setFromJSON(json);\r\n return result;\r\n }\r\n /** Return a json object `{matrix0: value0, matrix1: value1}` */\r\n public toJSON(): any { return { matrix0: this._matrix0.toJSON(), matrix1: this._matrix1.toJSON() }; }\r\n /** Test if both matrices are almost equal to those */\r\n public isAlmostEqual(other: Map4d) {\r\n return this._matrix0.isAlmostEqual(other._matrix0) && this._matrix1.isAlmostEqual(other._matrix1);\r\n }\r\n /** Create a map between a frustum and world coordinates.\r\n * @param origin lower left of frustum\r\n * @param uVector Vector from lower left rear to lower right rear\r\n * @param vVector Vector from lower left rear to upper left rear\r\n * @param wVector Vector from lower left rear to lower left front, i.e. lower left rear towards eye.\r\n * @param fraction front size divided by rear size.\r\n */\r\n public static createVectorFrustum(origin: Point3d, uVector: Vector3d, vVector: Vector3d, wVector: Vector3d, fraction: number): Map4d | undefined {\r\n fraction = Math.max(fraction, 1.0e-8);\r\n const slabToWorld = Transform.createOriginAndMatrix(origin, Matrix3d.createColumns(uVector, vVector, wVector));\r\n const worldToSlab = slabToWorld.inverse();\r\n if (!worldToSlab)\r\n return undefined;\r\n const worldToSlabMap = new Map4d(Matrix4d.createTransform(worldToSlab), Matrix4d.createTransform(slabToWorld));\r\n const slabToNPCMap = new Map4d(Matrix4d.createRowValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, fraction, 0, 0, 0, fraction - 1.0, 1), Matrix4d.createRowValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1.0 / fraction, 0, 0, 0, (1.0 - fraction) / fraction, 1));\r\n const result = slabToNPCMap.multiplyMapMap(worldToSlabMap);\r\n /*\r\n let numIdentity = 0;\r\n const productA = worldToSlabMap.matrix0.multiplyMatrixMatrix(worldToSlabMap.matrix1);\r\n if (productA.isIdentity())\r\n numIdentity++;\r\n const productB = slabToNPCMap.matrix0.multiplyMatrixMatrix(slabToNPCMap.matrix1);\r\n if (productB.isIdentity())\r\n numIdentity++;\r\n const product = result.matrix0.multiplyMatrixMatrix(result.matrix1);\r\n if (product.isIdentity())\r\n numIdentity++;\r\n if (numIdentity === 3)\r\n return result;\r\n */\r\n return result;\r\n }\r\n /** multiply this*other. The output matrices are\r\n * * output matrix0 = `this.matrix0 * other.matrix0`\r\n * * output matrix1 = 'other.matrix1 * this.matrix1`\r\n */\r\n public multiplyMapMap(other: Map4d): Map4d {\r\n return new Map4d(this._matrix0.multiplyMatrixMatrix(other._matrix0), other._matrix1.multiplyMatrixMatrix(this._matrix1));\r\n }\r\n /** Exchange the two matrices of the map. */\r\n public reverseInPlace() {\r\n const temp = this._matrix0;\r\n this._matrix0 = this._matrix1;\r\n this._matrix1 = temp;\r\n }\r\n /** return a Map4d whose transform0 is\r\n * other.transform0 * this.transform0 * other.transform1\r\n */\r\n public sandwich0This1(other: Map4d): Map4d {\r\n return new Map4d(other._matrix0.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix1)), other._matrix0.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix1)));\r\n }\r\n /** return a Map4d whose transform0 is\r\n * other.transform1 * this.transform0 * other.transform0\r\n */\r\n public sandwich1This0(other: Map4d): Map4d {\r\n return new Map4d(other._matrix1.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix0)), other._matrix1.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix0)));\r\n }\r\n} // Map4d\r\n"]}
1
+ {"version":3,"file":"Map4d.js","sourceRoot":"","sources":["../../../src/geometry4d/Map4d.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Numerics\r\n */\r\n\r\nimport { BeJSONFunctions } from \"../Geometry\";\r\nimport { Matrix3d } from \"../geometry3d/Matrix3d\";\r\nimport { Point3d, Vector3d } from \"../geometry3d/Point3dVector3d\";\r\nimport { Transform } from \"../geometry3d/Transform\";\r\nimport { Matrix4d } from \"./Matrix4d\";\r\n\r\n/**\r\n * Map4 carries two Matrix4d which are inverses of each other.\r\n * @public\r\n */\r\nexport class Map4d implements BeJSONFunctions {\r\n private _matrix0: Matrix4d;\r\n private _matrix1: Matrix4d;\r\n private constructor(matrix0: Matrix4d, matrix1: Matrix4d) {\r\n this._matrix0 = matrix0;\r\n this._matrix1 = matrix1;\r\n }\r\n /** Return a reference to (not copy of) the \"forward\" Matrix4d */\r\n public get transform0(): Matrix4d {\r\n return this._matrix0;\r\n }\r\n /** Return a reference to (not copy of) the \"reverse\" Matrix4d */\r\n public get transform1(): Matrix4d {\r\n return this._matrix1;\r\n }\r\n /** Create a Map4d, capturing the references to the two matrices. */\r\n public static createRefs(matrix0: Matrix4d, matrix1: Matrix4d) {\r\n return new Map4d(matrix0, matrix1);\r\n }\r\n /** Create an identity map. */\r\n public static createIdentity(): Map4d {\r\n return new Map4d(Matrix4d.createIdentity(), Matrix4d.createIdentity());\r\n }\r\n /**\r\n * Create a Map4d with given transform pair.\r\n * @returns undefined if the transforms are not inverses of each other.\r\n */\r\n public static createTransform(transform0: Transform, transform1?: Transform): Map4d | undefined {\r\n if (transform1 === undefined) {\r\n transform1 = transform0.inverse();\r\n if (transform1 === undefined)\r\n return undefined;\r\n } else {\r\n const product = transform0.multiplyTransformTransform(transform1);\r\n if (!product.isIdentity)\r\n return undefined;\r\n }\r\n return new Map4d(Matrix4d.createTransform(transform0), Matrix4d.createTransform(transform1));\r\n }\r\n /**\r\n * Create a mapping the scales and translates (no rotation) between boxes.\r\n * @param lowA low point of box A\r\n * @param highA high point of box A\r\n * @param lowB low point of box B\r\n * @param highB high point of box B\r\n */\r\n public static createBoxMap(\r\n lowA: Point3d, highA: Point3d, lowB: Point3d, highB: Point3d, result?: Map4d,\r\n ): Map4d | undefined {\r\n const t0 = Matrix4d.createBoxToBox(lowA, highA, lowB, highB, result ? result.transform0 : undefined);\r\n const t1 = Matrix4d.createBoxToBox(lowB, highB, lowA, highA, result ? result.transform1 : undefined);\r\n if (t0 && t1) {\r\n if (result)\r\n return result;\r\n return new Map4d(t0, t1);\r\n }\r\n return undefined;\r\n }\r\n /** Copy contents from another Map4d */\r\n public setFrom(other: Map4d) {\r\n this._matrix0.setFrom(other._matrix0);\r\n this._matrix1.setFrom(other._matrix1);\r\n }\r\n /** Return a clone of this Map4d */\r\n public clone(): Map4d {\r\n return new Map4d(this._matrix0.clone(), this._matrix1.clone());\r\n }\r\n /** Reinitialize this Map4d as an identity. */\r\n public setIdentity() {\r\n this._matrix0.setIdentity();\r\n this._matrix1.setIdentity();\r\n }\r\n /** Set this map4d from a json object that the two Matrix4d values as properties named matrix0 and matrix1 */\r\n public setFromJSON(json: any): void {\r\n if (json.matrix0 && json.matrix1) {\r\n this._matrix0.setFromJSON(json.matrix0);\r\n this._matrix1.setFromJSON(json.matrix1);\r\n } else\r\n this.setIdentity();\r\n }\r\n /** Create a map4d from a json object that the two Matrix4d values as properties named matrix0 and matrix1 */\r\n public static fromJSON(json?: any): Map4d {\r\n const result = new Map4d(Matrix4d.createIdentity(), Matrix4d.createIdentity());\r\n result.setFromJSON(json);\r\n return result;\r\n }\r\n /** Return a json object `{matrix0: value0, matrix1: value1}` */\r\n public toJSON(): any {\r\n return { matrix0: this._matrix0.toJSON(), matrix1: this._matrix1.toJSON() };\r\n }\r\n /** Test if both matrices are almost equal to those */\r\n public isAlmostEqual(other: Map4d) {\r\n return this._matrix0.isAlmostEqual(other._matrix0) && this._matrix1.isAlmostEqual(other._matrix1);\r\n }\r\n /**\r\n * Create a map between a frustum and world coordinates.\r\n * @param origin lower left of frustum\r\n * @param uVector Vector from lower left rear to lower right rear.\r\n * @param vVector Vector from lower left rear to upper left rear.\r\n * @param wVector Vector from lower left rear to lower left front, i.e. lower left rear towards eye.\r\n * @param fraction front size divided by rear size.\r\n */\r\n public static createVectorFrustum(\r\n origin: Point3d, uVector: Vector3d, vVector: Vector3d, wVector: Vector3d, fraction: number,\r\n ): Map4d | undefined {\r\n fraction = Math.max(fraction, 1.0e-8);\r\n const slabToWorld = Transform.createOriginAndMatrix(origin, Matrix3d.createColumns(uVector, vVector, wVector));\r\n const worldToSlab = slabToWorld.inverse();\r\n if (!worldToSlab)\r\n return undefined;\r\n const worldToSlabMap = new Map4d(Matrix4d.createTransform(worldToSlab), Matrix4d.createTransform(slabToWorld));\r\n const slabToNPCMap = new Map4d(\r\n Matrix4d.createRowValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, fraction, 0, 0, 0, fraction - 1.0, 1),\r\n Matrix4d.createRowValues(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1.0 / fraction, 0, 0, 0, (1.0 - fraction) / fraction, 1),\r\n );\r\n const result = slabToNPCMap.multiplyMapMap(worldToSlabMap);\r\n /*\r\n let numIdentity = 0;\r\n const productA = worldToSlabMap.matrix0.multiplyMatrixMatrix(worldToSlabMap.matrix1);\r\n if (productA.isIdentity())\r\n numIdentity++;\r\n const productB = slabToNPCMap.matrix0.multiplyMatrixMatrix(slabToNPCMap.matrix1);\r\n if (productB.isIdentity())\r\n numIdentity++;\r\n const product = result.matrix0.multiplyMatrixMatrix(result.matrix1);\r\n if (product.isIdentity())\r\n numIdentity++;\r\n if (numIdentity === 3)\r\n return result;\r\n */\r\n return result;\r\n }\r\n /**\r\n * Multiply this*other. The output matrices are\r\n * * output matrix0 = `this.matrix0 * other.matrix0`\r\n * * output matrix1 = 'other.matrix1 * this.matrix1`\r\n */\r\n public multiplyMapMap(other: Map4d): Map4d {\r\n return new Map4d(\r\n this._matrix0.multiplyMatrixMatrix(other._matrix0),\r\n other._matrix1.multiplyMatrixMatrix(this._matrix1),\r\n );\r\n }\r\n /** Exchange the two matrices of the map. */\r\n public reverseInPlace() {\r\n const temp = this._matrix0;\r\n this._matrix0 = this._matrix1;\r\n this._matrix1 = temp;\r\n }\r\n /**\r\n * Return a Map4d whose transform0 is\r\n * other.transform0 * this.transform0 * other.transform1\r\n */\r\n public sandwich0This1(other: Map4d): Map4d {\r\n return new Map4d(\r\n other._matrix0.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix1)),\r\n other._matrix0.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix1)),\r\n );\r\n }\r\n /**\r\n * Return a Map4d whose transform0 is\r\n * other.transform1 * this.transform0 * other.transform0\r\n */\r\n public sandwich1This0(other: Map4d): Map4d {\r\n return new Map4d(\r\n other._matrix1.multiplyMatrixMatrix(this._matrix0.multiplyMatrixMatrix(other._matrix0)),\r\n other._matrix1.multiplyMatrixMatrix(this._matrix1.multiplyMatrixMatrix(other._matrix0)),\r\n );\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PolyfaceBuilder.d.ts","sourceRoot":"","sources":["../../../src/polyface/PolyfaceBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PolyfaceBuilder.d.ts","sourceRoot":"","sources":["../../../src/polyface/PolyfaceBuilder.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMnD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAExD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAO,MAAM,+BAA+B,CAAC;AAEvE,OAAO,EAAW,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAMvF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA+F9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,eAAgB,SAAQ,mBAAmB;IACtD,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,QAAQ,CAAgB;IAChC,qEAAqE;IACrE,IAAW,OAAO,IAAI,aAAa,CAA0B;IAE7D,OAAO,CAAC,SAAS,CAAU;IAC3B,2EAA2E;IAC3E,IAAW,YAAY,IAAI,OAAO,CAA2B;IAC7D;;;;OAIG;IACI,aAAa,CAAC,QAAQ,GAAE,OAAc,EAAE,SAAS,GAAE,MAAqC,GAAG,eAAe;IAKjH,sFAAsF;IAC/E,uBAAuB;IAE9B,OAAO;IAOP;;;OAGG;WACW,MAAM,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe;IAG9D,6CAA6C;IACtC,qBAAqB,CAAC,SAAS,EAAE,SAAS;IAIjD;;;;MAIE;IACK,uBAAuB,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE;IAuB7F;;;OAGG;IACI,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAkBlF;;;;;;OAMG;IACI,oCAAoC,CAAC,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IA6CpF;;OAEG;IACI,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAGrC;;;OAGG;IACI,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI3C;;OAEG;IACI,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAG/C;;;OAGG;IACI,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrD,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAoB;IACvD,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAqB;IACxD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAoB;IACnD;;;;OAIG;IACI,0BAA0B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAUlI;;;;OAIG;IACI,gCAAgC,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAU7I;;;;OAIG;IACI,iCAAiC,CAAC,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAU9I;;;;OAIG;IACI,yBAAyB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAS1F;;;OAGG;IACI,+BAA+B,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhG;;;;OAIG;IACI,0BAA0B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7I;;;;;OAKG;IACI,2BAA2B,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAc1J;;OAEG;IACI,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAG3D;;;OAGG;IACI,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIjE,+GAA+G;IAC/G,OAAO,CAAC,8BAA8B;IAQtC,gDAAgD;IAChD,OAAO,CAAC,2BAA2B;IASnC;;;;;;OAMG;IACI,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;IAuGrH;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAgBlC,kFAAkF;IAClF,OAAO,CAAC,0BAA0B;IAclC,oFAAoF;IACpF,OAAO,CAAC,2BAA2B;IAcnC,4EAA4E;IAC5E,OAAO,CAAC,0BAA0B;IAelC;;;;;;OAMG;IACI,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,gBAAgB,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;IAgEzH;;;OAGG;IACH,OAAO,CAAC,8BAA8B;IActC,gFAAgF;IAChF,OAAO,CAAC,8BAA8B;IAYtC,gFAAgF;IAChF,OAAO,CAAC,+BAA+B;IAYvC,gFAAgF;IAChF,OAAO,CAAC,8BAA8B;IAYtC,0EAA0E;IAC1E,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,mBAAmB;IAgB3B;;;;OAIG;IACI,wCAAwC,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,GAAE,OAAe;IA0CzJ;;;;OAIG;IACI,sCAAsC,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY;IA8ClG;;;;OAIG;IACI,gCAAgC,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAE,OAAe;IA6BnI,OAAO,CAAC,uBAAuB;IAuB/B;;OAEG;IACI,OAAO,CAAC,IAAI,EAAE,IAAI;IA6BzB;;OAEG;IACI,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM;IAmD1F;;;;;;;OAOG;IACI,gCAAgC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ;IA0B3E;;OAEG;IACI,kBAAkB,CAAC,OAAO,EAAE,eAAe;IA2BlD;;OAEG;IACI,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAMrD;;;;OAIG;IACI,kCAAkC,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa;IAaxE,OAAO,CAAC,oCAAoC;IAe5C,OAAO,CAAC,yBAAyB;IAyDjC,OAAO,CAAC,2BAA2B;IAmBnC;;;;;OAKG;IACI,cAAc,CAAC,OAAO,EAAE,WAAW;IAmB1C;;OAEG;IACI,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO;IAmClD;;OAEG;IACI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IAuBrD;;OAEG;IACI,MAAM,CAAC,GAAG,EAAE,GAAG;IAsCtB;;;;;;OAMG;IACI,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM;IAqB5D;;;;;;OAMG;IACI,0BAA0B,CAAC,MAAM,EAAE,gBAAgB;IAkC1D;;;;;;;;;;OAUG;IACI,0BAA0B,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,gBAAgB,GAAG,SAAS,EAC/F,MAAM,EAAE,eAAe,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE;IAwD5F;;OAEG;IACI,mBAAmB,CAAC,OAAO,EAAE,eAAe;IAInD;;;;;;MAME;IACK,0BAA0B,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO;IA0BvF,2DAA2D;IACpD,kBAAkB,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,GAAE,OAAe,EAAE,SAAS,CAAC,EAAE,SAAS;IAInG;;;;OAIG;IACI,OAAO,IAAI,OAAO;IAIzB,uCAAuC;IACvB,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG;IACxC,4CAA4C;IAC5B,eAAe,CAAC,CAAC,EAAE,SAAS,GAAG,GAAG;IAClD,yCAAyC;IACzB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG;IAC5C,sCAAsC;IACtB,SAAS,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG;IACtC,8CAA8C;IAC9B,iBAAiB,CAAC,CAAC,EAAE,WAAW,GAAG,GAAG;IACtD,kDAAkD;IAClC,qBAAqB,CAAC,CAAC,EAAE,eAAe,GAAG,GAAG;IAC9D,6CAA6C;IAC7B,gBAAgB,CAAC,CAAC,EAAE,UAAU,GAAG,GAAG;IACpD,uCAAuC;IACvB,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG;IACxC,+CAA+C;IAC/B,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,GAAG;IACxD,8CAA8C;IAC9B,iBAAiB,CAAC,CAAC,EAAE,WAAW,GAAG,GAAG;IACtD,iHAAiH;IAC1G,gBAAgB,CAAC,CAAC,EAAE,aAAa;IAExC;;;;;;;OAOG;IACI,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,kBAAkB,GAAE,yBAA4E,EACpI,qBAAqB,GAAE,yBAAyB,GAAG,SAAyD;IA6B9G;;;;;;;;OAQG;IACI,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE;IAY7D;;OAEG;WACW,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,kBAAkB,GAAE,yBAA4E,GAAG,eAAe;IAM/L;;OAEG;WACW,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,eAAe;IAO5F;;OAEG;WACW,6BAA6B,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS;IAkBrH;;;;;;;;;OASG;IACI,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,GAAE,OAAe;IAclI;;;;;;;;;;OAUG;IACI,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,SAAS;IAiHvG;;;OAGG;WACW,4BAA4B,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,eAAe,GAAG,SAAS;IAMnH;;;;;;;;;OASG;IACI,wCAAwC,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,YAAY,GAAG,oBAAoB,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,YAAY,GAAG,oBAAoB;IAUlK,OAAO,CAAC,yBAAyB;IAuBjC;;;;;;;;OAQG;IACI,eAAe,CAAC,UAAU,EAAE,oBAAoB,GAAG,OAAO,EAAE,GAAG,cAAc,EAAE,WAAW,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,EAAE,cAAc,GAAE,MAAW;IAgBtJ,sGAAsG;IACtG,OAAO,CAAC,cAAc;IAWtB;;MAEE;IACF,OAAO,CAAC,YAAY;IAyCpB;;;;;;OAMG;IACI,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,GAAE,OAAe,GAAG,OAAO;CA0C3H"}
@@ -43,7 +43,6 @@ const IndexedEdgeMatcher_1 = require("./IndexedEdgeMatcher");
43
43
  const IndexedPolyfaceVisitor_1 = require("./IndexedPolyfaceVisitor");
44
44
  const Polyface_1 = require("./Polyface");
45
45
  const PolyfaceQuery_1 = require("./PolyfaceQuery");
46
- /* eslint-disable @typescript-eslint/naming-convention, @typescript-eslint/prefer-for-of */
47
46
  /**
48
47
  * A FacetSector
49
48
  * * initially holds coordinate data for a place where xyz and sectionDerivative are known
@@ -1186,16 +1185,14 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
1186
1185
  this.addBetweenLineStringsWithStoredIndices(strokeA, strokeB);
1187
1186
  }
1188
1187
  else if (stroke0 instanceof ParityRegion_1.ParityRegion) {
1189
- for (let i = 0; i < stroke0.children.length; i++) { // eslint-disable-line @typescript-eslint/prefer-for-of
1190
- this.addBetweenRotatedStrokeSets(stroke0.children[i], transformA, vA, transformB, vB);
1188
+ for (const child of stroke0.children) {
1189
+ this.addBetweenRotatedStrokeSets(child, transformA, vA, transformB, vB);
1191
1190
  }
1192
1191
  }
1193
1192
  else if (stroke0 instanceof CurveCollection_1.CurveChain) {
1194
- const chainA = stroke0.children;
1195
- for (let i = 0; i < chainA.length; i++) { // eslint-disable-line @typescript-eslint/prefer-for-of
1196
- const cpA = chainA[i];
1197
- if (cpA instanceof LineString3d_1.LineString3d) {
1198
- this.addBetweenRotatedStrokeSets(cpA, transformA, vA, transformB, vB);
1193
+ for (const child of stroke0.children) {
1194
+ if (child instanceof LineString3d_1.LineString3d) {
1195
+ this.addBetweenRotatedStrokeSets(child, transformA, vA, transformB, vB);
1199
1196
  }
1200
1197
  }
1201
1198
  }
@@ -1230,8 +1227,8 @@ class PolyfaceBuilder extends GeometryHandler_1.NullGeometryHandler {
1230
1227
  let stroke0;
1231
1228
  let stroke1;
1232
1229
  const sectionMaps = [];
1233
- for (let i = 0; i < contours.length; i++) { // eslint-disable-line @typescript-eslint/prefer-for-of
1234
- sectionMaps.push(StrokeCountChain_1.StrokeCountSection.createForParityRegionOrChain(contours[i].curves, this._options));
1230
+ for (const contour of contours) {
1231
+ sectionMaps.push(StrokeCountChain_1.StrokeCountSection.createForParityRegionOrChain(contour.curves, this._options));
1235
1232
  }
1236
1233
  if (StrokeCountChain_1.StrokeCountSection.enforceStrokeCountCompatibility(sectionMaps)) {
1237
1234
  StrokeCountChain_1.StrokeCountSection.enforceCompatibleDistanceSums(sectionMaps);