81 lines
3.2 KiB
Markdown
81 lines
3.2 KiB
Markdown
|
<!-- Note: This file is automatically generated from source code comments. Changes made in this file will be overridden. -->
|
|||
|
|
|||
|
# Function distance
|
|||
|
|
|||
|
Calculates:
|
|||
|
The eucledian distance between two points in N-dimensional spaces.
|
|||
|
Distance between point and a line in 2 and 3 dimensional spaces.
|
|||
|
Pairwise distance between a set of 2D or 3D points
|
|||
|
NOTE:
|
|||
|
When substituting coefficients of a line(a, b and c), use ax + by + c = 0 instead of ax + by = c
|
|||
|
For parametric equation of a 3D line, x0, y0, z0, a, b, c are from: (x−x0, y−y0, z−z0) = t(a, b, c)
|
|||
|
|
|||
|
|
|||
|
## Syntax
|
|||
|
|
|||
|
```js
|
|||
|
math.distance([x1, y1], [x2, y2])
|
|||
|
math.distance({pointOneX: 4, pointOneY: 5}, {pointTwoX: 2, pointTwoY: 7})
|
|||
|
math.distance([x1, y1, z1], [x2, y2, z2])
|
|||
|
math.distance({pointOneX: 4, pointOneY: 5, pointOneZ: 8}, {pointTwoX: 2, pointTwoY: 7, pointTwoZ: 9})
|
|||
|
math.distance([x1, y1, ... , N1], [x2, y2, ... , N2])
|
|||
|
math.distance([[A], [B], [C]...])
|
|||
|
math.distance([x1, y1], [LinePtX1, LinePtY1], [LinePtX2, LinePtY2])
|
|||
|
math.distance({pointX: 1, pointY: 4}, {lineOnePtX: 6, lineOnePtY: 3}, {lineTwoPtX: 2, lineTwoPtY: 8})
|
|||
|
math.distance([x1, y1, z1], [LinePtX1, LinePtY1, LinePtZ1], [LinePtX2, LinePtY2, LinePtZ2])
|
|||
|
math.distance({pointX: 1, pointY: 4, pointZ: 7}, {lineOnePtX: 6, lineOnePtY: 3, lineOnePtZ: 4}, {lineTwoPtX: 2, lineTwoPtY: 8, lineTwoPtZ: 5})
|
|||
|
math.distance([x1, y1], [xCoeffLine, yCoeffLine, constant])
|
|||
|
math.distance({pointX: 10, pointY: 10}, {xCoeffLine: 8, yCoeffLine: 1, constant: 3})
|
|||
|
math.distance([x1, y1, z1], [x0, y0, z0, a-tCoeff, b-tCoeff, c-tCoeff]) point and parametric equation of 3D line
|
|||
|
math.distance([x, y, z], [x0, y0, z0, a, b, c])
|
|||
|
math.distance({pointX: 2, pointY: 5, pointZ: 9}, {x0: 4, y0: 6, z0: 3, a: 4, b: 2, c: 0})
|
|||
|
```
|
|||
|
|
|||
|
### Parameters
|
|||
|
|
|||
|
Parameter | Type | Description
|
|||
|
--------- | ---- | -----------
|
|||
|
`x` | Array | Matrix | Object | Co-ordinates of first point
|
|||
|
`y` | Array | Matrix | Object | Co-ordinates of second point
|
|||
|
|
|||
|
### Returns
|
|||
|
|
|||
|
Type | Description
|
|||
|
---- | -----------
|
|||
|
Number | BigNumber | Returns the distance from two/three points
|
|||
|
|
|||
|
|
|||
|
### Throws
|
|||
|
|
|||
|
Type | Description
|
|||
|
---- | -----------
|
|||
|
|
|||
|
|
|||
|
## Examples
|
|||
|
|
|||
|
```js
|
|||
|
math.distance([0,0], [4,4]) // Returns 5.6569
|
|||
|
math.distance(
|
|||
|
{pointOneX: 0, pointOneY: 0},
|
|||
|
{pointTwoX: 10, pointTwoY: 10}) // Returns 14.142135623730951
|
|||
|
math.distance([1, 0, 1], [4, -2, 2]) // Returns 3.74166
|
|||
|
math.distance(
|
|||
|
{pointOneX: 4, pointOneY: 5, pointOneZ: 8},
|
|||
|
{pointTwoX: 2, pointTwoY: 7, pointTwoZ: 9}) // Returns 3
|
|||
|
math.distance([1, 0, 1, 0], [0, -1, 0, -1]) // Returns 2
|
|||
|
math.distance([[1, 2], [1, 2], [1, 3]]) // Returns [0, 1, 1]
|
|||
|
math.distance([[1,2,4], [1,2,6], [8,1,3]]) // Returns [2, 7.14142842854285, 7.681145747868608]
|
|||
|
math.distance([10, 10], [8, 1, 3]) // Returns 11.535230316796387
|
|||
|
math.distance([10, 10], [2, 3], [-8, 0]) // Returns 8.759953130362847
|
|||
|
math.distance(
|
|||
|
{pointX: 1, pointY: 4},
|
|||
|
{lineOnePtX: 6, lineOnePtY: 3},
|
|||
|
{lineTwoPtX: 2, lineTwoPtY: 8}) // Returns 2.720549372624744
|
|||
|
math.distance([2, 3, 1], [1, 1, 2, 5, 0, 1]) // Returns 2.3204774044612857
|
|||
|
math.distance(
|
|||
|
{pointX: 2, pointY: 3, pointZ: 1},
|
|||
|
{x0: 1, y0: 1, z0: 2, a: 5, b: 0, c: 1} // Returns 2.3204774044612857
|
|||
|
```
|
|||
|
|
|||
|
|