| Package | Description |
|---|---|
| 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 |
PVectorByteBuffered4FType<T>
The type of
PVector4FType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorByteBufferedM4F<T>
A four-element vector type with
float elements, packed into a
ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorByteBufferedM4F.copyFromTyped4F(PVectorReadable4FType<T> in_v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVector4FType<T>
The type of four-element vectors that are both readable and writable, and
have
float elements |
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorI4F<T>
A four-dimensional immutable vector type with
float elements. |
class |
PVectorM4F<T>
A four-dimensional mutable vector type with
float elements. |
| Modifier and Type | Method and Description |
|---|---|
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.absoluteInPlace(V v)
Calculate the absolute values of the elements in vector
v,
modifying the vector in-place. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.addInPlace(V v0,
PVectorReadable4FType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.addScaledInPlace(V v0,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampByPVectorInPlace(V v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampInPlace(V v,
float minimum,
float maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMaximumByPVectorInPlace(V v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMaximumInPlace(V v,
float maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMinimumByPVectorInPlace(V v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMinimumInPlace(V v,
float minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.normalizeInPlace(V v)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in v. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.orthoNormalizeInPlace(PVectorM4F.ContextPVM4F c,
V v0,
V v1)
Orthonormalize and the vectors
v0 and v1. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.scaleInPlace(V v,
double r)
Scale the vector
v by the scalar r, saving the result to
v. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.subtractInPlace(V v0,
PVectorReadable4FType<T> v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Modifier and Type | Method and Description |
|---|---|
static <T> PVectorI4F<T> |
PVectorI4F.absolute(PVectorReadable4FType<T> v)
Calculate the absolute value of the vector
v. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.absolute(PVectorReadable4FType<T> v,
V out)
Calculate the absolute values of the elements in vector
v, saving
the result to out. |
static <T> PVectorI4F<T> |
PVectorI4F.add(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <T> PVectorI4F<T> |
PVectorI4F.add(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.add(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.add(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.addInPlace(V v0,
PVectorReadable4FType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.addScaled(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.addScaled(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> 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 <T> PVectorI4F<T> |
PVectorI4F.addScaled(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
float r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <T> PVectorI4F<T> |
PVectorI4F.addScaled(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
float r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.addScaledInPlace(V v0,
PVectorReadable4FType<T> 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 <T> boolean |
PVectorM4F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
PVectorReadable4FType<T> va,
PVectorReadable4FType<T> vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static <T> boolean |
PVectorM4F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
PVectorReadable4FType<T> va,
PVectorReadable4FType<T> vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static <T> boolean |
PVectorI4F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
PVectorReadable4FType<T> va,
PVectorReadable4FType<T> vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static <T> boolean |
PVectorI4F.almostEqual(com.io7m.jequality.AlmostEqualFloat.ContextRelative context,
PVectorReadable4FType<T> va,
PVectorReadable4FType<T> vb)
Determine whether or not the vectors
va and vb are equal to
within the degree of error given in context. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clamp(PVectorReadable4FType<T> v,
double minimum,
double maximum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T> PVectorI4F<T> |
PVectorI4F.clamp(PVectorReadable4FType<T> v,
float minimum,
float maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T> PVectorI4F<T> |
PVectorI4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <T> PVectorI4F<T> |
PVectorI4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <T> PVectorI4F<T> |
PVectorI4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampByPVectorInPlace(V v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampByPVectorInPlace(V v,
PVectorReadable4FType<T> minimum,
PVectorReadable4FType<T> 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 <T> PVectorI4F<T> |
PVectorI4F.clampMaximum(PVectorReadable4FType<T> v,
float maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMaximum(PVectorReadable4FType<T> v,
float maximum,
V out)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T> PVectorI4F<T> |
PVectorI4F.clampMaximumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <T> PVectorI4F<T> |
PVectorI4F.clampMaximumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMaximumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMaximumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMaximumByPVectorInPlace(V v,
PVectorReadable4FType<T> 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 <T> PVectorI4F<T> |
PVectorI4F.clampMinimum(PVectorReadable4FType<T> v,
float minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMinimum(PVectorReadable4FType<T> v,
float minimum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T> PVectorI4F<T> |
PVectorI4F.clampMinimumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <T> PVectorI4F<T> |
PVectorI4F.clampMinimumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMinimumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.clampMinimumByPVector(PVectorReadable4FType<T> v,
PVectorReadable4FType<T> 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 <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.clampMinimumByPVectorInPlace(V v,
PVectorReadable4FType<T> 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 <T,U extends PVectorWritable4FType<T>> |
PVectorM4F.copy(PVectorReadable4FType<T> input,
U output)
Copy all elements of the vector
input to the vector output. |
void |
PVectorWritable4FType.copyFromTyped4F(PVectorReadable4FType<T> in_v)
Set the current vector to the contents of the input vector.
|
void |
PVectorM4F.copyFromTyped4F(PVectorReadable4FType<T> in_v) |
static <T> double |
PVectorM4F.distance(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> double |
PVectorM4F.distance(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> float |
PVectorI4F.distance(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> float |
PVectorI4F.distance(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> double |
PVectorM4F.dotProduct(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> double |
PVectorM4F.dotProduct(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> float |
PVectorI4F.dotProduct(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> float |
PVectorI4F.dotProduct(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.interpolateLinear(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
double alpha,
V r)
Linearly interpolate between
v0 and v1 by the amount alpha, saving the result to r. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.interpolateLinear(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
double alpha,
V r)
Linearly interpolate between
v0 and v1 by the amount alpha, saving the result to r. |
static <T> PVectorI4F<T> |
PVectorI4F.interpolateLinear(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
float alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static <T> PVectorI4F<T> |
PVectorI4F.interpolateLinear(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
float alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static <T> double |
PVectorM4F.magnitude(PVectorReadable4FType<T> v)
Calculate the magnitude of the vector
v. |
static <T> float |
PVectorI4F.magnitude(PVectorReadable4FType<T> v)
Calculate the magnitude of the vector
v. |
static <T> double |
PVectorM4F.magnitudeSquared(PVectorReadable4FType<T> v)
Calculate the squared magnitude of the vector
v. |
static <T> float |
PVectorI4F.magnitudeSquared(PVectorReadable4FType<T> v)
Calculate the squared magnitude of the vector
v. |
static <T0,T1,V extends PVectorWritable4FType<T1>> |
PMatrixM4x4F.multiplyVector4F(PMatrixM4x4F.ContextPM4F context,
PMatrixReadable4x4FType<T0,T1> m,
PVectorReadable4FType<T0> v,
V out)
Multiply the matrix
m with the vector v, writing the
resulting vector to out. |
static <T> PVectorI4F<T> |
PVectorI4F.normalize(PVectorReadable4FType<T> v)
Normalize the vector
v, preserving its direction but reducing it to
unit length. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.normalize(PVectorReadable4FType<T> v,
V out)
Returns a vector with the same orientation as
v but with magnitude
equal to 1.0 in out. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.orthoNormalize(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
V v0_out,
PVectorReadable4FType<T> v1,
V v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.orthoNormalize(PVectorM4F.ContextPVM4F c,
PVectorReadable4FType<T> v0,
V v0_out,
PVectorReadable4FType<T> v1,
V v1_out)
Orthonormalize and return the vectors
v0 and v1 . |
static <T> com.io7m.jfunctional.Pair<PVectorI4F<T>,PVectorI4F<T>> |
PVectorI4F.orthoNormalize(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Orthonormalize and return the vectors
v0 and v1 . |
static <T> com.io7m.jfunctional.Pair<PVectorI4F<T>,PVectorI4F<T>> |
PVectorI4F.orthoNormalize(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Orthonormalize and return the vectors
v0 and v1 . |
static <T> PVectorI4F<T> |
PVectorI4F.projection(PVectorReadable4FType<T> p,
PVectorReadable4FType<T> q)
Calculate the projection of the vector
p onto the vector q. |
static <T> PVectorI4F<T> |
PVectorI4F.projection(PVectorReadable4FType<T> p,
PVectorReadable4FType<T> q)
Calculate the projection of the vector
p onto the vector q. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.projection(PVectorReadable4FType<T> p,
PVectorReadable4FType<T> q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.projection(PVectorReadable4FType<T> p,
PVectorReadable4FType<T> q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.scale(PVectorReadable4FType<T> v,
double r,
V out)
Scale the vector
v by the scalar r, saving the result to
out. |
static <T> PVectorI4F<T> |
PVectorI4F.scale(PVectorReadable4FType<T> v,
float r)
Scale the vector
v by the scalar r. |
static <T> PVectorI4F<T> |
PVectorI4F.subtract(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Subtract the vector
v1 from the vector v0. |
static <T> PVectorI4F<T> |
PVectorI4F.subtract(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1)
Subtract the vector
v1 from the vector v0. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.subtract(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <T,V extends PVectorWritable4FType<T>> |
PVectorM4F.subtract(PVectorReadable4FType<T> v0,
PVectorReadable4FType<T> v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <T,V extends PVectorWritable4FType<T> & PVectorReadable4FType<T>> |
PVectorM4F.subtractInPlace(V v0,
PVectorReadable4FType<T> v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Constructor and Description |
|---|
PVectorI4F(PVectorReadable4FType<T> in_v)
Construct a vector initialized with the values given in the vector
in_v. |
PVectorM4F(PVectorReadable4FType<T> in_v)
Construct a vector initialized with the values given in the vector
in_v. |
Copyright © 2017 <code@io7m.com> http://io7m.com