Name |
Description |
|
constructor(numPoints: number = 8, growthFactor?: number): GrowableXYArray |
Construct a new GrowablePoint2d array. |
|
areaXY(): number |
Sum the signed areas of the projection to xy plane |
|
back(result?: Point2d): undefined | Point2d |
Return the last point, or undefined if the array is empty. |
|
clear(): void |
Clear all xy data, but leave capacity unchanged. |
|
clone(): GrowableXYArray |
Make a copy of the (active) points in this array. |
|
compareLexicalBlock(ia: number, ib: number): number |
compare two blocks in simple lexical order. |
|
component(pointIndex: number, componentIndex: number): number |
Access a single double at offset within a block. |
|
copyData(source: number[] | Float64Array, sourceCount?: number, destOffset?: number): { count: number, offset: number } Protected |
Copy xy points from source array. |
|
crossProductIndexIndexIndex(originIndex: number, targetAIndex: number, targetBIndex: number): undefined | number |
Compute the cross product of vectors from from indexed origin to indexed targets i and j |
|
crossProductXAndYIndexIndex(origin: Readonly<WritableXAndY>, targetAIndex: number, targetBIndex: number): undefined | number |
Compute the cross product of vectors from from origin to indexed targets i and j |
|
distance(i: number, j: number): undefined | number |
Return the distance between two points in the array. |
|
distanceIndexToPoint(i: number, spacePoint: Point2d): undefined | number |
Return the distance between an array point and the input point. |
|
ensureCapacity(pointCapacity: number, applyGrowthFactor: boolean = true): void |
If necessary, increase the capacity to a new pointCount. |
|
extendRange(rangeToExtend: Range2d, transform?: Transform): void |
Extend a Range2d , optionally transforming the points. |
|
float64Data(): Float64Array |
Return the raw packed data. |
|
front(result?: Point2d): undefined | Point2d |
Return the first point, or undefined if the array is empty. |
|
getPoint2dArray(): Point2d[] |
Gather all points as a Point2d[] |
|
getPoint2dAtCheckedPointIndex(pointIndex: number, result?: Point2d): undefined | Point2d |
copy xy into strongly typed Point2d |
|
getPoint2dAtUncheckedPointIndex(pointIndex: number, result?: Point2d): Point2d |
Get a point by index, strongly typed as a Point2d. |
|
getPoint3dArray(z: number = 0): Point3d[] |
Copy all points into a simple array of Point3d with given z. |
|
getVector2dAtCheckedVectorIndex(vectorIndex: number, result?: Vector2d): undefined | Vector2d |
copy xy into strongly typed Vector2d |
|
getXAtUncheckedPointIndex(pointIndex: number): number |
Get x coordinate by point index, with no index checking |
|
getYAtUncheckedPointIndex(pointIndex: number): number |
Get y coordinate by point index, with no index checking |
|
interpolate(i: number, fraction: number, j: number, result?: Point2d): undefined | Point2d |
Compute a point at fractional coordinate between points i and j |
|
isAlmostEqual(other: GrowableXYArray, tolerance: number = Geometry.smallMetricDistance): boolean |
Toleranced equality test |
|
isIndexValid(index: number): boolean |
Test if index is valid for an xy (point or vector) within this array |
|
multiplyMatrix3dInPlace(matrix: Matrix3d): void |
multiply each xy (as a vector) by matrix, replace values. |
|
multiplyTransformInPlace(transform: Transform): void |
multiply each point by the transform, replace values. |
|
pop(): void |
Remove one point from the back. |
|
push(toPush: Readonly<WritableXAndY>): void |
push a point to the end of the array |
|
pushAll(points: Readonly<WritableXAndY>[]): void |
push all points of an array |
|
pushAllXYAndZ(points: GrowableXYZArray | Readonly<WritableXYAndZ>[]): void |
push all points of an array |
|
pushFromGrowableXYArray(source: GrowableXYArray, sourceIndex?: number): number |
push coordinates from the source array to the end of this array. |
|
pushInterpolatedFromGrowableXYArray(source: GrowableXYArray, i: number, fraction: number, j: number): void |
* Compute a point at fractional coordinate between points i and j of source |
|
pushWrap(numWrap: number): void |
Replicate numWrap xy values from the front of the array as new values at the end. |
|
pushXY(x: number, y: number): void |
push a point given by x,y coordinates |
|
resize(pointCount: number, padWithZero?: boolean): void |
* If pointCount is less than current length, just reset current length to pointCount, effectively trimming active points but preserving original capacity. |
|
reverseInPlace(): void |
reverse the order of points. |
|
scaleInPlace(factor: number): void |
Multiply each x,y by the scale factor. |
|
setAtCheckedPointIndex(pointIndex: number, value: Readonly<WritableXAndY>): boolean |
Set the coordinates of a single point. |
|
setXYAtCheckedPointIndex(pointIndex: number, x: number, y: number): boolean |
Set the coordinates of a single point given as coordinates. |
|
setXYZAtCheckedPointIndex(pointIndex: number, x: number, y: number): boolean |
Set the coordinates of a single point given as coordinates. |
Deprecated |
sortIndicesLexical(): Uint32Array |
Return an array of block indices sorted per compareLexicalBlock function |
|
sumLengths(): number |
sum the lengths of segments between points. |
|
transferFromGrowableXYArray(destIndex: number, source: GrowableXYArray, sourceIndex: number): boolean |
Read coordinates from source array, place them at index within this array. |
|
tryTransformInverseInPlace(transform: Transform): boolean |
multiply each point by the transform, replace values. |
|
vectorIndexIndex(i: number, j: number, result?: Vector2d): undefined | Vector2d |
Compute a vector from index origin i to indexed target j |
|
vectorXAndYIndex(origin: Readonly<WritableXAndY>, j: number, result?: Vector2d): undefined | Vector2d |
Compute a vector from origin to indexed target j |
|
create(data: GrowableXYZArray | Readonly<WritableXAndY>[]): GrowableXYArray Static |
Create an array populated from |
|
createArrayOfGrowableXYZArray(data: MultiLineStringDataVariant): undefined | GrowableXYZArray[] Static |
Restructure MultiLineStringDataVariant as array of GrowableXYZArray |
|
createFromGrowableXYZArray(source: GrowableXYZArray, transform?: Transform, dest?: GrowableXYArray): GrowableXYArray Static |
Create an array of xy points from source xyz points. |
|
isAlmostEqual(dataA: undefined | GrowableXYArray, dataB: undefined | GrowableXYArray): boolean Static |
Test for nearly equal arrays. |
|