@itwin/core-geometry 3.6.0-dev.8 → 4.0.0-dev.10

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 (171) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/LICENSE.md +1 -1
  3. package/lib/cjs/Geometry.d.ts +28 -17
  4. package/lib/cjs/Geometry.d.ts.map +1 -1
  5. package/lib/cjs/Geometry.js +52 -25
  6. package/lib/cjs/Geometry.js.map +1 -1
  7. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts +10 -6
  8. package/lib/cjs/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  9. package/lib/cjs/curve/CurveChainWithDistanceIndex.js +29 -31
  10. package/lib/cjs/curve/CurveChainWithDistanceIndex.js.map +1 -1
  11. package/lib/cjs/curve/CurveCurve.d.ts +11 -8
  12. package/lib/cjs/curve/CurveCurve.d.ts.map +1 -1
  13. package/lib/cjs/curve/CurveCurve.js +16 -12
  14. package/lib/cjs/curve/CurveCurve.js.map +1 -1
  15. package/lib/cjs/curve/CurveCurveIntersectXY.d.ts +5 -1
  16. package/lib/cjs/curve/CurveCurveIntersectXY.d.ts.map +1 -1
  17. package/lib/cjs/curve/CurveCurveIntersectXY.js +11 -10
  18. package/lib/cjs/curve/CurveCurveIntersectXY.js.map +1 -1
  19. package/lib/cjs/geometry3d/Angle.d.ts +19 -0
  20. package/lib/cjs/geometry3d/Angle.d.ts.map +1 -1
  21. package/lib/cjs/geometry3d/Angle.js +39 -0
  22. package/lib/cjs/geometry3d/Angle.js.map +1 -1
  23. package/lib/cjs/geometry3d/AngleSweep.d.ts +1 -0
  24. package/lib/cjs/geometry3d/AngleSweep.d.ts.map +1 -1
  25. package/lib/cjs/geometry3d/AngleSweep.js +1 -0
  26. package/lib/cjs/geometry3d/AngleSweep.js.map +1 -1
  27. package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts +1 -0
  28. package/lib/cjs/geometry3d/CoincidentGeometryOps.d.ts.map +1 -1
  29. package/lib/cjs/geometry3d/CoincidentGeometryOps.js +3 -0
  30. package/lib/cjs/geometry3d/CoincidentGeometryOps.js.map +1 -1
  31. package/lib/cjs/geometry3d/GrowableXYArray.d.ts +1 -1
  32. package/lib/cjs/geometry3d/GrowableXYArray.js +1 -1
  33. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
  34. package/lib/cjs/geometry3d/Matrix3d.d.ts +369 -254
  35. package/lib/cjs/geometry3d/Matrix3d.d.ts.map +1 -1
  36. package/lib/cjs/geometry3d/Matrix3d.js +807 -660
  37. package/lib/cjs/geometry3d/Matrix3d.js.map +1 -1
  38. package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts +71 -14
  39. package/lib/cjs/geometry3d/OrderedRotationAngles.d.ts.map +1 -1
  40. package/lib/cjs/geometry3d/OrderedRotationAngles.js +204 -114
  41. package/lib/cjs/geometry3d/OrderedRotationAngles.js.map +1 -1
  42. package/lib/cjs/geometry3d/Point2dVector2d.d.ts +1 -0
  43. package/lib/cjs/geometry3d/Point2dVector2d.d.ts.map +1 -1
  44. package/lib/cjs/geometry3d/Point2dVector2d.js +1 -0
  45. package/lib/cjs/geometry3d/Point2dVector2d.js.map +1 -1
  46. package/lib/cjs/geometry3d/Point3dVector3d.d.ts +16 -16
  47. package/lib/cjs/geometry3d/Point3dVector3d.d.ts.map +1 -1
  48. package/lib/cjs/geometry3d/Point3dVector3d.js +21 -18
  49. package/lib/cjs/geometry3d/Point3dVector3d.js.map +1 -1
  50. package/lib/cjs/geometry3d/Segment1d.d.ts +1 -1
  51. package/lib/cjs/geometry3d/Segment1d.js +1 -1
  52. package/lib/cjs/geometry3d/Segment1d.js.map +1 -1
  53. package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts +49 -25
  54. package/lib/cjs/geometry3d/YawPitchRollAngles.d.ts.map +1 -1
  55. package/lib/cjs/geometry3d/YawPitchRollAngles.js +146 -50
  56. package/lib/cjs/geometry3d/YawPitchRollAngles.js.map +1 -1
  57. package/lib/cjs/numerics/Polynomials.d.ts +12 -0
  58. package/lib/cjs/numerics/Polynomials.d.ts.map +1 -1
  59. package/lib/cjs/numerics/Polynomials.js +14 -0
  60. package/lib/cjs/numerics/Polynomials.js.map +1 -1
  61. package/lib/cjs/polyface/PolyfaceBuilder.d.ts +5 -4
  62. package/lib/cjs/polyface/PolyfaceBuilder.d.ts.map +1 -1
  63. package/lib/cjs/polyface/PolyfaceBuilder.js +50 -10
  64. package/lib/cjs/polyface/PolyfaceBuilder.js.map +1 -1
  65. package/lib/cjs/polyface/PolyfaceQuery.d.ts +82 -0
  66. package/lib/cjs/polyface/PolyfaceQuery.d.ts.map +1 -1
  67. package/lib/cjs/polyface/PolyfaceQuery.js +150 -1
  68. package/lib/cjs/polyface/PolyfaceQuery.js.map +1 -1
  69. package/lib/cjs/polyface/multiclip/OffsetMeshContext.d.ts +202 -0
  70. package/lib/cjs/polyface/multiclip/OffsetMeshContext.d.ts.map +1 -0
  71. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js +1038 -0
  72. package/lib/cjs/polyface/multiclip/OffsetMeshContext.js.map +1 -0
  73. package/lib/cjs/serialization/GeometrySamples.d.ts +4 -1
  74. package/lib/cjs/serialization/GeometrySamples.d.ts.map +1 -1
  75. package/lib/cjs/serialization/GeometrySamples.js +14 -6
  76. package/lib/cjs/serialization/GeometrySamples.js.map +1 -1
  77. package/lib/cjs/serialization/IModelJsonSchema.d.ts +1 -1
  78. package/lib/cjs/serialization/IModelJsonSchema.js.map +1 -1
  79. package/lib/cjs/topology/Graph.d.ts +113 -7
  80. package/lib/cjs/topology/Graph.d.ts.map +1 -1
  81. package/lib/cjs/topology/Graph.js +185 -7
  82. package/lib/cjs/topology/Graph.js.map +1 -1
  83. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +38 -0
  84. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -0
  85. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js +82 -0
  86. package/lib/cjs/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -0
  87. package/lib/esm/Geometry.d.ts +28 -17
  88. package/lib/esm/Geometry.d.ts.map +1 -1
  89. package/lib/esm/Geometry.js +52 -25
  90. package/lib/esm/Geometry.js.map +1 -1
  91. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts +10 -6
  92. package/lib/esm/curve/CurveChainWithDistanceIndex.d.ts.map +1 -1
  93. package/lib/esm/curve/CurveChainWithDistanceIndex.js +30 -32
  94. package/lib/esm/curve/CurveChainWithDistanceIndex.js.map +1 -1
  95. package/lib/esm/curve/CurveCurve.d.ts +11 -8
  96. package/lib/esm/curve/CurveCurve.d.ts.map +1 -1
  97. package/lib/esm/curve/CurveCurve.js +16 -12
  98. package/lib/esm/curve/CurveCurve.js.map +1 -1
  99. package/lib/esm/curve/CurveCurveIntersectXY.d.ts +5 -1
  100. package/lib/esm/curve/CurveCurveIntersectXY.d.ts.map +1 -1
  101. package/lib/esm/curve/CurveCurveIntersectXY.js +11 -10
  102. package/lib/esm/curve/CurveCurveIntersectXY.js.map +1 -1
  103. package/lib/esm/geometry3d/Angle.d.ts +19 -0
  104. package/lib/esm/geometry3d/Angle.d.ts.map +1 -1
  105. package/lib/esm/geometry3d/Angle.js +39 -0
  106. package/lib/esm/geometry3d/Angle.js.map +1 -1
  107. package/lib/esm/geometry3d/AngleSweep.d.ts +1 -0
  108. package/lib/esm/geometry3d/AngleSweep.d.ts.map +1 -1
  109. package/lib/esm/geometry3d/AngleSweep.js +1 -0
  110. package/lib/esm/geometry3d/AngleSweep.js.map +1 -1
  111. package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts +1 -0
  112. package/lib/esm/geometry3d/CoincidentGeometryOps.d.ts.map +1 -1
  113. package/lib/esm/geometry3d/CoincidentGeometryOps.js +3 -0
  114. package/lib/esm/geometry3d/CoincidentGeometryOps.js.map +1 -1
  115. package/lib/esm/geometry3d/GrowableXYArray.d.ts +1 -1
  116. package/lib/esm/geometry3d/GrowableXYArray.js +1 -1
  117. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
  118. package/lib/esm/geometry3d/Matrix3d.d.ts +369 -254
  119. package/lib/esm/geometry3d/Matrix3d.d.ts.map +1 -1
  120. package/lib/esm/geometry3d/Matrix3d.js +807 -660
  121. package/lib/esm/geometry3d/Matrix3d.js.map +1 -1
  122. package/lib/esm/geometry3d/OrderedRotationAngles.d.ts +71 -14
  123. package/lib/esm/geometry3d/OrderedRotationAngles.d.ts.map +1 -1
  124. package/lib/esm/geometry3d/OrderedRotationAngles.js +205 -115
  125. package/lib/esm/geometry3d/OrderedRotationAngles.js.map +1 -1
  126. package/lib/esm/geometry3d/Point2dVector2d.d.ts +1 -0
  127. package/lib/esm/geometry3d/Point2dVector2d.d.ts.map +1 -1
  128. package/lib/esm/geometry3d/Point2dVector2d.js +1 -0
  129. package/lib/esm/geometry3d/Point2dVector2d.js.map +1 -1
  130. package/lib/esm/geometry3d/Point3dVector3d.d.ts +16 -16
  131. package/lib/esm/geometry3d/Point3dVector3d.d.ts.map +1 -1
  132. package/lib/esm/geometry3d/Point3dVector3d.js +21 -18
  133. package/lib/esm/geometry3d/Point3dVector3d.js.map +1 -1
  134. package/lib/esm/geometry3d/Segment1d.d.ts +1 -1
  135. package/lib/esm/geometry3d/Segment1d.js +1 -1
  136. package/lib/esm/geometry3d/Segment1d.js.map +1 -1
  137. package/lib/esm/geometry3d/YawPitchRollAngles.d.ts +49 -25
  138. package/lib/esm/geometry3d/YawPitchRollAngles.d.ts.map +1 -1
  139. package/lib/esm/geometry3d/YawPitchRollAngles.js +146 -50
  140. package/lib/esm/geometry3d/YawPitchRollAngles.js.map +1 -1
  141. package/lib/esm/numerics/Polynomials.d.ts +12 -0
  142. package/lib/esm/numerics/Polynomials.d.ts.map +1 -1
  143. package/lib/esm/numerics/Polynomials.js +14 -0
  144. package/lib/esm/numerics/Polynomials.js.map +1 -1
  145. package/lib/esm/polyface/PolyfaceBuilder.d.ts +5 -4
  146. package/lib/esm/polyface/PolyfaceBuilder.d.ts.map +1 -1
  147. package/lib/esm/polyface/PolyfaceBuilder.js +50 -10
  148. package/lib/esm/polyface/PolyfaceBuilder.js.map +1 -1
  149. package/lib/esm/polyface/PolyfaceQuery.d.ts +82 -0
  150. package/lib/esm/polyface/PolyfaceQuery.d.ts.map +1 -1
  151. package/lib/esm/polyface/PolyfaceQuery.js +148 -0
  152. package/lib/esm/polyface/PolyfaceQuery.js.map +1 -1
  153. package/lib/esm/polyface/multiclip/OffsetMeshContext.d.ts +202 -0
  154. package/lib/esm/polyface/multiclip/OffsetMeshContext.d.ts.map +1 -0
  155. package/lib/esm/polyface/multiclip/OffsetMeshContext.js +1032 -0
  156. package/lib/esm/polyface/multiclip/OffsetMeshContext.js.map +1 -0
  157. package/lib/esm/serialization/GeometrySamples.d.ts +4 -1
  158. package/lib/esm/serialization/GeometrySamples.d.ts.map +1 -1
  159. package/lib/esm/serialization/GeometrySamples.js +14 -6
  160. package/lib/esm/serialization/GeometrySamples.js.map +1 -1
  161. package/lib/esm/serialization/IModelJsonSchema.d.ts +1 -1
  162. package/lib/esm/serialization/IModelJsonSchema.js.map +1 -1
  163. package/lib/esm/topology/Graph.d.ts +113 -7
  164. package/lib/esm/topology/Graph.d.ts.map +1 -1
  165. package/lib/esm/topology/Graph.js +185 -7
  166. package/lib/esm/topology/Graph.js.map +1 -1
  167. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts +38 -0
  168. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.d.ts.map +1 -0
  169. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js +78 -0
  170. package/lib/esm/topology/HalfEdgeGraphFromIndexedLoopsContext.js.map +1 -0
  171. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -1,6 +1,33 @@
1
1
  # Change Log - @itwin/core-geometry
2
2
 
3
- This log was last generated on Wed, 07 Dec 2022 19:12:37 GMT and should not be manually modified.
3
+ This log was last generated on Thu, 26 Jan 2023 22:53:27 GMT and should not be manually modified.
4
+
5
+ ## 3.5.5
6
+ Thu, 26 Jan 2023 22:53:27 GMT
7
+
8
+ _Version update only_
9
+
10
+ ## 3.5.4
11
+ Wed, 18 Jan 2023 15:27:15 GMT
12
+
13
+ _Version update only_
14
+
15
+ ## 3.5.3
16
+ Fri, 13 Jan 2023 17:23:07 GMT
17
+
18
+ _Version update only_
19
+
20
+ ## 3.5.2
21
+ Wed, 11 Jan 2023 16:46:30 GMT
22
+
23
+ ### Updates
24
+
25
+ - PolyfaceQuery method to test for convexity
26
+
27
+ ## 3.5.1
28
+ Thu, 15 Dec 2022 16:38:28 GMT
29
+
30
+ _Version update only_
4
31
 
5
32
  ## 3.5.0
6
33
  Wed, 07 Dec 2022 19:12:37 GMT
package/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # MIT License
2
2
 
3
- Copyright © 2017-2022 Bentley Systems, Incorporated. All rights reserved.
3
+ Copyright © 2017-2023 Bentley Systems, Incorporated. All rights reserved.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
6
 
@@ -7,6 +7,11 @@ import { Point3d, Vector3d, XYZ } from "./geometry3d/Point3dVector3d";
7
7
  import { XAndY } from "./geometry3d/XYZProps";
8
8
  import { Point4d } from "./geometry4d/Point4d";
9
9
  /** Enumeration of the 6 possible orderings of XYZ axis order
10
+ *
11
+ * * **Note:** There are 3 axis order with right hand system (XYZ = 0, YZX = 1, ZXY = 2) and 3 axis order with
12
+ * left hand system (XZY = 4, YXZ = 5, ZYX = 6). Note that AxisOrder is encoding the handedness as well. Cross
13
+ * product of the i_th axis in an ordering (i=0,1,2), with the i+1_th in that ordering, will produce the i+2_th
14
+ * axis in that ordering.
10
15
  * @public
11
16
  */
12
17
  export declare enum AxisOrder {
@@ -34,7 +39,7 @@ export declare enum AxisIndex {
34
39
  /** 2 axis is index 2 */
35
40
  Z = 2
36
41
  }
37
- /** Standard views. Used in `Matrix3d.createStandardViewAxes (index: StandardViewIndex, worldToView :boolean)`
42
+ /** Standard views. Used in `Matrix3d.createStandardViewAxes(index: StandardViewIndex, invert: boolean)`
38
43
  * @public
39
44
  */
40
45
  export declare enum StandardViewIndex {
@@ -50,9 +55,9 @@ export declare enum StandardViewIndex {
50
55
  Front = 5,
51
56
  /** negative X to right, Z up */
52
57
  Back = 6,
53
- /** View towards origin from (-1,-1,1) */
58
+ /** isometric: view towards origin from (-1,-1,1) */
54
59
  Iso = 7,
55
- /** View towards origin from (1,-1,1) */
60
+ /** right isometric: view towards origin from (1,-1,1) */
56
61
  RightIso = 8
57
62
  }
58
63
  /** Enumeration among choice for how a coordinate transformation should incorporate scaling.
@@ -274,7 +279,7 @@ export declare class Geometry {
274
279
  static isAlmostEqualXAndY(a: XAndY, b: XAndY): boolean;
275
280
  /**
276
281
  * Toleranced equality test, using caller-supplied tolerance.
277
- * If no tolerance is given, use smallMetricDistance
282
+ * If no tolerance is given, use smallMetricDistance.
278
283
  */
279
284
  static isDistanceWithinTol(distance: number, tol?: number): boolean;
280
285
  /** Toleranced equality test, using `smallMetricDistance` tolerance. */
@@ -287,9 +292,9 @@ export declare class Geometry {
287
292
  * */
288
293
  static cyclic3dAxis(axis: number): number;
289
294
  /** Return the AxisOrder for which axisIndex is the first named axis.
290
- * * `axisIndex===0`returns AxisOrder.XYZ
291
- * * `axisIndex===1`returns AxisOrder.YZX
292
- * * `axisIndex===2`returns AxisOrder.ZXY
295
+ * * `axisIndex === 0` returns `AxisOrder.XYZ`
296
+ * * `axisIndex === 1` returns `AxisOrder.YZX`
297
+ * * `axisIndex === 2` returns `AxisOrder.ZXY`
293
298
  */
294
299
  static axisIndexToRightHandedAxisOrder(axisIndex: AxisIndex): AxisOrder;
295
300
  /** Return the largest absolute distance from a to either of b0 or b1 */
@@ -344,17 +349,16 @@ export declare class Geometry {
344
349
  static distanceXYZXYZ(x0: number, y0: number, z0: number, x1: number, y1: number, z1: number): number;
345
350
  /** Returns Returns the triple product of 3 vectors provided as x,y,z number sequences.
346
351
  *
347
- * * The triple product is the determinant of the 3x3 matrix with the 9 numbers placed in either row or column order.
352
+ * * The triple product is the determinant of the 3x3 matrix with the 9 numbers (3 vectors placed in 3 rows).
348
353
  * * The triple product is positive if the 3 vectors form a right handed coordinate system.
349
354
  * * The triple product is negative if the 3 vectors form a left handed coordinate system.
350
355
  * * Treating the 9 numbers as 3 vectors U, V, W, any of these formulas gives the same result:
351
- *
352
- * ** U dot (V cross W)
353
- * ** V dot (W cross U)
354
- * ** W dot (U cross V)
355
- * ** (-U dot (W cross V)) -- (note the negative -- reversing cross product order changes the sign)
356
- * ** (-V dot (U cross W)) -- (note the negative -- reversing cross product order changes the sign)
357
- * ** (-W dot (V cross U)) -- (note the negative -- reversing cross product order changes the sign)
356
+ * * U dot (V cross W)
357
+ * * V dot (W cross U)
358
+ * * W dot (U cross V)
359
+ * * (-U dot (W cross V)) -- (note the negative -- reversing cross product order changes the sign)
360
+ * * (-V dot (U cross W)) -- (note the negative -- reversing cross product order changes the sign)
361
+ * * (-W dot (V cross U)) -- (note the negative -- reversing cross product order changes the sign)
358
362
  * * the triple product is 6 times the (signed) volume of the tetrahedron with the three vectors as edges from a common vertex.
359
363
  */
360
364
  static tripleProduct(ux: number, uy: number, uz: number, vx: number, vy: number, vz: number, wx: number, wy: number, wz: number): number;
@@ -412,9 +416,16 @@ export declare class Geometry {
412
416
  static resolveValue<T>(value: T | undefined, defaultValue: T): T;
413
417
  /** If given value matches a target, return undefined. Otherwise return the value. */
414
418
  static resolveToUndefined<T>(value: T | undefined, targetValue: T): T | undefined;
415
- /** simple interpolation between values, but choosing (based on fraction) a or b as starting point for maximum accuracy. */
419
+ /** Simple interpolation between values, but choosing (based on fraction) a or b as starting point for maximum accuracy. */
416
420
  static interpolate(a: number, f: number, b: number): number;
417
- /** given an axisOrder (e.g. XYZ, YZX, ZXY, XZYLeftHanded etc) and an (integer) offset, resolve to an axis index. */
421
+ /**
422
+ * Given an axisOrder (e.g. XYZ, YZX, etc) and an index, returns the axis index at the given index.
423
+ * * For example, if axisOrder = XYZ, then for index 0 returns X (or axis index 0), for index 1 returns
424
+ * Y (or axis index 1), and for index 2 returns Z (or axis index 2). For indexes greater than 2 or smaller
425
+ * than 0, it returns cyclic axis index. See Geometry.cyclic3dAxis for more info.
426
+ * * Another example: if axisOrder = ZYX, then for index 0 returns Z (or axis index 2), for index 1 returns
427
+ * Y (or axis index 1), and for index 2 returns X (or axis index 0).
428
+ * */
418
429
  static axisOrderToAxis(order: AxisOrder, index: number): number;
419
430
  /** Return (a modulo period), e.g. for use as a cyclic index. Both a and period may be negative. */
420
431
  static modulo(a: number, period: number): number;
@@ -1 +1 @@
1
- {"version":3,"file":"Geometry.d.ts","sourceRoot":"","sources":["../../src/Geometry.ts"],"names":[],"mappings":"AAKA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAI/C;;GAEG;AACH,oBAAY,SAAS;IACnB,2CAA2C;IAC3C,GAAG,IAAI;IACP,2CAA2C;IAC3C,GAAG,IAAI;IACP,2CAA2C;IAC3C,GAAG,IAAI;IACP,0CAA0C;IAC1C,GAAG,IAAI;IACP,0CAA0C;IAC1C,GAAG,IAAI;IACP,0CAA0C;IAC1C,GAAG,IAAI;CACR;AACD;;GAEG;AACH,oBAAY,SAAS;IACnB,wBAAwB;IACxB,CAAC,IAAI;IACL,wBAAwB;IACxB,CAAC,IAAI;IACL,wBAAwB;IACxB,CAAC,IAAI;CACN;AAED;;GAEG;AACH,oBAAY,iBAAiB;IAC3B,uBAAuB;IACvB,GAAG,IAAI;IACP,gCAAgC;IAChC,MAAM,IAAI;IACV,gCAAgC;IAChC,IAAI,IAAI;IACR,wBAAwB;IACxB,KAAK,IAAI;IACT,uBAAuB;IACvB,KAAK,IAAI;IACT,gCAAgC;IAChC,IAAI,IAAI;IACR,yCAAyC;IACzC,GAAG,IAAI;IACP,wCAAwC;IACxC,QAAQ,IAAI;CACb;AAED;;GAEG;AACH,oBAAY,eAAe;IACzB,+BAA+B;IAC/B,IAAI,IAAI;IACR,yFAAyF;IACzF,qBAAqB,IAAI;IACzB,gGAAgG;IAChG,0BAA0B,IAAI;CAC/B;AACD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,qBAAqB;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AACD;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;KAGC;IACD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC;;;;;SAKK;IACL,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrD;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC;IAEnC;;;OAGG;IACH,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrD;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IACzC,8BAA8B;IAC9B,OAAO,IAAI,MAAM,CAAC;IAClB,8BAA8B;IAC9B,OAAO,IAAI,MAAM,CAAC;IAClB,8BAA8B;IAC9B,OAAO,IAAI,MAAM,CAAC;CAEnB;AACD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC;IAC7B,wDAAwD;IACxD,MAAM,IAAI,GAAG,CAAC;CACf;AAED;;;;GAIG;AACH,oBAAY,UAAU,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC;AAE1H;;;;;;GAMG;AACH,oBAAY,eAAe,GACzB,UAAU,GACV;IAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC7B;IAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC7B;IAAC,MAAM;IAAE,MAAM;CAAC,CAAC;AAEnB;;;;;;;GAOG;AACH,qBAAa,QAAQ;IACnB,0DAA0D;IAC1D,gBAAuB,mBAAmB,YAAU;IACpD,uCAAuC;IACvC,gBAAuB,0BAA0B,SAAW;IAC5D,qDAAqD;IACrD,gBAAuB,iBAAiB,SAAW;IACnD,oCAAoC;IACpC,gBAAuB,wBAAwB,SAAW;IAC1D,qDAAqD;IACrD,gBAAuB,iBAAiB,WAAW;IACnD,yDAAyD;IACzD,gBAAuB,iBAAiB,QAAQ;IAChD;;OAEG;IACH,gBAAuB,mBAAmB,eAAU;IACpD,+EAA+E;IAC/E,gBAAuB,aAAa,SAAW;IAC/C;;OAEG;IACH,gBAAuB,qBAAqB,kBAAU;IACtD;;OAEG;IACH,gBAAuB,cAAc,iBAAU;IAC/C;;OAEG;WACW,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO;IAIlD;OACG;WACW,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO;IAGvC,0EAA0E;IAC1E,gBAAuB,gCAAgC,SAA2B;IAClF,iHAAiH;WACnG,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,WAAW,GAAE,MAAY,GAAG,MAAM;IAMzG;;;KAGC;WACa,qBAAqB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAGlE;;;OAGG;WACW,4BAA4B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAGzE,uDAAuD;WACzC,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO;IAK3E,sHAAsH;WACxG,mCAAmC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO;IAIzG,oEAAoE;WACtD,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,GAAE,MAAqC,GAAG,OAAO;IAWrI,+DAA+D;WACjD,uBAAuB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAGpE,oFAAoF;WACtE,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IACpE;;OAEG;WACW,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO;IACxD,sFAAsF;WACxE,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IACtE,sFAAsF;WACxE,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO;IACvE,sFAAsF;WACxE,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IACpE,sFAAsF;WACxE,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO;IAEvE;;;OAGG;WACW,iBAAiB,CAAC,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAWrE;;;OAGG;WACW,iBAAiB,CAAC,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAWrE;;OAEG;WACW,kBAAkB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAe5D;;OAEG;WACW,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAGrD,+DAA+D;WACjD,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAGzD;;MAEE;WACY,qBAAqB,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAU7G;;MAEE;WACY,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO;IAIhE;;MAEE;WACY,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO;IAM7D;;;OAGG;WACW,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO;IAK1E,uEAAuE;WACzD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI9D,yEAAyE;WAC3D,4BAA4B,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO;IAG5E;;;UAGM;WACQ,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAchD;;;;OAIG;WACW,+BAA+B,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAM9E,wEAAwE;WAC1D,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IACnE,6DAA6D;WAC/C,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAGhE,2DAA2D;WAC7C,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIpD,oDAAoD;WACtC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAM7D;;;;OAIG;WACW,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAQzG,iDAAiD;WACnC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAMjD,kDAAkD;WACpC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAKjD,2FAA2F;WAC7E,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IACxD,mDAAmD;WACrC,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAC/D,6BAA6B;WACf,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAEvC,mGAAmG;WACrF,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IACpE,uGAAuG;WACzF,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAC3E,qHAAqH;WACvG,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAChF,2GAA2G;WAC7F,qBAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IACvF;;;;;;OAMG;WACW,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAGlF;;;;;;;;OAQG;WACW,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAG5G;;;;;;;;;;;;;;OAcG;WACW,aAAa,CACzB,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAClC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAClC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAK7C;OACG;WACW,cAAc,CAC1B,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAC9C,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAC9C,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAC9C,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAMzD,kFAAkF;WACpE,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAGlE;;;;;;;;KAQC;WACa,kBAAkB,CAC9B,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAClC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAmB7C;;OAEG;WACW,gBAAgB,CAC5B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAC/B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAC/B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAO1C;;OAEG;WACW,uBAAuB,CACnC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,GAAG,MAAM;IAM3B,wDAAwD;WAC1C,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAItF,wDAAwD;WAC1C,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ;IAOrI,8EAA8E;WAChE,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAMnH,sDAAsD;WACxC,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAG9G,sDAAsD;WACxC,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAGpF;;;;;;OAMG;WACW,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAStE;;;;;OAKG;WACW,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IACpE,iFAAiF;WACnE,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,YAAY,GAAE,MAAU,GAAG,MAAM;IAGxF,gFAAgF;WAClE,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC;IAGvE,uFAAuF;WACzE,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAIxF,2HAA2H;WAC7G,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIlE,oHAAoH;WACtG,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAItE,oGAAoG;WACtF,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IAoBvD,wDAAwD;WAC1C,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM;IAC3C;;OAEG;WACW,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMnG;;OAEG;WACW,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,GAAE,MAAuC,GAAG,MAAM,GAAG,SAAS;IAM7J;;;OAGG;WACW,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,GAAG,SAAS;IA4BxG;;OAEG;WACW,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IAMvG,kHAAkH;WACpG,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,MAAU,EAClG,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAM7C,oHAAoH;WACtG,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,MAAU,GAAG,MAAM,GAAG,SAAS;IAGnG,gIAAgI;WAClH,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,GAAE,MAAU,GAAG,OAAO;IAYvE;OACG;WACW,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,GAAE,MAAU,GAAG,OAAO;IAUtG;;;MAGE;WACY,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,SAAI,EAAE,QAAQ,SAAM,GAAG,MAAM;IAa9F;;;OAGG;WACW,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,OAAc,GAAG,OAAO;IACjE;;;OAGG;WACW,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IACxE;;;;;OAKG;WACW,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAWzE;;;OAGG;WACW,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAG1E,6CAA6C;WAC/B,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,OAAO;IAkB/F,qCAAqC;WACvB,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,EACvE,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO;IAmBjD,2DAA2D;WAC7C,uBAAuB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,YAAY,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,YAAY,GAAG,SAAS,EAClH,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO;IAmB3D;;;;;;;;;;OAUG;WACW,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,qBAAqB,GAAE,OAAc,GAAG,OAAO;IAQ3H;;MAEE;WACY,YAAY,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,EAAE,GAAG,SAAS;CASxF;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,8CAA8C;IAC9C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"Geometry.d.ts","sourceRoot":"","sources":["../../src/Geometry.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,11 @@ const Point2dVector2d_1 = require("./geometry3d/Point2dVector2d");
9
9
  const Point3dVector3d_1 = require("./geometry3d/Point3dVector3d");
10
10
  /* eslint-disable @typescript-eslint/naming-convention, no-empty */
11
11
  /** Enumeration of the 6 possible orderings of XYZ axis order
12
+ *
13
+ * * **Note:** There are 3 axis order with right hand system (XYZ = 0, YZX = 1, ZXY = 2) and 3 axis order with
14
+ * left hand system (XZY = 4, YXZ = 5, ZYX = 6). Note that AxisOrder is encoding the handedness as well. Cross
15
+ * product of the i_th axis in an ordering (i=0,1,2), with the i+1_th in that ordering, will produce the i+2_th
16
+ * axis in that ordering.
12
17
  * @public
13
18
  */
14
19
  var AxisOrder;
@@ -38,7 +43,7 @@ var AxisIndex;
38
43
  /** 2 axis is index 2 */
39
44
  AxisIndex[AxisIndex["Z"] = 2] = "Z";
40
45
  })(AxisIndex = exports.AxisIndex || (exports.AxisIndex = {}));
41
- /** Standard views. Used in `Matrix3d.createStandardViewAxes (index: StandardViewIndex, worldToView :boolean)`
46
+ /** Standard views. Used in `Matrix3d.createStandardViewAxes(index: StandardViewIndex, invert: boolean)`
42
47
  * @public
43
48
  */
44
49
  var StandardViewIndex;
@@ -55,9 +60,9 @@ var StandardViewIndex;
55
60
  StandardViewIndex[StandardViewIndex["Front"] = 5] = "Front";
56
61
  /** negative X to right, Z up */
57
62
  StandardViewIndex[StandardViewIndex["Back"] = 6] = "Back";
58
- /** View towards origin from (-1,-1,1) */
63
+ /** isometric: view towards origin from (-1,-1,1) */
59
64
  StandardViewIndex[StandardViewIndex["Iso"] = 7] = "Iso";
60
- /** View towards origin from (1,-1,1) */
65
+ /** right isometric: view towards origin from (1,-1,1) */
61
66
  StandardViewIndex[StandardViewIndex["RightIso"] = 8] = "RightIso";
62
67
  })(StandardViewIndex = exports.StandardViewIndex || (exports.StandardViewIndex = {}));
63
68
  /** Enumeration among choice for how a coordinate transformation should incorporate scaling.
@@ -242,7 +247,7 @@ class Geometry {
242
247
  }
243
248
  /**
244
249
  * Toleranced equality test, using caller-supplied tolerance.
245
- * If no tolerance is given, use smallMetricDistance
250
+ * If no tolerance is given, use smallMetricDistance.
246
251
  */
247
252
  static isDistanceWithinTol(distance, tol) {
248
253
  if (tol !== undefined)
@@ -276,9 +281,9 @@ class Geometry {
276
281
  return 2 - ((-axis - 1) % 3);
277
282
  }
278
283
  /** Return the AxisOrder for which axisIndex is the first named axis.
279
- * * `axisIndex===0`returns AxisOrder.XYZ
280
- * * `axisIndex===1`returns AxisOrder.YZX
281
- * * `axisIndex===2`returns AxisOrder.ZXY
284
+ * * `axisIndex === 0` returns `AxisOrder.XYZ`
285
+ * * `axisIndex === 1` returns `AxisOrder.YZX`
286
+ * * `axisIndex === 2` returns `AxisOrder.ZXY`
282
287
  */
283
288
  static axisIndexToRightHandedAxisOrder(axisIndex) {
284
289
  if (axisIndex === 0)
@@ -290,7 +295,9 @@ class Geometry {
290
295
  return Geometry.axisIndexToRightHandedAxisOrder(Geometry.cyclic3dAxis(axisIndex));
291
296
  }
292
297
  /** Return the largest absolute distance from a to either of b0 or b1 */
293
- static maxAbsDiff(a, b0, b1) { return Math.max(Math.abs(a - b0), Math.abs(a - b1)); }
298
+ static maxAbsDiff(a, b0, b1) {
299
+ return Math.max(Math.abs(a - b0), Math.abs(a - b1));
300
+ }
294
301
  /** Return the largest absolute absolute value among x,y,z */
295
302
  static maxAbsXYZ(x, y, z) {
296
303
  return Geometry.maxXYZ(Math.abs(x), Math.abs(y), Math.abs(z));
@@ -335,19 +342,33 @@ class Geometry {
335
342
  return q;
336
343
  }
337
344
  /** Return the hypotenuse `sqrt(x*x + y*y)`. This is much faster than `Math.hypot(x,y)`. */
338
- static hypotenuseXY(x, y) { return Math.sqrt(x * x + y * y); }
345
+ static hypotenuseXY(x, y) {
346
+ return Math.sqrt(x * x + y * y);
347
+ }
339
348
  /** Return the squared `hypotenuse (x*x + y*y)`. */
340
- static hypotenuseSquaredXY(x, y) { return x * x + y * y; }
349
+ static hypotenuseSquaredXY(x, y) {
350
+ return x * x + y * y;
351
+ }
341
352
  /** Return the square of x */
342
- static square(x) { return x * x; }
353
+ static square(x) {
354
+ return x * x;
355
+ }
343
356
  /** Return the hypotenuse `sqrt(x*x + y*y + z*z)`. This is much faster than `Math.hypot(x,y,z)`. */
344
- static hypotenuseXYZ(x, y, z) { return Math.sqrt(x * x + y * y + z * z); }
357
+ static hypotenuseXYZ(x, y, z) {
358
+ return Math.sqrt(x * x + y * y + z * z);
359
+ }
345
360
  /** Return the squared hypotenuse `(x*x + y*y + z*z)`. This is much faster than `Math.hypot(x,y,z)`. */
346
- static hypotenuseSquaredXYZ(x, y, z) { return x * x + y * y + z * z; }
361
+ static hypotenuseSquaredXYZ(x, y, z) {
362
+ return x * x + y * y + z * z;
363
+ }
347
364
  /** Return the (full 4d) hypotenuse `sqrt(x*x + y*y + z*z + w*w)`. This is much faster than `Math.hypot(x,y,z,w)`. */
348
- static hypotenuseXYZW(x, y, z, w) { return Math.sqrt(x * x + y * y + z * z + w * w); }
365
+ static hypotenuseXYZW(x, y, z, w) {
366
+ return Math.sqrt(x * x + y * y + z * z + w * w);
367
+ }
349
368
  /** Return the squared hypotenuse `(x*x + y*y + z*z+w*w)`. This is much faster than `Math.hypot(x,y,z)`. */
350
- static hypotenuseSquaredXYZW(x, y, z, w) { return x * x + y * y + z * z + w * w; }
369
+ static hypotenuseSquaredXYZW(x, y, z, w) {
370
+ return x * x + y * y + z * z + w * w;
371
+ }
351
372
  /**
352
373
  * Return the distance between xy points given as numbers.
353
374
  * @param x0 x coordinate of point 0
@@ -372,17 +393,16 @@ class Geometry {
372
393
  }
373
394
  /** Returns Returns the triple product of 3 vectors provided as x,y,z number sequences.
374
395
  *
375
- * * The triple product is the determinant of the 3x3 matrix with the 9 numbers placed in either row or column order.
396
+ * * The triple product is the determinant of the 3x3 matrix with the 9 numbers (3 vectors placed in 3 rows).
376
397
  * * The triple product is positive if the 3 vectors form a right handed coordinate system.
377
398
  * * The triple product is negative if the 3 vectors form a left handed coordinate system.
378
399
  * * Treating the 9 numbers as 3 vectors U, V, W, any of these formulas gives the same result:
379
- *
380
- * ** U dot (V cross W)
381
- * ** V dot (W cross U)
382
- * ** W dot (U cross V)
383
- * ** (-U dot (W cross V)) -- (note the negative -- reversing cross product order changes the sign)
384
- * ** (-V dot (U cross W)) -- (note the negative -- reversing cross product order changes the sign)
385
- * ** (-W dot (V cross U)) -- (note the negative -- reversing cross product order changes the sign)
400
+ * * U dot (V cross W)
401
+ * * V dot (W cross U)
402
+ * * W dot (U cross V)
403
+ * * (-U dot (W cross V)) -- (note the negative -- reversing cross product order changes the sign)
404
+ * * (-V dot (U cross W)) -- (note the negative -- reversing cross product order changes the sign)
405
+ * * (-W dot (V cross U)) -- (note the negative -- reversing cross product order changes the sign)
386
406
  * * the triple product is 6 times the (signed) volume of the tetrahedron with the three vectors as edges from a common vertex.
387
407
  */
388
408
  static tripleProduct(ux, uy, uz, vx, vy, vz, wx, wy, wz) {
@@ -496,11 +516,18 @@ class Geometry {
496
516
  static resolveToUndefined(value, targetValue) {
497
517
  return value === targetValue ? undefined : value;
498
518
  }
499
- /** simple interpolation between values, but choosing (based on fraction) a or b as starting point for maximum accuracy. */
519
+ /** Simple interpolation between values, but choosing (based on fraction) a or b as starting point for maximum accuracy. */
500
520
  static interpolate(a, f, b) {
501
521
  return f <= 0.5 ? a + f * (b - a) : b - (1.0 - f) * (b - a);
502
522
  }
503
- /** given an axisOrder (e.g. XYZ, YZX, ZXY, XZYLeftHanded etc) and an (integer) offset, resolve to an axis index. */
523
+ /**
524
+ * Given an axisOrder (e.g. XYZ, YZX, etc) and an index, returns the axis index at the given index.
525
+ * * For example, if axisOrder = XYZ, then for index 0 returns X (or axis index 0), for index 1 returns
526
+ * Y (or axis index 1), and for index 2 returns Z (or axis index 2). For indexes greater than 2 or smaller
527
+ * than 0, it returns cyclic axis index. See Geometry.cyclic3dAxis for more info.
528
+ * * Another example: if axisOrder = ZYX, then for index 0 returns Z (or axis index 2), for index 1 returns
529
+ * Y (or axis index 1), and for index 2 returns X (or axis index 0).
530
+ * */
504
531
  static axisOrderToAxis(order, index) {
505
532
  const axis = order <= AxisOrder.ZXY ? order + index : (order - AxisOrder.XZY) - index;
506
533
  return Geometry.cyclic3dAxis(axis);