API Reference > geometry-core > CartesianGeometry > Range1d Range1d Class Range on a 1d axis low and high members are always non-null objects having low > high indicates an empty range. the range contains x values for which low <= x <= high Extends RangeBase Methods Name Description clipLinearMapToInterval(a: number, u: number, limitA: number, limitB: number): boolean clip this range to a linear half space condition clone(result?: Range1d): Range1d return a new Range1d with contents of this. cloneTranslated(delta: number, result?: Range1d): Range1d create a range with delta added to low and high containsRange(other: Range1d): boolean Test of other range is within this range containsX(x: number): boolean Test if a number is within the range. distanceToRange(other: Range1d): number returns 0 if the ranges have any overlap, otherwise the shortest absolute distance from one to the other. distanceToX(x: number): number Return 0 if the point is within the range, otherwise the (unsigned) distance to the closest face or corner expandInPlace(delta: number): void move all limits by a fixed amount. extendArray(values: number[] | Float64Array): void extend to include an array of values extendArraySubset(values: number[] | Float64Array, beginIndex: number, numValue: number): void extend to include values at indices beginIndex <= i < endIndex] extendHigh(x: number): boolean Extend only the high limit to x. extendLow(x: number): boolean Extend only the low limit to x. extendRange(other: Range1d): void Expand this range to include a range. extendX(x: number): void Expand this range by a single coordinate fractionToPoint(fraction: number): number return a point given by fractional positions within the range. intersect(other: Range1d, result?: Range1d): Range1d Return the intersection of ranges. intersectRangeXXInPlace(x0: number, x1: number): void Intersect this range with a range defined by parameters x0 and x1 intersectsRange(other: Range1d): boolean Test if there is any intersection with other range isAlmostEqual(other: Readonly<Range1d>): boolean Returns true if this and other have equal low and high parts, or both are null ranges. length(): number Return the length of the range in the x direction maxAbs(): number Return the largest absolute value among the box limits. scaleAboutCenterInPlace(scaleFactor: number): void move low and high points by scaleFactor around the center point. setFrom(other: Range1d): void copy contents from other Range1d. setFromJSON(json: Range1dProps): void Convert from a JSON object of one of these forms: setNull(): void reset the low and high to null range state. setX(x: number): void Set this range to be a single value. setXXUnordered(x0: number, x1: number): void Set this range to (min(x0,x1), max(x0,x1)) toJSON(): Range1dProps Convert to a JSON object of form union(other: Range1d, result?: Range1d): Range1d Return the intersection of ranges. createArray<T extends Range1d<T>>(values: number[] | Float64Array, result?: T): T Static Create a range containing all the values in an array. createFrom<T extends Range1d<T>>(other: T, result?: T): T Static return a new Range1d with contents of this. createNull<T extends Range1d<T>>(result?: T): T Static Create a range with no content. createX<T extends Range1d<T>>(x: number, result?: T): T Static Create a single point box createXX<T extends Range1d<T>>(xA: number, xB: number, result?: T): T Static Create a box from two values. createXXOrCorrectToNull<T extends Range1d<T>>(xA: number, xB: number, result?: T): T Static Create a box from two values, but null range if the values are reversed fromJSON<T extends Range1d<T>>(json?: Range1dProps): T Static Use setFromJSON to parse json into a new Range1d instance. Inherited methods Name Inherited from Description coordinateToRangeAbsoluteDistance(x: number, low: number, high: number): number Static RangeBase Given a coordinate and pair of range limits, return the smallest distance to the range. isExtremePoint2d(xy: Point2d): boolean Static RangeBase Return true if either of x,y is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' isExtremePoint3d(xyz: Point3d): boolean Static RangeBase Return true if any x or y or z is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' isExtremeValue(x: number): boolean Static RangeBase Return true if x is outside the range `[_EXTREME_NEGATIVE, _EXTREME_POSITIVE]' npcScaleFactor(low: number, high: number): number ProtectedStatic RangeBase Return 0 if high<= low, otherwise 1/(high-low) for use in fractionalizing rangeToRangeAbsoluteDistance(lowA: number, highA: number, lowB: number, highB: number): number Static RangeBase Return the min absolute distance from any point of [lowA,highA]' to any point of [lowB,highB]'. Properties Name Type Description high number high point coordinates. isAlmostZeroLength Accessor ReadOnly boolean Test if the x direction size is nearly zero isExact01 Accessor ReadOnly boolean isNull Accessor ReadOnly boolean Test if the box has high<low Note that a range around a single point is NOT null. isSinglePoint Accessor ReadOnly boolean Test of the range contains a single point. low number low point coordinates. Inherited properties Name Type Inherited from Description _EXTREME_NEGATIVE ProtectedStaticReadonly number RangeBase Number considered to be impossibly negative for a coordinate in a range. _EXTREME_POSITIVE ProtectedStaticReadonly number RangeBase Number considered impossibly large possibly for a coordinate in a range. Defined in geometry3d/Range.ts Line 816 Last Updated: 12 June, 2024