API Reference > geometry-core > Numerics > SmallSystem SmallSystem Class static methods for commonly appearing sets of equations in 2 or 3 variables Methods Name Description constructor(): SmallSystem eliminateFromPivot(rowA: Float64Array, pivotIndex: number, rowB: Float64Array, a: number): boolean Static * in rowB, replace rowB[j] += a * rowB[pivot] * rowA[j] / rowA[pivot] for j>pivot lineSegment2dXYTransverseIntersectionUnbounded(a0: Point2d, a1: Point2d, b0: Point2d, b1: Point2d, result: Vector2d): boolean Static Return true if lines (a0,a1) to (b0, b1) have a simple intersection. lineSegment3dClosestApproachUnbounded(a0: Point3d, a1: Point3d, b0: Point3d, b1: Point3d, result: Vector2d): boolean Static Return true if lines (a0,a1) to (b0, b1) have closest approach (go by each other) in 3d lineSegment3dClosestPointUnbounded(pointA0: Point3d, pointA1: Point3d, spacePoint: Point3d): undefined | number Static Return the line fraction at which the line is closest to a space point lineSegment3dHXYClosestPointUnbounded(hA0: Point4d, hA1: Point4d, spacePoint: Point4d): undefined | number Static Return the line fraction at which the (homogeneous) line is closest to a space point as viewed in xy only. lineSegment3dHXYTransverseIntersectionUnbounded(hA0: Point4d, hA1: Point4d, hB0: Point4d, hB1: Point4d, result?: Vector2d): undefined | Vector2d Static Return true if lines (a0,a1) to (b0, b1) have a simple intersection using only xy parts of WEIGHTED 4D Points lineSegment3dXYClosestPointUnbounded(pointA0: Readonly<WritableXAndY>, pointA1: Readonly<WritableXAndY>, spacePoint: Readonly<WritableXAndY>): undefined | number Static Return the line fraction at which the line is closest to a space point as viewed in xy only. lineSegment3dXYTransverseIntersectionUnbounded(a0: Point3d, a1: Point3d, b0: Point3d, b1: Point3d, result: Vector2d): boolean Static Return true if lines (a0,a1) to (b0, b1) have a simple intersection using only xy parts lineSegmentXYUVTransverseIntersectionUnbounded(ax0: number, ay0: number, ux: number, uy: number, bx0: number, by0: number, vx: number, vy: number, result: Vector2d): boolean Static * (ax0,ay0) to (ax0+ux,ay0+uy) are line A. linearSystem2d(ux: number, vx: number, uy: number, vy: number, cx: number, cy: number, result: Vector2d): boolean Static Solve the pair of linear equations linearSystem3d(axx: number, axy: number, axz: number, ayx: number, ayy: number, ayz: number, azx: number, azy: number, azz: number, cx: number, cy: number, cz: number, result?: Vector3d): undefined | Vector3d Static Solve a linear system ray3dXYZUVWClosestApproachUnbounded(ax: number, ay: number, az: number, au: number, av: number, aw: number, bx: number, by: number, bz: number, bu: number, bv: number, bw: number, result: Vector2d): boolean Static Return true if lines (a0,a1) to (b0, b1) have closest approach (go by each other) in 3d solveBilinearPair(a0: number, b0: number, c0: number, d0: number, a1: number, b1: number, c1: number, d1: number): undefined | Point2d[] Static Solve a pair of bilinear equations Defined in numerics/Polynomials.ts Line 1381 Last Updated: 11 June, 2024