| 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 |
Quaternion4FType
The type of mutable quaternions with
float elements. |
interface |
QuaternionReadable4FType
'Read' interface to four-dimensional quaternions with
float
elements. |
interface |
Vector2FType
The type of two-element vectors that are both readable and writable, and
have
float elements |
interface |
Vector3FType
The type of three-element vectors that are both readable and writable, and
have
float elements |
interface |
Vector4FType
The type of four-element vectors that are both readable and writable, and
have
float elements |
interface |
VectorReadable3FType
'Read' interface to three-dimensional vectors with
float
elements. |
interface |
VectorReadable4FType
'Read' interface to four-dimensional vectors with
float elements. |
| Modifier and Type | Class and Description |
|---|---|
class |
QuaternionI4F
A four-dimensional immutable quaternion type with
float elements. |
class |
QuaternionM4F
A four-dimensional mutable quaternion type with
float elements. |
class |
VectorI2F
A two-dimensional immutable vector type with
float elements. |
class |
VectorI3F
A three-dimensional immutable vector type with
float elements. |
class |
VectorI4F
A four-dimensional immutable vector type with
float elements. |
class |
VectorM2F
A two-dimensional mutable vector type with
float elements. |
class |
VectorM3F
A three-dimensional mutable vector type with
float elements. |
class |
VectorM4F
A four-dimensional mutable vector type with
float elements. |
| Modifier and Type | Method and Description |
|---|---|
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.absoluteInPlace(V v)
Calculate the absolute values of the elements in vector
v,
modifying the vector in-place. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.addInPlace(V v0,
VectorReadable2FType v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.addScaledInPlace(V v0,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampByVectorInPlace(V v,
VectorReadable2FType minimum,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampInPlace(V v,
float minimum,
float maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMaximumByVectorInPlace(V v,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMaximumInPlace(V v,
float maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMinimumByVectorInPlace(V v,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMinimumInPlace(V v,
float minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.normalizeInPlace(V v)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in v. |
static <V extends VectorReadable2FType,U extends VectorWritable2FType> |
VectorM2F.orthoNormalize(VectorM2F.ContextVM2F c,
VectorReadable2FType v0,
U v0_out,
VectorReadable2FType v1,
U v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static <V extends VectorWritable2FType & VectorReadable2FType,W extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.orthoNormalizeInPlace(VectorM2F.ContextVM2F c,
V v0,
W v1)
Orthonormalize and the vectors
v0 and v1. |
static <V extends VectorWritable2FType & VectorReadable2FType,W extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.orthoNormalizeInPlace(VectorM2F.ContextVM2F c,
V v0,
W v1)
Orthonormalize and the vectors
v0 and v1. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.scaleInPlace(V v,
double r)
Scale the vector
v by the scalar r, saving the result to
v. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.subtractInPlace(V v0,
VectorReadable2FType v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Modifier and Type | Method and Description |
|---|---|
static VectorI2F |
VectorI2F.absolute(VectorReadable2FType v)
Calculate the absolute value of the vector
v. |
static <V extends VectorWritable2FType> |
VectorM2F.absolute(VectorReadable2FType v,
V out)
Calculate the absolute values of the elements in vector
v, saving
the result to out. |
static VectorI2F |
VectorI2F.add(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <V extends VectorWritable2FType> |
VectorM2F.add(VectorReadable2FType v0,
VectorReadable2FType v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.addInPlace(V v0,
VectorReadable2FType v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static VectorI2F |
VectorI2F.addScaled(VectorReadable2FType v0,
VectorReadable2FType v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <V extends VectorWritable2FType> |
VectorM2F.addScaled(VectorReadable2FType v0,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.addScaledInPlace(V v0,
VectorReadable2FType 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 |
VectorM2F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
VectorReadable2FType qa,
VectorReadable2FType qb)
Determine whether or not the vectors
qa and qb are equal to
within the degree of error given in context. |
static boolean |
VectorI2F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
VectorReadable2FType qa,
VectorReadable2FType qb)
Determine whether or not the vectors
qa and qb are equal to
within the degree of error given in context. |
static double |
VectorM2F.angle(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the angle between vectors
v0 and v1, in radians. |
static double |
VectorI2F.angle(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the angle between the vectors
v0 and v1 in
radians. |
static VectorI2F |
VectorI2F.clamp(VectorReadable2FType v,
float minimum,
float maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable2FType> |
VectorM2F.clamp(VectorReadable2FType v,
float minimum,
float maximum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static VectorI2F |
VectorI2F.clampByVector(VectorReadable2FType v,
VectorReadable2FType minimum,
VectorReadable2FType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <V extends VectorWritable2FType> |
VectorM2F.clampByVector(VectorReadable2FType v,
VectorReadable2FType minimum,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampByVectorInPlace(V v,
VectorReadable2FType minimum,
VectorReadable2FType 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 VectorI2F |
VectorI2F.clampMaximum(VectorReadable2FType v,
float maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <V extends VectorWritable2FType> |
VectorM2F.clampMaximum(VectorReadable2FType v,
float maximum,
V out)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static VectorI2F |
VectorI2F.clampMaximumByVector(VectorReadable2FType v,
VectorReadable2FType maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <V extends VectorWritable2FType> |
VectorM2F.clampMaximumByVector(VectorReadable2FType v,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMaximumByVectorInPlace(V v,
VectorReadable2FType 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 VectorI2F |
VectorI2F.clampMinimum(VectorReadable2FType v,
float minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <V extends VectorWritable2FType> |
VectorM2F.clampMinimum(VectorReadable2FType v,
float minimum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static VectorI2F |
VectorI2F.clampMinimumByVector(VectorReadable2FType v,
VectorReadable2FType minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <V extends VectorWritable2FType> |
VectorM2F.clampMinimumByVector(VectorReadable2FType v,
VectorReadable2FType 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 VectorWritable2FType & VectorReadable2FType> |
VectorM2F.clampMinimumByVectorInPlace(V v,
VectorReadable2FType 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 VectorWritable2FType> |
VectorM2F.copy(VectorReadable2FType input,
V output)
Copy all elements of the vector
input to the vector output. |
void |
VectorWritable2FType.copyFrom2F(VectorReadable2FType in_v)
Set the current vector to the contents of the input vector.
|
void |
VectorM4F.copyFrom2F(VectorReadable2FType in_v) |
void |
VectorM3F.copyFrom2F(VectorReadable2FType in_v) |
void |
VectorM2F.copyFrom2F(VectorReadable2FType in_v) |
void |
QuaternionM4F.copyFrom2F(VectorReadable2FType in_v) |
static double |
VectorM2F.distance(VectorM2F.ContextVM2F c,
VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the distance between the two vectors
v0 and v1. |
static double |
VectorI2F.distance(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the distance between the two vectors
v0 and v1. |
static float |
VectorM2F.dotProduct(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the scalar product of the vectors
v0 and v1. |
static double |
VectorI2F.dotProduct(VectorReadable2FType v0,
VectorReadable2FType v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <V extends VectorWritable2FType> |
VectorM2F.interpolateLinear(VectorM2F.ContextVM2F c,
VectorReadable2FType v0,
VectorReadable2FType v1,
double alpha,
V r)
Linearly interpolate between
v0 and v1 by the amount alpha, saving the result to r. |
static VectorI2F |
VectorI2F.interpolateLinear(VectorReadable2FType v0,
VectorReadable2FType v1,
float alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static double |
VectorM2F.magnitude(VectorReadable2FType v)
Calculate the magnitude of the vector
v. |
static double |
VectorI2F.magnitude(VectorReadable2FType v)
Calculate the magnitude of the vector
v. |
static double |
VectorM2F.magnitudeSquared(VectorReadable2FType v)
Calculate the squared magnitude of the vector
v. |
static double |
VectorI2F.magnitudeSquared(VectorReadable2FType v)
Calculate the squared magnitude of the vector
v. |
static <M extends MatrixWritable3x3FType> |
MatrixM3x3F.makeTranslation2F(VectorReadable2FType v,
M out)
Create a translation matrix that represents a translation by the vector
v, writing the resulting matrix to out. |
static <M extends MatrixWritable4x4FType> |
MatrixM4x4F.makeTranslation2F(VectorReadable2FType v,
M out)
Generate a matrix that represents a translation of
(v.x, v.y) from
the origin, and save to out. |
static <V extends VectorWritable2FType> |
MatrixM2x2F.multiplyVector2F(MatrixM2x2F.ContextMM2F c,
MatrixReadable2x2FType m,
VectorReadable2FType v,
V out)
Multiply the matrix
m with the vector v, writing the
resulting vector to out. |
static MatrixI2x2F |
MatrixI2x2F.newFromColumns(VectorReadable2FType column_0,
VectorReadable2FType column_1)
Construct a new immutable 2x2 matrix from the given columns.
|
static VectorI2F |
VectorI2F.normalize(VectorReadable2FType v)
Normalize the vector
v, preserving its direction but reducing it to
unit length. |
static <V extends VectorWritable2FType> |
VectorM2F.normalize(VectorReadable2FType v,
V out)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in out. |
static <V extends VectorReadable2FType,U extends VectorWritable2FType> |
VectorM2F.orthoNormalize(VectorM2F.ContextVM2F c,
VectorReadable2FType v0,
U v0_out,
VectorReadable2FType v1,
U v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static com.io7m.jfunctional.Pair<VectorI2F,VectorI2F> |
VectorI2F.orthoNormalize(VectorReadable2FType v0,
VectorReadable2FType v1)
Orthonormalize and return the vectors
v0 and v1 . |
static VectorI2F |
VectorI2F.projection(VectorReadable2FType p,
VectorReadable2FType q)
Calculate the projection of the vector
p onto the vector q. |
static <V extends VectorWritable2FType> |
VectorM2F.projection(VectorReadable2FType p,
VectorReadable2FType q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static VectorI2F |
VectorI2F.scale(VectorReadable2FType v,
double r)
Scale the vector
v by the scalar r. |
static <V extends VectorWritable2FType> |
VectorM2F.scale(VectorReadable2FType v,
double r,
V out)
Scale the vector
v by the scalar r, saving the result to
out. |
void |
MatrixWritable2x2FType.setRowWith2F(int row,
VectorReadable2FType v)
Set row
row of the matrix to v. |
void |
MatrixHeapArrayM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixHeapArrayM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixHeapArrayM2x2F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixDirectM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixDirectM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixDirectM2x2F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixWritable2x2FType.setRowWith2FUnsafe(int row,
VectorReadable2FType v)
Set row
row of the matrix to v. |
void |
MatrixHeapArrayM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixHeapArrayM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixHeapArrayM2x2F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixDirectM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixDirectM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixDirectM2x2F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
static VectorI2F |
VectorI2F.subtract(VectorReadable2FType v0,
VectorReadable2FType v1)
Subtract the vector
v1 from the vector v0. |
static <V extends VectorWritable2FType> |
VectorM2F.subtract(VectorReadable2FType v0,
VectorReadable2FType v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <V extends VectorWritable2FType & VectorReadable2FType> |
VectorM2F.subtractInPlace(V v0,
VectorReadable2FType v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Constructor and Description |
|---|
VectorI2F(VectorReadable2FType in_v)
Construct a vector initialized with the values given in the vector
v. |
VectorM2F(VectorReadable2FType in_v)
Construct a vector initialized with the values given in the vector
in_v. |
| Modifier and Type | Interface and Description |
|---|---|
interface |
QuaternionByteBuffered4FType
The type of
Quaternion4FType values that are also byte buffered. |
interface |
VectorByteBuffered2FType
The type of
Vector2FType values that are also byte buffered. |
interface |
VectorByteBuffered3FType
The type of
Vector3FType values that are also byte buffered. |
interface |
VectorByteBuffered4FType
The type of
Vector4FType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
QuaternionByteBufferedM4F
A quaternion type with
float elements, packed into a ByteBuffer. |
class |
VectorByteBufferedM2F
A two-element vector type with
float elements, packed into a
ByteBuffer. |
class |
VectorByteBufferedM3F
A four-element vector type with
float elements, packed into a
ByteBuffer. |
class |
VectorByteBufferedM4F
A four-element vector type with
float elements, packed into a
ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
VectorByteBufferedM4F.copyFrom2F(VectorReadable2FType in_v) |
void |
VectorByteBufferedM3F.copyFrom2F(VectorReadable2FType in_v) |
void |
VectorByteBufferedM2F.copyFrom2F(VectorReadable2FType in_v) |
void |
QuaternionByteBufferedM4F.copyFrom2F(VectorReadable2FType in_v) |
void |
MatrixByteBufferedM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixByteBufferedM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixByteBufferedM2x2F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
MatrixByteBufferedM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixByteBufferedM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
MatrixByteBufferedM2x2F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVectorByteBuffered2FType<T>
The type of
PVector2FType values that are also byte buffered. |
interface |
PVectorByteBuffered3FType<T>
The type of
PVector3FType values that are also byte buffered. |
interface |
PVectorByteBuffered4FType<T>
The type of
PVector4FType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorByteBufferedM2F<T>
A two-element vector type with
float elements, packed into a
ByteBuffer. |
class |
PVectorByteBufferedM3F<T>
A four-element vector type with
float elements, packed into a
ByteBuffer. |
class |
PVectorByteBufferedM4F<T>
A four-element vector type with
float elements, packed into a
ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorByteBufferedM4F.copyFrom2F(VectorReadable2FType in_v) |
void |
PVectorByteBufferedM3F.copyFrom2F(VectorReadable2FType in_v) |
void |
PVectorByteBufferedM2F.copyFrom2F(VectorReadable2FType in_v) |
void |
PMatrixByteBufferedM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixByteBufferedM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixByteBufferedM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
PMatrixByteBufferedM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVector2FType<T>
The type of two-element vectors that are both readable and writable, and
have
float elements |
interface |
PVector3FType<T>
The type of three-element vectors that are both readable and writable, and
have
float elements |
interface |
PVector4FType<T>
The type of four-element vectors that are both readable and writable, and
have
float elements |
interface |
PVectorReadable2FType<T>
'Read' interface to phantom-typed two-dimensional vectors with single
precision elements.
|
interface |
PVectorReadable3FType<T>
'Read' interface to phantom-typed three-dimensional vectors with single
precision elements.
|
interface |
PVectorReadable4FType<T>
'Read' interface to phantom-typed four-dimensional vectors with single
precision elements.
|
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorI2F<T>
A two-dimensional immutable vector type with
float elements. |
class |
PVectorI3F<T>
A three-dimensional immutable vector type with
float elements. |
class |
PVectorI4F<T>
A four-dimensional immutable vector type with
float elements. |
class |
PVectorM2F<T>
A two-dimensional mutable vector type with
float elements. |
class |
PVectorM3F<T>
A three-dimensional mutable vector type with
float elements. |
class |
PVectorM4F<T>
A four-dimensional mutable vector type with
float elements. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorM4F.copyFrom2F(VectorReadable2FType in_v) |
void |
PVectorM3F.copyFrom2F(VectorReadable2FType in_v) |
void |
PVectorM2F.copyFrom2F(VectorReadable2FType in_v) |
void |
PMatrixHeapArrayM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixHeapArrayM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixDirectM4x4F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixDirectM3x3F.setRowWith2F(int row,
VectorReadable2FType v) |
void |
PMatrixHeapArrayM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
PMatrixHeapArrayM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
PMatrixDirectM4x4F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
void |
PMatrixDirectM3x3F.setRowWith2FUnsafe(int row,
VectorReadable2FType v) |
Copyright © 2016 <code@io7m.com> http://io7m.com