origin
, absolute
, ...at
, to
, ...translate
, affine
, ...Point3 objects behave mostly like Vector3 objects. A point is just a displacement vector represented from a particular origin.
You can manipulate a point like a regular vector.
p.x // x position from origin
p.r // r coordinate from origin
Each operation between two points has the same result as between two vectors but translates coordinates of the right operand in coordinates from origin of the left operand.
Operations between two points can be considered as operations between two positions vectors located from the origin of the left operand.
A point stores relative position from current origin
, if the origin is modified using p.origin = ...
syntax
then the coordinates of the points are updated to the coordinates from new origin.
let p = Point3.zeros; // sets point (0, 0, 0) from origin (0, 0, 0)
p.origin = Vector3.ex; // sets point (-1, 0, 0) from origin (1, 0, 0)
Note If you want to access absolute position of the point use the syntax p.absolute = ...
.
Addition and subtraction are performed using Chalses relation from the origin of the left operand of the operation.
let p = Point3(1, 2, 3), q = Point3(2, 0, 0, Vector3.ex);
p.add(q); // sets p to (4, 2, 3) from origin (0, 0, 0)
p.sub(q); // sets p to (-2, 2, 3) from origin (0, 0, 0)
Represent the displacement vector between two points p
and q
with to
method.
Get coordinates of a point from a given origin with at
method.
let p = Point3.zeros, q = new Point3(1, 0, 0), ex = Vector3.ex;
p.to(b); // (1, 0, 0)
q.to(a); // (-1, 0, 0)
q.at(ex); // (0, 0, 0)
p.at(ex); // (-1, 0, 0)
Apply matrix transform, translations and affine transforms. All theses features modify the displacement vector between point and origin.
p.translate(u);
p.transform(m);
p.affine(m, u);
The size in bytes of each element in the array.
The ArrayBuffer instance referenced by the array.
The length in bytes of the array.
The offset in bytes of the array.
The length of the array.
latitude of the vector in radians
latitude of the vector in radians
longitude of the vector in radians
longitude of the vector in radians
length of the vector
squared length of the vector
third spherical coordinate, clockwise angle formed with ez
in radians
third spherical coordinate, clockwise angle formed with ez
in radians
first spherical coordinate, length of the vector
first spherical coordinate, length of the vector
spherical coordinates of the vector
spherical coordinates of the vector
cylindrical coordinates of the vector
cylindrical coordinates of the vector
first cylindrical coordinate, length of the projection of the vector on the plane formed with ex
, ey
first cylindrical coordinate, length of the projection of the vector on the plane formed with ex
, ey
second cylindrical and spherical coordinate, counterclockwise angle formed with ex
in radians
second cylindrical and spherical coordinate, counterclockwise angle formed with ex
in radians
first cartesian coordinate
first cartesian coordinate
cartesian coordinates of the vector
cartesian coordinates of the vector
second cartesian coordinate
second cartesian coordinate
third cartesian coordinate
third cartesian coordinate
opposite of the first vector of standard basis (-1, 0, 0)
second vector of standard basis (0, 1, 0)
opposite of the second vector of standard basis (0, -1, 0)
third vector of standard basis (0, 0, 1)
third vector of standard basis (0, 0, -1)
vector filled with 1
point located at absolute 0
unsigned angle between two vectors in radians
area of the parallelepiped formed with the two vectors
Returns the this object after copying a section of the array identified by start and end to the same array starting at position target
If target is negative, it is treated as length+target where length is the length of the array.
If start is negative, it is treated as length+start. If end is negative, it is treated as length+end.
If not specified, length of the this object is used as its default value.
cosine of the angle between two vector
cross product of two vector u x v
Returns an array of key, value pairs for every entry in the array
Determines whether all the members of an array satisfy the specified test.
A function that accepts up to three arguments. The every method calls the callbackfn function for each element in array1 until the callbackfn returns false, or until the end of the array.
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns the elements of an array that meet the condition specified in a callback function.
A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array.
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns the value of the first element in the array where predicate is true, and undefined otherwise.
find calls predicate once for each element of the array, in ascending order, until it finds one where predicate returns true. If such an element is found, find immediately returns that element value. Otherwise, find returns undefined.
If provided, it will be used as the this value for each invocation of predicate. If it is not provided, undefined is used instead.
Returns the index of the first element in the array where predicate is true, and -1 otherwise.
find calls predicate once for each element of the array, in ascending order, until it finds one where predicate returns true. If such an element is found, findIndex immediately returns that element index. Otherwise, findIndex returns -1.
If provided, it will be used as the this value for each invocation of predicate. If it is not provided, undefined is used instead.
Performs the specified action for each element in an array.
A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
average value of x
average value of y
average value of z
standard deviation along x
axis
standard deviation along y
axis
standard deviation along z
axis
Determines whether an array includes a certain element, returning true or false as appropriate.
The element to search for.
The position in this array at which to begin searching for searchElement.
Returns the index of the first occurrence of a value in an array.
The value to locate in the array.
The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.
Adds all the elements of an array separated by the specified separator string.
A string used to separate one element of an array from the next in the resulting String. If omitted, the array elements are separated with a comma.
Returns an list of keys in the array
Returns the index of the last occurrence of a value in an array.
The value to locate in the array.
The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.
Calls a defined callback function on each element of an array, and returns an array that contains the results.
A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
Reverses the elements in an Array.
See Object3 for more details
See Object3 for more details
See Object3 for more details
Sets a value or an array of values.
A typed or untyped array of values to set.
The index in the current array at which the values are to be written.
Returns a section of an array.
The beginning of the specified portion of the array.
The end of the specified portion of the array.
Determines whether the specified callback function returns true for any element of an array.
A function that accepts up to three arguments. The some method calls the callbackfn function for each element in array1 until the callbackfn returns true, or until the end of the array.
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Sorts an array.
The name of the function used to determine the order of the elements. If omitted, the elements are sorted in ascending, ASCII character order.
Gets a new Float64Array view of the ArrayBuffer store for this array, referencing the elements at begin, inclusive, up to end, exclusive.
The index of the beginning of the array.
The index of the end of the array.
Converts a number to a string by using the current locale.
Returns a string representation of an array.
matrix of transformation
vector of translation
Returns an list of values in the array
array containing coordinates of both position and origin
order of the vector in basis
order of the vector in basis
vector with coordinates following gaussian law. See Vector3.gaussian for more details.
vector with given cylindrical coordinates. See [[this.rthz]] for more details.
vector filled with s
Generated using TypeDoc
Brief
Point3 class represents a point of 3D affine space. Points inherit from Vector3.
Main features
origin
,absolute
, ...at
,to
, ...translate
,affine
, ...Getting started
Point3 objects behave mostly like Vector3 objects. A point is just a displacement vector represented from a particular origin.
You can manipulate a point like a regular vector.
Example
p.x // x position from origin p.r // r coordinate from origin
Each operation between two points has the same result as between two vectors but translates coordinates of the right operand in coordinates from origin of the left operand.
Operations between two points can be considered as operations between two positions vectors located from the origin of the left operand.
Position
A point stores relative position from current
origin
, if the origin is modified usingp.origin = ...
syntax then the coordinates of the points are updated to the coordinates from new origin.Example
let p = Point3.zeros; // sets point (0, 0, 0) from origin (0, 0, 0) p.origin = Vector3.ex; // sets point (-1, 0, 0) from origin (1, 0, 0)
Note If you want to access absolute position of the point use the syntax
p.absolute = ...
.Chalses Relation
Addition and subtraction are performed using Chalses relation from the origin of the left operand of the operation.
Example
let p = Point3(1, 2, 3), q = Point3(2, 0, 0, Vector3.ex); p.add(q); // sets p to (4, 2, 3) from origin (0, 0, 0) p.sub(q); // sets p to (-2, 2, 3) from origin (0, 0, 0)
Displacement and Origin Changes
Represent the displacement vector between two points
p
andq
withto
method. Get coordinates of a point from a given origin withat
method.let p = Point3.zeros, q = new Point3(1, 0, 0), ex = Vector3.ex; p.to(b); // (1, 0, 0) q.to(a); // (-1, 0, 0) q.at(ex); // (0, 0, 0) p.at(ex); // (-1, 0, 0)
Translation and Transformation
Apply matrix transform, translations and affine transforms. All theses features modify the displacement vector between point and origin.