| Name | Description |  | 
| constructor(lowX: numberRangeBase._EXTREME_POSITIVE, lowY: numberRangeBase._EXTREME_POSITIVE, lowZ: numberRangeBase._EXTREME_POSITIVE, highX: numberRangeBase._EXTREME_NEGATIVE, highY: numberRangeBase._EXTREME_NEGATIVE, highZ: numberRangeBase._EXTREME_NEGATIVE): Range3d |  |  | 
| clone(result?: this): this | Return a copy |  | 
| cloneTranslated(shift: Readonly<WritableXYAndZ>, result?: this): this | Return a copy, translated by adding shiftcomponents in all directions. |  | 
| containsPoint(point: Point3d): boolean | Test if a point is within the range. |  | 
| containsPointXY(point: Point3d): boolean | Test if the x,y coordinates of a point are within the range. |  | 
| containsRange(other: Range3d): boolean | Test of other range is within this range |  | 
| containsXY(x: number, y: number): boolean | Test if a point given as x,y is within the range (ignoring z of range). |  | 
| containsXYZ(x: number, y: number, z: number): boolean | Test if a point given as x,y,z is within the range. |  | 
| corners(result?: Point3d[]): Point3d[] | Return an array with the 8 corners on order wth "x varies fastest, then y, then z" |  | 
| diagonal(result?: Vector3d): Vector3d | Return the diagonal vector. |  | 
| diagonalFractionToPoint(fraction: number, result?: Point3d): Point3d | Return the diagonal vector. |  | 
| distanceToPoint(point: Readonly<WritableXYAndZ>): number | Return 0 if the point is within the range, otherwise the distance to the closest face or corner |  | 
| distanceToRange(other: Range3d): number | Returns 0 if the ranges have any overlap, otherwise the shortest absolute distance from one to the other. |  | 
| ensureMinLengths(min: number.001): void | Ensure that the length of each dimension of this Range3d is at least a minimum size. |  | 
| expandInPlace(delta: number): void | Move all limits by a fixed amount. |  | 
| extend(...point: Point3d[]): void | Extend (modify in place) so that the range is large enough to include the supplied points. |  | 
| extendArray(points: Point3d[] | GrowableXYZArray, transform?: Transform): void | Extend a range around an array of points (optionally transformed) |  | 
| extendInterpolated(xyz0: Point3d, fraction: number, xyz1: Point3d): void | Expand this range by a point interpolated between given points. |  | 
| extendInverseTransformedArray(points: Point3d[] | GrowableXYZArray, transform: Transform): void | Extend a range around an array of points (optionally transformed) |  | 
| extendInverseTransformedXYZ(transform: Transform, x: number, y: number, z: number): boolean | Multiply the point x,y,z by the inverse of the transform and use the coordinate to extend this range. |  | 
| extendPoint(point: Point3d, transform?: Transform): void | Expand this range to include a point. |  | 
| extendRange(other: Readonly<WritableLowAndHighXYZ>): void | Expand this range to include a range. |  | 
| extendSingleAxis(a: number, axisIndex: AxisIndex): void | Expand one component of this range |  | 
| extendTransformedPoint(transform: Transform, point: Point3d): void | Expand this range to include a transformed point. |  | 
| extendTransformedXYZ(transform: Transform, x: number, y: number, z: number): void | Multiply the point x,y,z by transform and use the coordinate to extend this range. |  | 
| extendTransformedXYZW(transform: Transform, x: number, y: number, z: number, w: number): void | Multiply the point x,y,z,w by transform and use the coordinate to extend this range. |  | 
| extendTransformTransformedXYZ(transformA: Transform, transformB: Transform, x: number, y: number, z: number): void | Extend the range by the two transforms applied to xyz |  | 
| extendWhenLarger(other: Readonly<WritableLowAndHighXYZ>, extrapolationFactor: number): void | In each direction look at the difference between this range limit and that of interiorRange. |  | 
| extendXOnly(x: number): void | Expand this range by distances a in only the x direction. |  | 
| extendXYZ(x: number, y: number, z: number): void | Expand this range by distances a (possibly signed) in all directions |  | 
| extendXYZW(x: number, y: number, z: number, w: number): void | Expand this range by distances a (weighted and possibly signed) in all directions |  | 
| extendYOnly(y: number): void | Expand this range by distances a in only the x direction. |  | 
| extendZOnly(z: number): void | Expand this range by distances a in only the x direction. |  | 
| fractionToPoint(fractionX: number, fractionY: number, fractionZ: number0, result?: Point3d): Point3d | Return a point given by fractional positions on the XYZ axes. |  | 
| freeze(): Readonly<Range3d> | Freeze this instance (and its members) so it is read-only |  | 
| getLocalToWorldTransform(result?: Transform): Transform | Create a local to world transform from this range. |  | 
| getNpcToWorldRangeTransform(result?: Transform): Transform | Creates an NPC to world transformation to go from 000...111 to the globally aligned cube with diagonally |  | 
| intersect(other: Range3d, result?: Range3d): Range3d | Return the intersection of ranges. |  | 
| intersectsRange(other: Range3d): boolean | Test if there is any intersection with other range |  | 
| intersectsRangeXY(other: Range3d): boolean | Test if there is any intersection with other range, ignoring z. |  | 
| isAlmostEqual(other: Readonly<Range3d>, tol?: number): boolean | Returns true if this and other have equal low and high parts, or both are null ranges. |  | 
| localToWorld(xyz: Readonly<WritableXYAndZ>, result?: Point3d): undefined | Point3d | Return a point given by fractional positions on the XYZ axes. |  | 
| localToWorldArrayInPlace(points: Point3d[]): boolean | Replace fractional coordinates by world coordinates. |  | 
| localXYZToWorld(fractionX: number, fractionY: number, fractionZ: number, result?: Point3d): undefined | Point3d | Return a point given by fractional positions on the XYZ axes. |  | 
| maxAbs(): number | Return the largest absolute value among any coordinates in the box corners. |  | 
| maxLength(): number | Return the largest of the x,y, z lengths of the range. |  | 
| rectangleXY(zFraction: number0.0, upwardNormal: booleantrue, addClosure: booleantrue): undefined | Point3d[] | Return a rectangle that is the cross section as viewed from above (z direction) and at zFraction |  | 
| scaleAboutCenterInPlace(scaleFactor: number): void | Move low and high points by scaleFactor around the center point. |  | 
| setFrom(other: Range3d): void | Copy low and high values from other. |  | 
| setFromJSON(json?: Range3dProps): void | Set this range (in place) from json such as |  | 
| setNull(): void | Set this transform to values that indicate it has no geometric contents. |  | 
| setXYZ(x: number, y: number, z: number): void | Set the range to be a single point supplied as x,y,z values |  | 
| toFloat64Array(): Float64Array | Flatten the low and high coordinates of this into an array of 6 doubles |  | 
| toJSON(): Range3dProps | Return a JSON object `{low: ... |  | 
| union(other: Range3d, result?: Range3d): Range3d | Return the union of ranges. |  | 
| worldToLocal(point: Point3d, result?: Point3d): undefined | Point3d | Return fractional coordinates of point within the range. |  | 
| worldToLocalArrayInPlace(point: Point3d[]): boolean | Return fractional coordinates of point within the range. |  | 
| xLength(): number | Return the length of the box in the x direction |  | 
| yLength(): number | Return the length of the box in the y direction |  | 
| zLength(): number | Return the length of the box in the z direction |  | 
| create(...point: Point3d[]): Range3d Static | Return a range large enough to include the supplied points. |  | 
| createArray<T extends Range3d>(points: Point3d[], result?: T): T Static | Create a range around an array of points. |  | 
| createFrom<T extends Range3d>(other: Range3d, result?: T): T Static | Return a new Range3d copied from a range or derived type |  | 
| createFromVariantData(data: MultiLineStringDataVariant): Range3d Static | Create a range from freely structured MultiLineStringDataVariant. |  | 
| createInverseTransformedArray<T extends Range3d>(transform: Transform, points: Point3d[] | GrowableXYZArray): T Static | Create a Range3d enclosing the points after inverse transform. |  | 
| createNull<T extends Range3d>(result?: T): T Static | Return a range initialized to have no content. |  | 
| createRange2d<T extends Range3d>(range: Range2d, z: number0, result?: T): T Static | Creates a 3d range from a 2d range's low and high members, setting the corresponding z values to the value given. |  | 
| createTransformed<T extends Range3d>(transform: Transform, ...point: Point3d[]): T Static | Create a Range3d enclosing the transformed points. |  | 
| createTransformedArray<T extends Range3d>(transform: Transform, points: Point3d[] | GrowableXYZArray): T Static | Create a Range3d enclosing the transformed points. |  | 
| createXYZ<T extends Range3d>(x: number, y: number, z: number, result?: T): T Static | Create a single point range |  | 
| createXYZXYZ<T extends Range3d>(xA: number, yA: number, zA: number, xB: number, yB: number, zB: number, result?: T): T Static | Create a box with 2 pairs of xyz candidates. |  | 
| createXYZXYZOrCorrectToNull<T extends Range3d>(xA: number, yA: number, zA: number, xB: number, yB: number, zB: number, result?: T): T Static | Create a box with 2 pairs of xyz candidates. |  | 
| faceCornerIndices(index: number): number[] Static | Return an array with indices of the corners of a face |  | 
| fromArrayBuffer<T extends Range3d>(buffer: ArrayBuffer): T Static | Construct a Range3d from an un-typed array. |  | 
| fromFloat64Array<T extends Range3d>(f64: Float64Array): T Static | Construct a Range3d from an array of double-precision values |  | 
| fromJSON<T extends Range3d>(json?: Range3dProps): T Static | Use setFromJSONto parsejsoninto a new Range3d instance. |  | 
| isNull(data: Readonly<WritableLowAndHighXYZ>): boolean Static | Test if  data has high<low for any of x,y,z, condition. |  | 
| toFloat64Array(val: Readonly<WritableLowAndHighXYZ>): Float64Array Static | Flatten the low and high coordinates of any json object with low.x .. |  |