| Package | Description |
|---|---|
| com.io7m.jtensors |
Core vector and matrix types.
|
| com.io7m.jtensors.bytebuffered |
ByteBuffer backed tensors. |
| com.io7m.jtensors.bytebuffered.parameterized |
ByteBuffer backed parameterized tensors. |
| com.io7m.jtensors.parameterized |
Parameterized vector and matrix types.
|
| Modifier and Type | Interface and Description |
|---|---|
interface |
Quaternion4DType
The type of mutable quaternions with
double elements. |
interface |
QuaternionReadable4DType
'Read' interface to four-dimensional quaternions with
double
elements. |
interface |
Vector4DType
The type of four-element vectors that are both readable and writable, and
have
double elements |
| Modifier and Type | Class and Description |
|---|---|
class |
QuaternionI4D
A four-dimensional immutable quaternion type with
double elements. |
class |
QuaternionM4D
A four-dimensional mutable quaternion type with
double
elements. |
class |
VectorI4D
A four-dimensional immutable vector type with
double elements. |
class |
VectorM4D
A four-dimensional mutable vector type with
double elements. |
| Modifier and Type | Method and Description |
|---|---|
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.absoluteInPlace(V v)
Calculate the absolute values of the elements in vector
v,
modifying the vector in-place. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.addInPlace(V v0,
VectorReadable4DType v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.addScaledInPlace(V v0,
VectorReadable4DType v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r, saving the result to
v0. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampByVectorInPlace(V v,
VectorReadable4DType minimum,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum, saving
the result to v. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampInPlace(V v,
double minimum,
double maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMaximumByVectorInPlace(V v,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum, saving the result to v. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMaximumInPlace(V v,
double maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMinimumByVectorInPlace(V v,
VectorReadable4DType minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum, saving the result to v. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMinimumInPlace(V v,
double minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.normalizeInPlace(V v)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in v. |
static <V extends VectorReadable4DType,U extends VectorWritable4DType> |
VectorM4D.orthoNormalize(VectorM4D.ContextVM4D c,
VectorReadable4DType v0,
U v0_out,
VectorReadable4DType v1,
U v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static <V extends VectorWritable4DType & VectorReadable4DType,W extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.orthoNormalizeInPlace(VectorM4D.ContextVM4D c,
V v0,
W v1)
Orthonormalize and the vectors
v0 and v1. |
static <V extends VectorWritable4DType & VectorReadable4DType,W extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.orthoNormalizeInPlace(VectorM4D.ContextVM4D c,
V v0,
W v1)
Orthonormalize and the vectors
v0 and v1. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.scaleInPlace(V v,
double r)
Scale the vector
v by the scalar r, saving the result to
v. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.subtractInPlace(V v0,
VectorReadable4DType v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Modifier and Type | Method and Description |
|---|---|
static VectorI4D |
VectorI4D.absolute(VectorReadable4DType v)
Calculate the absolute value of the vector
v. |
static <V extends VectorWritable4DType> |
VectorM4D.absolute(VectorReadable4DType v,
V out)
Calculate the absolute values of the elements in vector
v, saving
the result to out. |
static VectorI4D |
VectorI4D.add(VectorReadable4DType v0,
VectorReadable4DType v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <V extends VectorWritable4DType> |
VectorM4D.add(VectorReadable4DType v0,
VectorReadable4DType v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.addInPlace(V v0,
VectorReadable4DType v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static VectorI4D |
VectorI4D.addScaled(VectorReadable4DType v0,
VectorReadable4DType v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <V extends VectorWritable4DType> |
VectorM4D.addScaled(VectorReadable4DType v0,
VectorReadable4DType v1,
double r,
V out)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r, saving the result to
out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.addScaledInPlace(V v0,
VectorReadable4DType v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r, saving the result to
v0. |
static boolean |
VectorM4D.almostEqual(com.io7m.jequality.AlmostEqualDouble.ContextRelative context,
VectorReadable4DType va,
VectorReadable4DType vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static boolean |
VectorI4D.almostEqual(com.io7m.jequality.AlmostEqualDouble.ContextRelative context,
VectorReadable4DType va,
VectorReadable4DType vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static VectorI4D |
VectorI4D.clamp(VectorReadable4DType v,
double minimum,
double maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable4DType> |
VectorM4D.clamp(VectorReadable4DType v,
double minimum,
double maximum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static VectorI4D |
VectorI4D.clampByVector(VectorReadable4DType v,
VectorReadable4DType minimum,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <V extends VectorWritable4DType> |
VectorM4D.clampByVector(VectorReadable4DType v,
VectorReadable4DType minimum,
VectorReadable4DType maximum,
V out)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum, saving
the result to out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampByVectorInPlace(V v,
VectorReadable4DType minimum,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum, saving
the result to v. |
static VectorI4D |
VectorI4D.clampMaximum(VectorReadable4DType v,
double maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <V extends VectorWritable4DType> |
VectorM4D.clampMaximum(VectorReadable4DType v,
double maximum,
V out)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static VectorI4D |
VectorI4D.clampMaximumByVector(VectorReadable4DType v,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <V extends VectorWritable4DType> |
VectorM4D.clampMaximumByVector(VectorReadable4DType v,
VectorReadable4DType maximum,
V out)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum, saving the result to out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMaximumByVectorInPlace(V v,
VectorReadable4DType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum, saving the result to v. |
static VectorI4D |
VectorI4D.clampMinimum(VectorReadable4DType v,
double minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable4DType> |
VectorM4D.clampMinimum(VectorReadable4DType v,
double minimum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static VectorI4D |
VectorI4D.clampMinimumByVector(VectorReadable4DType v,
VectorReadable4DType minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <V extends VectorWritable4DType> |
VectorM4D.clampMinimumByVector(VectorReadable4DType v,
VectorReadable4DType minimum,
V out)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum, saving the result to out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.clampMinimumByVectorInPlace(V v,
VectorReadable4DType minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum, saving the result to v. |
static <V extends VectorWritable4DType> |
VectorM4D.copy(VectorReadable4DType input,
V output)
Copy all elements of the vector
input to the vector output. |
void |
VectorWritable4DType.copyFrom4D(VectorReadable4DType in_v)
Set the current vector to the contents of the input vector.
|
void |
VectorM4D.copyFrom4D(VectorReadable4DType in_v) |
void |
QuaternionM4D.copyFrom4D(VectorReadable4DType in_v) |
static double |
VectorM4D.distance(VectorM4D.ContextVM4D c,
VectorReadable4DType v0,
VectorReadable4DType v1)
Calculate the distance between the two vectors
v0 and v1. |
static double |
VectorI4D.distance(VectorReadable4DType v0,
VectorReadable4DType v1)
Calculate the distance between the two vectors
v0 and v1. |
static double |
VectorM4D.dotProduct(VectorReadable4DType v0,
VectorReadable4DType v1)
Calculate the scalar product of the vectors
v0 and v1. |
static double |
VectorI4D.dotProduct(VectorReadable4DType v0,
VectorReadable4DType v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <V extends VectorWritable4DType> |
VectorM4D.interpolateLinear(VectorM4D.ContextVM4D c,
VectorReadable4DType v0,
VectorReadable4DType v1,
double alpha,
V r)
Linearly interpolate between
v0 and v1 by the amount alpha, saving the result to r. |
static VectorI4D |
VectorI4D.interpolateLinear(VectorReadable4DType v0,
VectorReadable4DType v1,
double alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static double |
VectorM4D.magnitude(VectorReadable4DType v)
Calculate the magnitude of the vector
v. |
static double |
VectorI4D.magnitude(VectorReadable4DType v)
Calculate the magnitude of the vector
v. |
static double |
VectorM4D.magnitudeSquared(VectorReadable4DType v)
Calculate the squared magnitude of the vector
v. |
static double |
VectorI4D.magnitudeSquared(VectorReadable4DType v)
Calculate the squared magnitude of the vector
v. |
static <V extends VectorWritable4DType> |
MatrixM4x4D.multiplyVector4D(MatrixM4x4D.ContextMM4D context,
MatrixReadable4x4DType m,
VectorReadable4DType v,
V out)
Multiply the matrix
m with the vector v, writing the
resulting vector to out. |
static MatrixI4x4D |
MatrixI4x4D.newFromColumns(VectorReadable4DType column_0,
VectorReadable4DType column_1,
VectorReadable4DType column_2,
VectorReadable4DType column_3)
Construct a new immutable 4x4 matrix from the given columns.
|
static VectorI4D |
VectorI4D.normalize(VectorReadable4DType v)
Normalize the vector
v, preserving its direction but reducing it to
unit length. |
static <V extends VectorWritable4DType> |
VectorM4D.normalize(VectorReadable4DType v,
V out)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in out. |
static <V extends VectorReadable4DType,U extends VectorWritable4DType> |
VectorM4D.orthoNormalize(VectorM4D.ContextVM4D c,
VectorReadable4DType v0,
U v0_out,
VectorReadable4DType v1,
U v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static com.io7m.jfunctional.Pair<VectorI4D,VectorI4D> |
VectorI4D.orthoNormalize(VectorReadable4DType v0,
VectorReadable4DType v1)
Orthonormalize and return the vectors
v0 and v1 . |
static VectorI4D |
VectorI4D.projection(VectorReadable4DType p,
VectorReadable4DType q)
Calculate the projection of the vector
p onto the vector q. |
static <V extends VectorWritable4DType> |
VectorM4D.projection(VectorReadable4DType p,
VectorReadable4DType q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static VectorI4D |
VectorI4D.scale(VectorReadable4DType v,
double r)
Scale the vector
v by the scalar r. |
static <V extends VectorWritable4DType> |
VectorM4D.scale(VectorReadable4DType v,
double r,
V out)
Scale the vector
v by the scalar r, saving the result to
out. |
void |
MatrixWritable4x4DType.setRow0With4D(VectorReadable4DType v)
Set row 0 to
v. |
void |
MatrixHeapArrayM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
MatrixWritable4x4DType.setRow1With4D(VectorReadable4DType v)
Set row 1 to
v. |
void |
MatrixHeapArrayM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
MatrixWritable4x4DType.setRow2With4D(VectorReadable4DType v)
Set row 2 to
v. |
void |
MatrixHeapArrayM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
MatrixWritable4x4DType.setRow3With4D(VectorReadable4DType v)
Set row 3 to
v. |
void |
MatrixHeapArrayM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
MatrixWritable4x4DType.setRowWith4D(int row,
VectorReadable4DType v)
Set row
row of the matrix to v. |
void |
MatrixHeapArrayM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
MatrixWritable4x4DType.setRowWith4DUnsafe(int row,
VectorReadable4DType v)
Set row
row of the matrix to v. |
void |
MatrixHeapArrayM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
void |
MatrixDirectM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
static VectorI4D |
VectorI4D.subtract(VectorReadable4DType v0,
VectorReadable4DType v1)
Subtract the vector
v1 from the vector v0. |
static <V extends VectorWritable4DType> |
VectorM4D.subtract(VectorReadable4DType v0,
VectorReadable4DType v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <V extends VectorWritable4DType & VectorReadable4DType> |
VectorM4D.subtractInPlace(V v0,
VectorReadable4DType v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Constructor and Description |
|---|
VectorI4D(VectorReadable4DType in_v)
Construct a vector initialized with the values given in the vector
in_v. |
VectorM4D(VectorReadable4DType in_v)
Construct a vector initialized with the values given in the vector
v. |
| Modifier and Type | Interface and Description |
|---|---|
interface |
QuaternionByteBuffered4DType
The type of
Quaternion4DType values that are also byte buffered. |
interface |
VectorByteBuffered4DType
The type of
Vector4DType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
QuaternionByteBufferedM4D
A quaternion type with
double elements, packed into a ByteBuffer. |
class |
VectorByteBufferedM4D
A four-element vector type with
double elements, packed into a
ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
VectorByteBufferedM4D.copyFrom4D(VectorReadable4DType in_v) |
void |
QuaternionByteBufferedM4D.copyFrom4D(VectorReadable4DType in_v) |
void |
MatrixByteBufferedM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
MatrixByteBufferedM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
MatrixByteBufferedM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
MatrixByteBufferedM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
MatrixByteBufferedM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
MatrixByteBufferedM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVectorByteBuffered4DType<T>
The type of
PVector4DType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorByteBufferedM4D<T>
A four-element vector type with
double elements, packed into a
ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorByteBufferedM4D.copyFrom4D(VectorReadable4DType in_v) |
void |
PMatrixByteBufferedM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
PMatrixByteBufferedM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
PMatrixByteBufferedM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
PMatrixByteBufferedM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
PMatrixByteBufferedM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
PMatrixByteBufferedM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVector4DType<T>
The type of four-element vectors that are both readable and writable, and
have
double elements |
interface |
PVectorReadable4DType<T>
'Read' interface to phantom-typed four-dimensional vectors with double
precision elements.
|
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorI4D<T>
A four-dimensional immutable vector type with
double elements. |
class |
PVectorM4D<T>
A four-dimensional mutable vector type with
double elements. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorM4D.copyFrom4D(VectorReadable4DType in_v) |
static <T0,T1> PMatrixI4x4D<T0,T1> |
PMatrixI4x4D.newFromColumns(VectorReadable4DType column_0,
VectorReadable4DType column_1,
VectorReadable4DType column_2,
VectorReadable4DType column_3)
Construct a new immutable 4x4 matrix from the given columns.
|
void |
PMatrixHeapArrayM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRow0With4D(VectorReadable4DType v) |
void |
PMatrixHeapArrayM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRow1With4D(VectorReadable4DType v) |
void |
PMatrixHeapArrayM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRow2With4D(VectorReadable4DType v) |
void |
PMatrixHeapArrayM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRow3With4D(VectorReadable4DType v) |
void |
PMatrixHeapArrayM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRowWith4D(int row,
VectorReadable4DType v) |
void |
PMatrixHeapArrayM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
void |
PMatrixDirectM4x4D.setRowWith4DUnsafe(int row,
VectorReadable4DType v) |
Copyright © 2017 <code@io7m.com> http://io7m.com