@itwin/core-geometry 5.3.0-dev.9 → 5.3.0

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 (162) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/lib/cjs/curve/Arc3d.d.ts +15 -1
  3. package/lib/cjs/curve/Arc3d.d.ts.map +1 -1
  4. package/lib/cjs/curve/Arc3d.js +31 -2
  5. package/lib/cjs/curve/Arc3d.js.map +1 -1
  6. package/lib/cjs/curve/CurveFactory.d.ts +25 -8
  7. package/lib/cjs/curve/CurveFactory.d.ts.map +1 -1
  8. package/lib/cjs/curve/CurveFactory.js +51 -55
  9. package/lib/cjs/curve/CurveFactory.js.map +1 -1
  10. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.d.ts +10 -13
  11. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -1
  12. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js +23 -22
  13. package/lib/cjs/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  14. package/lib/cjs/curve/spiral/ClothoidSeries.d.ts +10 -6
  15. package/lib/cjs/curve/spiral/ClothoidSeries.d.ts.map +1 -1
  16. package/lib/cjs/curve/spiral/ClothoidSeries.js +36 -19
  17. package/lib/cjs/curve/spiral/ClothoidSeries.js.map +1 -1
  18. package/lib/cjs/curve/spiral/CubicEvaluator.d.ts +7 -6
  19. package/lib/cjs/curve/spiral/CubicEvaluator.d.ts.map +1 -1
  20. package/lib/cjs/curve/spiral/CubicEvaluator.js +29 -14
  21. package/lib/cjs/curve/spiral/CubicEvaluator.js.map +1 -1
  22. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.d.ts +34 -44
  23. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -1
  24. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js +47 -53
  25. package/lib/cjs/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  26. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts +2 -2
  27. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -1
  28. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js +17 -7
  29. package/lib/cjs/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  30. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts +112 -104
  31. package/lib/cjs/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
  32. package/lib/cjs/curve/spiral/DirectSpiral3d.js +143 -117
  33. package/lib/cjs/curve/spiral/DirectSpiral3d.js.map +1 -1
  34. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts +71 -53
  35. package/lib/cjs/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
  36. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js +99 -66
  37. package/lib/cjs/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  38. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +8 -12
  39. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -1
  40. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +11 -13
  41. package/lib/cjs/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  42. package/lib/cjs/curve/spiral/NormalizedTransition.d.ts +36 -29
  43. package/lib/cjs/curve/spiral/NormalizedTransition.d.ts.map +1 -1
  44. package/lib/cjs/curve/spiral/NormalizedTransition.js +62 -40
  45. package/lib/cjs/curve/spiral/NormalizedTransition.js.map +1 -1
  46. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.d.ts +13 -18
  47. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -1
  48. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js +21 -24
  49. package/lib/cjs/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  50. package/lib/cjs/curve/spiral/TransitionConditionalProperties.d.ts +41 -27
  51. package/lib/cjs/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -1
  52. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js +50 -33
  53. package/lib/cjs/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  54. package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts +45 -34
  55. package/lib/cjs/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
  56. package/lib/cjs/curve/spiral/TransitionSpiral3d.js +56 -38
  57. package/lib/cjs/curve/spiral/TransitionSpiral3d.js.map +1 -1
  58. package/lib/cjs/curve/spiral/XYCurveEvaluator.d.ts +27 -21
  59. package/lib/cjs/curve/spiral/XYCurveEvaluator.d.ts.map +1 -1
  60. package/lib/cjs/curve/spiral/XYCurveEvaluator.js +23 -18
  61. package/lib/cjs/curve/spiral/XYCurveEvaluator.js.map +1 -1
  62. package/lib/cjs/geometry3d/GrowableXYArray.d.ts +96 -98
  63. package/lib/cjs/geometry3d/GrowableXYArray.d.ts.map +1 -1
  64. package/lib/cjs/geometry3d/GrowableXYArray.js +121 -110
  65. package/lib/cjs/geometry3d/GrowableXYArray.js.map +1 -1
  66. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts +135 -142
  67. package/lib/cjs/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  68. package/lib/cjs/geometry3d/GrowableXYZArray.js +165 -160
  69. package/lib/cjs/geometry3d/GrowableXYZArray.js.map +1 -1
  70. package/lib/cjs/geometry3d/IndexedXYCollection.d.ts +51 -34
  71. package/lib/cjs/geometry3d/IndexedXYCollection.d.ts.map +1 -1
  72. package/lib/cjs/geometry3d/IndexedXYCollection.js +16 -6
  73. package/lib/cjs/geometry3d/IndexedXYCollection.js.map +1 -1
  74. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts +78 -77
  75. package/lib/cjs/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  76. package/lib/cjs/geometry3d/IndexedXYZCollection.js +38 -35
  77. package/lib/cjs/geometry3d/IndexedXYZCollection.js.map +1 -1
  78. package/lib/cjs/geometry3d/PolygonOps.d.ts +27 -7
  79. package/lib/cjs/geometry3d/PolygonOps.d.ts.map +1 -1
  80. package/lib/cjs/geometry3d/PolygonOps.js +30 -9
  81. package/lib/cjs/geometry3d/PolygonOps.js.map +1 -1
  82. package/lib/esm/curve/Arc3d.d.ts +15 -1
  83. package/lib/esm/curve/Arc3d.d.ts.map +1 -1
  84. package/lib/esm/curve/Arc3d.js +31 -2
  85. package/lib/esm/curve/Arc3d.js.map +1 -1
  86. package/lib/esm/curve/CurveFactory.d.ts +25 -8
  87. package/lib/esm/curve/CurveFactory.d.ts.map +1 -1
  88. package/lib/esm/curve/CurveFactory.js +51 -55
  89. package/lib/esm/curve/CurveFactory.js.map +1 -1
  90. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts +10 -13
  91. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.d.ts.map +1 -1
  92. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js +23 -22
  93. package/lib/esm/curve/spiral/AustralianRailCorpXYEvaluator.js.map +1 -1
  94. package/lib/esm/curve/spiral/ClothoidSeries.d.ts +10 -6
  95. package/lib/esm/curve/spiral/ClothoidSeries.d.ts.map +1 -1
  96. package/lib/esm/curve/spiral/ClothoidSeries.js +36 -19
  97. package/lib/esm/curve/spiral/ClothoidSeries.js.map +1 -1
  98. package/lib/esm/curve/spiral/CubicEvaluator.d.ts +7 -6
  99. package/lib/esm/curve/spiral/CubicEvaluator.d.ts.map +1 -1
  100. package/lib/esm/curve/spiral/CubicEvaluator.js +29 -14
  101. package/lib/esm/curve/spiral/CubicEvaluator.js.map +1 -1
  102. package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts +34 -44
  103. package/lib/esm/curve/spiral/CzechSpiralEvaluator.d.ts.map +1 -1
  104. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js +47 -53
  105. package/lib/esm/curve/spiral/CzechSpiralEvaluator.js.map +1 -1
  106. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts +2 -2
  107. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.d.ts.map +1 -1
  108. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js +17 -7
  109. package/lib/esm/curve/spiral/DirectHalfCosineSpiralEvaluator.js.map +1 -1
  110. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts +112 -104
  111. package/lib/esm/curve/spiral/DirectSpiral3d.d.ts.map +1 -1
  112. package/lib/esm/curve/spiral/DirectSpiral3d.js +143 -117
  113. package/lib/esm/curve/spiral/DirectSpiral3d.js.map +1 -1
  114. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts +71 -53
  115. package/lib/esm/curve/spiral/IntegratedSpiral3d.d.ts.map +1 -1
  116. package/lib/esm/curve/spiral/IntegratedSpiral3d.js +99 -66
  117. package/lib/esm/curve/spiral/IntegratedSpiral3d.js.map +1 -1
  118. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts +8 -12
  119. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.d.ts.map +1 -1
  120. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js +11 -13
  121. package/lib/esm/curve/spiral/MXCubicAlongArcSpiralEvaluator.js.map +1 -1
  122. package/lib/esm/curve/spiral/NormalizedTransition.d.ts +36 -29
  123. package/lib/esm/curve/spiral/NormalizedTransition.d.ts.map +1 -1
  124. package/lib/esm/curve/spiral/NormalizedTransition.js +62 -40
  125. package/lib/esm/curve/spiral/NormalizedTransition.js.map +1 -1
  126. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts +13 -18
  127. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.d.ts.map +1 -1
  128. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js +21 -24
  129. package/lib/esm/curve/spiral/PolishCubicSpiralEvaluator.js.map +1 -1
  130. package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts +41 -27
  131. package/lib/esm/curve/spiral/TransitionConditionalProperties.d.ts.map +1 -1
  132. package/lib/esm/curve/spiral/TransitionConditionalProperties.js +50 -33
  133. package/lib/esm/curve/spiral/TransitionConditionalProperties.js.map +1 -1
  134. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts +45 -34
  135. package/lib/esm/curve/spiral/TransitionSpiral3d.d.ts.map +1 -1
  136. package/lib/esm/curve/spiral/TransitionSpiral3d.js +56 -38
  137. package/lib/esm/curve/spiral/TransitionSpiral3d.js.map +1 -1
  138. package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts +27 -21
  139. package/lib/esm/curve/spiral/XYCurveEvaluator.d.ts.map +1 -1
  140. package/lib/esm/curve/spiral/XYCurveEvaluator.js +23 -18
  141. package/lib/esm/curve/spiral/XYCurveEvaluator.js.map +1 -1
  142. package/lib/esm/geometry3d/GrowableXYArray.d.ts +96 -98
  143. package/lib/esm/geometry3d/GrowableXYArray.d.ts.map +1 -1
  144. package/lib/esm/geometry3d/GrowableXYArray.js +122 -111
  145. package/lib/esm/geometry3d/GrowableXYArray.js.map +1 -1
  146. package/lib/esm/geometry3d/GrowableXYZArray.d.ts +135 -142
  147. package/lib/esm/geometry3d/GrowableXYZArray.d.ts.map +1 -1
  148. package/lib/esm/geometry3d/GrowableXYZArray.js +165 -160
  149. package/lib/esm/geometry3d/GrowableXYZArray.js.map +1 -1
  150. package/lib/esm/geometry3d/IndexedXYCollection.d.ts +51 -34
  151. package/lib/esm/geometry3d/IndexedXYCollection.d.ts.map +1 -1
  152. package/lib/esm/geometry3d/IndexedXYCollection.js +14 -5
  153. package/lib/esm/geometry3d/IndexedXYCollection.js.map +1 -1
  154. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts +78 -77
  155. package/lib/esm/geometry3d/IndexedXYZCollection.d.ts.map +1 -1
  156. package/lib/esm/geometry3d/IndexedXYZCollection.js +38 -35
  157. package/lib/esm/geometry3d/IndexedXYZCollection.js.map +1 -1
  158. package/lib/esm/geometry3d/PolygonOps.d.ts +27 -7
  159. package/lib/esm/geometry3d/PolygonOps.d.ts.map +1 -1
  160. package/lib/esm/geometry3d/PolygonOps.js +30 -9
  161. package/lib/esm/geometry3d/PolygonOps.js.map +1 -1
  162. package/package.json +3 -3
@@ -11,36 +11,32 @@ import { Point3d, Vector3d, XYZ } from "./Point3dVector3d";
11
11
  import { Range1d, Range3d } from "./Range";
12
12
  import { Transform } from "./Transform";
13
13
  import { XYAndZ } from "./XYZProps";
14
- /** `GrowableXYArray` manages a (possibly growing) Float64Array to pack xy coordinates.
14
+ /**
15
+ * `GrowableXYZArray` manages a (possibly growing) Float64Array to pack xyz coordinates.
15
16
  * @public
16
17
  */
17
18
  export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
18
- /**
19
- * array of packed xyz xyz xyz components
20
- */
19
+ /** Array of packed xyz xyz xyz components. */
21
20
  private _data;
22
- /**
23
- * Number of xyz triples (not floats) in the array
24
- */
21
+ /** Number of xyz triples (not floats) in the array. */
25
22
  private _xyzInUse;
26
- /**
27
- * capacity in xyz triples. (not floats)
28
- */
23
+ /** Capacity in xyz triples (not floats). */
29
24
  private _xyzCapacity;
30
- /**
31
- * multiplier used by ensureCapacity to expand requested reallocation size
32
- */
25
+ /** Multiplier used by ensureCapacity to expand requested reallocation size. */
33
26
  private _growthFactor;
34
- /** Construct a new GrowablePoint3d array.
35
- * @param numPoints initial capacity in xyz triples (default 8)
36
- * @param growthFactor used by ensureCapacity to expand requested reallocation size (default 1.5)
27
+ /**
28
+ * Construct a new GrowablePoint3d array.
29
+ * @param numPoints initial capacity in xyz triples (default 8).
30
+ * @param growthFactor used by ensureCapacity to expand requested reallocation size (default 1.5).
31
+ * @param data optional pre-existing Float64Array to use as the backing memory. If supplied, numPoints is ignored.
37
32
  */
38
- constructor(numPoints?: number, growthFactor?: number);
39
- /** Copy xyz points from source array. Does not reallocate or change active point count.
40
- * @param source array to copy from
41
- * @param sourceCount copy the first sourceCount points; all points if undefined
42
- * @param destOffset copy to instance array starting at this point index; zero if undefined
43
- * @return count and offset of points copied
33
+ constructor(numPoints?: number, growthFactor?: number, data?: Float64Array);
34
+ /**
35
+ * Copy xyz points from source array. Does not reallocate or change active point count.
36
+ * @param source array to copy from.
37
+ * @param sourceCount copy the first sourceCount points; all points if undefined.
38
+ * @param destOffset copy to instance array starting at this point index; zero if undefined.
39
+ * @return count and offset of points copied.
44
40
  */
45
41
  protected copyData(source: Float64Array | number[], sourceCount?: number, destOffset?: number): {
46
42
  count: number;
@@ -51,32 +47,35 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
51
47
  set length(newLength: number);
52
48
  /** Return the number of float64 in use. */
53
49
  get float64Length(): number;
54
- /** Return the raw packed data.
50
+ /**
51
+ * Return the raw packed data.
55
52
  * * Note that the length of the returned Float64Array is a count of doubles, and includes the excess capacity
56
53
  */
57
54
  float64Data(): Float64Array;
58
- /** If necessary, increase the capacity to the new number of points. Current coordinates and point count (length) are unchanged. */
55
+ /**
56
+ * If necessary, increase the capacity to the new number of points. Current coordinates and point count (length) are
57
+ * unchanged.
58
+ */
59
59
  ensureCapacity(pointCapacity: number, applyGrowthFactor?: boolean): void;
60
60
  /**
61
- * * If pointCount is less than current length, just reset current length to pointCount, effectively trimming active points but preserving original capacity.
62
- * * If pointCount is greater than current length, reallocate to exactly pointCount, copy existing points, and optionally pad excess with zero.
63
- * @param pointCount new number of active points in array
64
- * @param padWithZero when increasing point count, whether to zero out new points (default false)
61
+ * * If pointCount is less than current length, just reset current length to pointCount, effectively trimming active
62
+ * points but preserving original capacity.
63
+ * * If pointCount is greater than current length, reallocate to exactly pointCount, copy existing points, and
64
+ * optionally pad excess with zero.
65
+ * @param pointCount new number of active points in array.
66
+ * @param padWithZero when increasing point count, whether to zero out new points (default false).
65
67
  */
66
68
  resize(pointCount: number, padWithZero?: boolean): void;
67
- /**
68
- * Make a copy of the (active) points in this array.
69
- * (The clone does NOT get excess capacity)
70
- */
69
+ /** Make a copy of the (active) points in this array (the clone does NOT get excess capacity). */
71
70
  clone(result?: GrowableXYZArray): GrowableXYZArray;
72
71
  /**
73
72
  * Clone the input array with each successive duplicate point removed.
74
73
  * * First and last points are always preserved.
75
- * @param source the source array
76
- * @param tolerance optional distance tol for compression (default [[Geometry.smallMetricDistance]])
74
+ * @param source the source array.
75
+ * @param tolerance optional distance tol for compression (default [[Geometry.smallMetricDistance]]).
77
76
  * @param result optional pre-allocated object to populate and return. Can be a reference to `source`, in
78
77
  * which case the array is compressed in place and returned.
79
- * @see [[cloneCompressed]], [[compressInPlace]], [[PolylineOps.compressShortEdges]]
78
+ * @see [[cloneCompressed]], [[compressInPlace]], [[PolylineOps.compressShortEdges]].
80
79
  */
81
80
  static createCompressed(source: IndexedXYZCollection, tolerance?: number, result?: GrowableXYZArray): GrowableXYZArray;
82
81
  /**
@@ -91,9 +90,9 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
91
90
  /**
92
91
  * Compress the input array by removing successive duplicate points.
93
92
  * * First and last points are always preserved.
94
- * @param tolerance optional distance tol for compression (default [[Geometry.smallMetricDistance]])
93
+ * @param tolerance optional distance tol for compression (default [[Geometry.smallMetricDistance]]).
95
94
  * @returns the instance array.
96
- * @see [[createCompressed]], [[cloneCompressed]], [[PolylineOps.compressShortEdges]]
95
+ * @see [[createCompressed]], [[cloneCompressed]], [[PolylineOps.compressShortEdges]].
97
96
  */
98
97
  compressInPlace(tolerance?: number): GrowableXYZArray;
99
98
  /**
@@ -112,13 +111,20 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
112
111
  * @param result optional pre-allocated GrowableXYZArray to clear and fill.
113
112
  */
114
113
  static create(data: any, result?: GrowableXYZArray): GrowableXYZArray;
115
- /** Restructure MultiLineStringDataVariant as array of GrowableXYZArray */
114
+ /**
115
+ * Create a new GrowableXYZArray capturing the provided data. The data is not copied, just referenced.
116
+ * @param data source data to capture.
117
+ * @returns a new GrowableXYZArray object that references the provided data.
118
+ */
119
+ static createCapture(data: Float64Array): GrowableXYZArray;
120
+ /** Restructure MultiLineStringDataVariant as array of GrowableXYZArray. */
116
121
  static createArrayOfGrowableXYZArray(data: MultiLineStringDataVariant): GrowableXYZArray[] | undefined;
117
- /** push a point to the end of the array */
122
+ /** Push a point to the end of the array. */
118
123
  push(toPush: XYAndZ): void;
119
- /** push all points of an array */
124
+ /** Push all points of an array. */
120
125
  pushAll(points: Point3d[]): void;
121
- /** Push copies of points from variant sources.
126
+ /**
127
+ * Push copies of points from variant sources.
122
128
  * Valid inputs are:
123
129
  * * Point2d
124
130
  * * Point3d
@@ -128,128 +134,128 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
128
134
  * * Any json object satisfying Point3d.isXYAndZ
129
135
  * * Any json object satisfying Point3d.isXAndY
130
136
  * * A Float64Array of doubles, interpreted as xyzxyz
131
- * * An array of any of the above
137
+ * * An array of any of the above.
132
138
  */
133
139
  pushFrom(p: any): void;
134
140
  /**
135
141
  * Replicate numWrap xyz values from the front of the array as new values at the end.
136
- * @param numWrap number of xyz values to replicate
142
+ * @param numWrap number of xyz values to replicate.
137
143
  */
138
144
  pushWrap(numWrap: number): void;
139
- /** append a new point with given x,y,z */
145
+ /** Append a new point with given x,y,z. */
140
146
  pushXYZ(x: number, y: number, z: number): void;
141
- /** Shift all data forward to make space for numPoints at the front.
147
+ /**
148
+ * Shift all data forward to make space for numPoints at the front.
142
149
  * * Leading (3*numPoints) doubles are left with prior contents.
143
- * * _xyzInUse count is increased
144
- */
150
+ * * _xyzInUse count is increased.
151
+ */
145
152
  private shiftForward;
146
- /** prepend a new point with given x,y,z
153
+ /**
154
+ * Prepend a new point with given x,y,z
147
155
  * * Remark: this copies all content forward.
148
156
  */
149
157
  pushFrontXYZ(x: number, y: number, z: number): void;
150
- /** prepend a new point at the front of the array.
151
- *
152
- */
158
+ /** Prepend a new point at the front of the array. */
153
159
  pushFront(toPush: XYAndZ): void;
154
- /** move the coordinates at fromIndex to toIndex.
160
+ /**
161
+ * Move the coordinates at fromIndex to toIndex.
155
162
  * * No action if either index is invalid.
156
163
  */
157
164
  moveIndexToIndex(fromIndex: number, toIndex: number): void;
158
- /** Remove one point from the back.
165
+ /**
166
+ * Remove one point from the back.
159
167
  * * NOTE that (in the manner of std::vector native) this is "just" removing the point -- no point is NOT returned.
160
168
  * * Use `back ()` to get the last x,y,z assembled into a `Point3d `
161
169
  */
162
170
  pop(): void;
163
- /**
164
- * Clear all xyz data, but leave capacity unchanged.
165
- */
171
+ /** Clear all xyz data, but leave capacity unchanged. */
166
172
  clear(): void;
167
173
  /**
168
- * Get a point by index, strongly typed as a Point3d. This is unchecked. Use [[getPoint3dAtCheckedPointIndex]] to have validity test.
169
- * @param pointIndex index to access
170
- * @param result optional result
174
+ * Get a point by index, strongly typed as a Point3d. This is unchecked. Use [[getPoint3dAtCheckedPointIndex]] to
175
+ * have validity test.
176
+ * @param pointIndex index to access.
177
+ * @param result optional result.
171
178
  */
172
179
  getPoint3dAtUncheckedPointIndex(pointIndex: number, result?: Point3d): Point3d;
173
180
  /**
174
- * Get a point by index, strongly typed as a Point2d. This is unchecked. Use [[getPoint2dAtCheckedPointIndex]] to have validity test.
175
- * @param pointIndex index to access
176
- * @param result optional result
181
+ * Get a point by index, strongly typed as a Point2d. This is unchecked. Use [[getPoint2dAtCheckedPointIndex]] to
182
+ * have validity test.
183
+ * @param pointIndex index to access.
184
+ * @param result optional result.
177
185
  */
178
186
  getPoint2dAtUncheckedPointIndex(pointIndex: number, result?: Point2d): Point2d;
179
187
  /**
180
- * Get a vector by index, strongly typed as a Vector3d. This is unchecked. Use [[getVector3dAtCheckedVectorIndex]] to have validity test.
181
- * @param vectorIndex index to access
182
- * @param result optional result
188
+ * Get a vector by index, strongly typed as a Vector3d. This is unchecked. Use [[getVector3dAtCheckedVectorIndex]]
189
+ * to have validity test.
190
+ * @param vectorIndex index to access.
191
+ * @param result optional result.
183
192
  */
184
193
  getVector3dAtUncheckedVectorIndex(vectorIndex: number, result?: Vector3d): Vector3d;
185
- /** copy xyz into strongly typed Point3d */
194
+ /** Copy xyz into strongly typed Point3d. */
186
195
  getPoint3dAtCheckedPointIndex(pointIndex: number, result?: Point3d): Point3d | undefined;
187
- /** access x of indexed point */
196
+ /** Access x of indexed point. */
188
197
  getXAtUncheckedPointIndex(pointIndex: number): number;
189
- /** access y of indexed point */
198
+ /** Access y of indexed point. */
190
199
  getYAtUncheckedPointIndex(pointIndex: number): number;
191
- /** access y of indexed point */
200
+ /** Access z of indexed point. */
192
201
  getZAtUncheckedPointIndex(pointIndex: number): number;
193
- /** copy xy into strongly typed Point2d */
202
+ /** Copy xy into strongly typed Point2d. */
194
203
  getPoint2dAtCheckedPointIndex(pointIndex: number, result?: Point2d): Point2d | undefined;
195
- /** copy xyz into strongly typed Vector3d */
204
+ /** Copy xyz into strongly typed Vector3d. */
196
205
  getVector3dAtCheckedVectorIndex(vectorIndex: number, result?: Vector3d): Vector3d | undefined;
197
206
  /**
198
207
  * Read coordinates from source array, place them at index within this array.
199
- * @param destIndex point index where coordinates are to be placed in this array
200
- * @param source source array
201
- * @param sourceIndex point index in source array
208
+ * @param destIndex point index where coordinates are to be placed in this array.
209
+ * @param source source array.
210
+ * @param sourceIndex point index in source array.
202
211
  * @returns true if destIndex and sourceIndex are both valid.
203
212
  */
204
213
  transferFromGrowableXYZArray(destIndex: number, source: IndexedXYZCollection, sourceIndex: number): boolean;
205
214
  /**
206
- * push coordinates from the source array to the end of this array.
207
- * @param source source array
208
- * @param sourceIndex xyz index within the source. If undefined, entire source is pushed.
215
+ * Push coordinates from the source array to the end of this array.
216
+ * @param source source array.
217
+ * @param sourceIndex xyz index within the source. If undefined, entire source is pushed.
209
218
  * @returns number of points pushed.
210
219
  */
211
220
  pushFromGrowableXYZArray(source: GrowableXYZArray, sourceIndex?: number): number;
212
221
  /**
213
222
  * Set the coordinates of a single point.
214
- * @param pointIndex index of point to set
215
- * @param value coordinates to set
223
+ * @param pointIndex index of point to set.
224
+ * @param value coordinates to set.
216
225
  */
217
226
  setAtCheckedPointIndex(pointIndex: number, value: XYAndZ): boolean;
218
227
  /**
219
- * Set the coordinates of a single point given as coordinates
220
- * @param pointIndex index of point to set
221
- * @param x x coordinate
222
- * @param y y coordinate
223
- * @param z z coordinate
228
+ * Set the coordinates of a single point given as coordinates.
229
+ * @param pointIndex index of point to set.
230
+ * @param x x coordinate.
231
+ * @param y y coordinate.
232
+ * @param z z coordinate.
224
233
  */
225
234
  setXYZAtCheckedPointIndex(pointIndex: number, x: number, y: number, z: number): boolean;
226
- /**
227
- * Copy all points into a simple array of Point3d
228
- */
235
+ /** Copy all points into a simple array of Point3. */
229
236
  getPoint3dArray(): Point3d[];
230
- /** multiply each point by the transform, replace values. */
237
+ /** Multiply each point by the transform, replace values. */
231
238
  static multiplyTransformInPlace(transform: Transform, data: GrowableXYZArray[] | GrowableXYZArray): void;
232
- /** multiply each point by the transform, replace values. */
239
+ /** Multiply each point by the transform, replace values. */
233
240
  multiplyTransformInPlace(transform: Transform): void;
234
- /** reverse the order of points. */
241
+ /** Reverse the order of points. */
235
242
  reverseInPlace(): void;
236
- /** multiply each xyz (as a vector) by matrix, replace values. */
243
+ /** Multiply each xyz (as a vector) by matrix, replace values. */
237
244
  multiplyMatrix3dInPlace(matrix: Matrix3d): void;
238
- /** multiply each xyz (as a vector) by matrix inverse transpose, renormalize the vector, replace values.
239
- * * This is the way to apply a matrix (possibly with skew and scale) to a surface normal, and
240
- * have it end up perpendicular to the transformed in-surface vectors.
245
+ /**
246
+ * Multiply each xyz (as a vector) by matrix inverse transpose, renormalize the vector, replace values.
247
+ * * This is the way to apply a matrix (possibly with skew and scale) to a surface normal, and have it end up
248
+ * perpendicular to the transformed in-surface vectors.
241
249
  * * Return false if matrix is not invertible or if any normalization fails.
242
250
  */
243
251
  multiplyAndRenormalizeMatrix3dInverseTransposeInPlace(matrix: Matrix3d): boolean;
244
- /** multiply each xyz (as a point) by a homogeneous matrix and update as the normalized point
245
- *
246
- */
252
+ /** Multiply each xyz (as a point) by a homogeneous matrix and update as the normalized point. */
247
253
  multiplyMatrix4dAndQuietRenormalizeMatrix4d(matrix: Matrix4d): void;
248
- /** multiply each point by the transform, replace values. */
254
+ /** Multiply each point by the transform, replace values. */
249
255
  tryTransformInverseInPlace(transform: Transform): boolean;
250
256
  /** Extend `range` to extend by all points. */
251
257
  extendRange(rangeToExtend: Range3d, transform?: Transform): void;
252
- /** get range of points. */
258
+ /** Get range of points. */
253
259
  getRange(transform?: Transform, result?: Range3d): Range3d;
254
260
  /** Initialize `range` with coordinates in this array. */
255
261
  setRange(range: Range3d, transform?: Transform): void;
@@ -257,25 +263,22 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
257
263
  sumLengths(): number;
258
264
  /**
259
265
  * Multiply each x,y,z by the scale factor.
260
- * @param factor
266
+ * @param factor scale factor.
261
267
  */
262
268
  scaleInPlace(factor: number): void;
263
- /** test if all points are within tolerance of a plane. */
269
+ /** Test if all points are within tolerance of a plane. */
264
270
  isCloseToPlane(plane: Plane3dByOriginAndUnitNormal, tolerance?: number): boolean;
265
271
  /**
266
272
  * * If not already closed, push a copy of the first point.
267
- * * If already closed within tolerance, force exact copy
268
- * * otherwise leave unchanged.
273
+ * * If already closed within tolerance, force exact copy.
274
+ * * Otherwise leave unchanged.
269
275
  */
270
276
  forceClosure(tolerance?: number): void;
271
- /** Compute a point at fractional coordinate between points i and j */
277
+ /** Compute a point at fractional coordinate between points i and j. */
272
278
  interpolate(i: number, fraction: number, j: number, result?: Point3d): Point3d | undefined;
273
- /**
274
- * * Compute a point at fractional coordinate between points i and j of source
275
- * * push onto this array.
276
- */
279
+ /** Compute a point at fractional coordinate between points i and j of source and push onto this array. */
277
280
  pushInterpolatedFromGrowableXYZArray(source: GrowableXYZArray, i: number, fraction: number, j: number): void;
278
- /** Sum the signed areas of the projection to xy plane */
281
+ /** Sum the signed areas of the projection to xy plane. */
279
282
  areaXY(): number;
280
283
  /** Compute a vector from index origin i to indexed target j. */
281
284
  vectorIndexIndex(i: number, j: number, result?: Vector3d): Vector3d | undefined;
@@ -283,78 +286,68 @@ export declare class GrowableXYZArray extends IndexedReadWriteXYZCollection {
283
286
  vectorXYAndZIndex(origin: XYAndZ, j: number, result?: Vector3d): Vector3d | undefined;
284
287
  /** Compute the cross product of vectors from from indexed origin to indexed targets i and j. */
285
288
  crossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number, result?: Vector3d): Vector3d | undefined;
286
- /** Compute the dot product of pointIndex with [x,y,z] */
289
+ /** Compute the dot product of pointIndex with [x,y,z]. */
287
290
  evaluateUncheckedIndexDotProductXYZ(pointIndex: number, x: number, y: number, z: number): number;
288
- /** Compute the dot product of pointIndex with [x,y,z] */
291
+ /** Compute the dot product of pointIndex with [x,y,z]. */
289
292
  evaluateUncheckedIndexPlaneAltitude(pointIndex: number, plane: PlaneAltitudeEvaluator): number;
290
293
  /**
291
- * * compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.
292
- * * accumulate it to the result.
294
+ * Compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.
295
+ * * Accumulate it to the result.
293
296
  */
294
297
  accumulateCrossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number, result: Vector3d): void;
295
298
  /**
296
- * * compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.
297
- * * accumulate it to the result.
299
+ * Compute the cross product from indexed origin t indexed targets targetAIndex and targetB index.
300
+ * * Accumulate it to the result.
298
301
  */
299
302
  accumulateScaledXYZ(index: number, scale: number, sum: Point3d): void;
300
- /** Compute the cross product of vectors from from origin to indexed targets i and j */
303
+ /** Compute the cross product of vectors from from origin to indexed targets i and j. */
301
304
  crossProductXYAndZIndexIndex(origin: XYAndZ, targetAIndex: number, targetBIndex: number, result?: Vector3d): Vector3d | undefined;
302
305
  /** Return the distance between an array point and the input point. */
303
306
  distanceIndexToPoint(i: number, spacePoint: XYAndZ): number | undefined;
304
307
  /**
305
308
  * Return distance squared between indicated points.
306
- * @param i first point index
307
- * @param j second point index
309
+ * @param i first point index.
310
+ * @param j second point index.
308
311
  */
309
312
  distanceSquaredIndexIndex(i: number, j: number): number | undefined;
310
313
  /**
311
314
  * Return distance between indicated points.
312
- * @param i first point index
313
- * @param j second point index
315
+ * @param i first point index.
316
+ * @param j second point index.
314
317
  */
315
318
  distanceIndexIndex(i: number, j: number): number | undefined;
316
319
  /** Return the distance between points in distinct arrays. */
317
320
  static distanceBetweenPointsIn2Arrays(arrayA: GrowableXYZArray, i: number, arrayB: GrowableXYZArray, j: number): number | undefined;
318
- /** test for near equality between two `GrowableXYZArray`. */
321
+ /** Test for near equality between two `GrowableXYZArray`. */
319
322
  static isAlmostEqual(dataA: GrowableXYZArray | undefined, dataB: GrowableXYZArray | undefined): boolean;
320
- /** Return an array of block indices sorted per compareLexicalBlock function */
323
+ /** Return an array of block indices sorted per compareLexicalBlock function. */
321
324
  sortIndicesLexical(): Uint32Array;
322
- /** compare two blocks in simple lexical order. */
325
+ /** Compare two blocks in simple lexical order. */
323
326
  compareLexicalBlock(ia: number, ib: number): number;
324
- /** Access a single double at offset within a block. This has no index checking. */
327
+ /** Access a single double at offset within a block. This has no index checking. */
325
328
  component(pointIndex: number, componentIndex: number): number;
326
- /**
327
- * add points at regular steps from `other`
328
- * @param source
329
- * @param pointIndex0
330
- * @param step
331
- * @param numAdd
332
- */
329
+ /** Add points at regular steps from `other`. */
333
330
  addSteppedPoints(other: GrowableXYZArray, pointIndex0: number, step: number, numAdd: number): void;
334
331
  /**
335
- * find the min and max distance between corresponding indexed points. Excess points are ignored.
336
- * @param arrayA first array
337
- * @param arrayB second array
332
+ * Find the min and max distance between corresponding indexed points. Excess points are ignored.
333
+ * @param arrayA first array.
334
+ * @param arrayB second array.
338
335
  */
339
336
  static distanceRangeBetweenCorrespondingPoints(arrayA: GrowableXYZArray, arrayB: GrowableXYZArray): Range1d;
340
- /**
341
- * remove trailing point(s) within tolerance of the start point.
342
- * @param points
343
- * @param tolerance
344
- */
337
+ /** Remove trailing point(s) within tolerance of the start point. */
345
338
  static removeClosure(points: IndexedReadWriteXYZCollection, tolerance?: number): void;
346
339
  /**
347
340
  * Compute frame for a triangle formed by three (unchecked!) points identified by index.
348
341
  * * z direction of frame is 001.
349
- * * Transform axes from origin to targetA and targetB
350
- * * in local coordinates (u,v,w) the xy interior of the triangle is `u>=0, v>= 0, w>= 0, u+v+w<1`
342
+ * * Transform axes from origin to targetA and targetB.
343
+ * * in local coordinates (u,v,w) the xy interior of the triangle is `u>=0, v>= 0, w>= 0, u+v+w<1`.
351
344
  * * Return undefined if transform is not invertible, e.g. if points are in a vertical plane.
352
345
  */
353
346
  fillLocalXYTriangleFrame(originIndex: number, targetAIndex: number, targetBIndex: number, result?: Transform): Transform | undefined;
354
347
  /**
355
348
  * Pass the (x,y,z) of each point to a function which returns a replacement for one of the 3 components.
356
349
  * @param componentIndex Index (0,1,2) of component to be replaced.
357
- * @param func function to be called as `func(x,y,z)`, returning a replacement value for componentIndex
350
+ * @param func function to be called as `func(x,y,z)`, returning a replacement value for componentIndex.
358
351
  */
359
352
  mapComponent(componentIndex: 0 | 1 | 2, func: (x: number, y: number, z: number) => number): void;
360
353
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"GrowableXYZArray.d.ts","sourceRoot":"","sources":["../../../src/geometry3d/GrowableXYZArray.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GrowableXYZArray.d.ts","sourceRoot":"","sources":["../../../src/geometry3d/GrowableXYZArray.ts"],"names":[],"mappings":"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"}