| 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 |
PVectorByteBuffered3IType<T>
The type of
PVector3IType values that are also byte buffered. |
interface |
PVectorByteBuffered4IType<T>
The type of
PVector4IType values that are also byte buffered. |
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorByteBufferedM3I<T>
A three-element vector type with
int elements, packed into a
ByteBuffer. |
class |
PVectorByteBufferedM4I<T>
A four-element vector type with
int elements, packed into a ByteBuffer. |
| Modifier and Type | Method and Description |
|---|---|
void |
PVectorByteBufferedM4I.copyFromTyped3I(PVectorReadable3IType<T> in_v) |
void |
PVectorByteBufferedM3I.copyFromTyped3I(PVectorReadable3IType<T> in_v) |
| Modifier and Type | Interface and Description |
|---|---|
interface |
PVector3IType<T>
The type of three-element vectors that are both readable and writable, and
have
int elements |
interface |
PVector4IType<T>
The type of four-element vectors that are both readable and writable, and
have
int elements |
interface |
PVectorReadable4IType<T>
'Read' interface to phantom-typed four-dimensional vectors with integer
elements.
|
| Modifier and Type | Class and Description |
|---|---|
class |
PVectorI3I<T>
A three-dimensional immutable vector type with integer elements.
|
class |
PVectorI4I<T>
A four-dimensional immutable vector type with integer elements.
|
class |
PVectorM3I<T>
A three-dimensional mutable vector type with integer elements.
|
class |
PVectorM4I<T>
A four-dimensional mutable vector type with integer elements.
|
| Modifier and Type | Method and Description |
|---|---|
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.absoluteInPlace(V v)
Calculate the absolute values of the elements in vector
v, saving
the result to v. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.addInPlace(V v0,
PVectorReadable3IType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.addScaledInPlace(V v0,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampByPVectorInPlace(V v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampInPlace(V v,
int minimum,
int maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMaximumByPVectorInPlace(V v,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMaximumInPlace(V v,
int maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMinimumByPVectorInPlace(V v,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMinimumInPlace(V v,
int minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.scaleInPlace(V v,
int r)
Scale the vector
v by the scalar r, saving the result to
v. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.subtractInPlace(V v0,
PVectorReadable3IType<T> v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Modifier and Type | Method and Description |
|---|---|
static <T> PVectorI3I<T> |
PVectorI3I.absolute(PVectorReadable3IType<T> v)
Calculate the absolute values of the elements in vector
v. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.absolute(PVectorReadable3IType<T> v,
V out)
Calculate the absolute values of the elements in vector
v, saving
the result to out. |
static <T> PVectorI3I<T> |
PVectorI3I.add(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <T> PVectorI3I<T> |
PVectorI3I.add(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.add(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.add(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
V out)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to out. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.addInPlace(V v0,
PVectorReadable3IType<T> v1)
Calculate the element-wise sum of the vectors
v0 and v1,
saving the result to v0. |
static <T> PVectorI3I<T> |
PVectorI3I.addScaled(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <T> PVectorI3I<T> |
PVectorI3I.addScaled(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
double r)
Calculate the element-wise sum of the vectors
v0 and the
element-wise product of v1 and r. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.addScaled(PVectorReadable3IType<T> v0,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.addScaled(PVectorReadable3IType<T> v0,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.addScaledInPlace(V v0,
PVectorReadable3IType<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> PVectorI3I<T> |
PVectorI3I.clamp(PVectorReadable3IType<T> v,
int minimum,
int maximum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.clamp(PVectorReadable3IType<T> v,
int minimum,
int maximum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T> PVectorI3I<T> |
PVectorI3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <T> PVectorI3I<T> |
PVectorI3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum and maximum. |
static <T> PVectorI3I<T> |
PVectorI3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.clampByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampByPVectorInPlace(V v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampByPVectorInPlace(V v,
PVectorReadable3IType<T> minimum,
PVectorReadable3IType<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> PVectorI3I<T> |
PVectorI3I.clampMaximum(PVectorReadable3IType<T> v,
int maximum)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.clampMaximum(PVectorReadable3IType<T> v,
int maximum,
V out)
Clamp the elements of the vector
v to the range {@code [-Infinity
.. |
static <T> PVectorI3I<T> |
PVectorI3I.clampMaximumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <T> PVectorI3I<T> |
PVectorI3I.clampMaximumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> maximum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in maximum. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.clampMaximumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.clampMaximumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMaximumByPVectorInPlace(V v,
PVectorReadable3IType<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> PVectorI3I<T> |
PVectorI3I.clampMinimum(PVectorReadable3IType<T> v,
int minimum)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.clampMinimum(PVectorReadable3IType<T> v,
int minimum,
V out)
Clamp the elements of the vector
v to the range {@code [minimum .. |
static <T> PVectorI3I<T> |
PVectorI3I.clampMinimumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <T> PVectorI3I<T> |
PVectorI3I.clampMinimumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<T> minimum)
Clamp the elements of the vector
v to the inclusive range given by
the corresponding elements in minimum. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.clampMinimumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.clampMinimumByPVector(PVectorReadable3IType<T> v,
PVectorReadable3IType<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 PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.clampMinimumByPVectorInPlace(V v,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.copy(PVectorReadable3IType<T> input,
U output)
Copy all elements of the vector
input to the vector output. |
void |
PVectorWritable3IType.copyFromTyped3I(PVectorReadable3IType<T> in_v)
Set the current vector to the contents of the input vector.
|
void |
PVectorM4I.copyFromTyped3I(PVectorReadable3IType<T> in_v) |
void |
PVectorM3I.copyFromTyped3I(PVectorReadable3IType<T> in_v) |
static <T> int |
PVectorM3I.distance(PVectorM3I.ContextPVM3I c,
PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> int |
PVectorM3I.distance(PVectorM3I.ContextPVM3I c,
PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> int |
PVectorI3I.distance(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> int |
PVectorI3I.distance(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the distance between the two vectors
v0 and v1. |
static <T> int |
PVectorM3I.dotProduct(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> int |
PVectorM3I.dotProduct(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> int |
PVectorI3I.dotProduct(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T> int |
PVectorI3I.dotProduct(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Calculate the scalar product of the vectors
v0 and v1. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.interpolateLinear(PVectorM3I.ContextPVM3I c,
PVectorReadable3IType<T> v0,
PVectorReadable3IType<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 PVectorWritable3IType<T>> |
PVectorM3I.interpolateLinear(PVectorM3I.ContextPVM3I c,
PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
double alpha,
V r)
Linearly interpolate between
v0 and v1 by the amount alpha, saving the result to r. |
static <T> PVectorI3I<T> |
PVectorI3I.interpolateLinear(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
double alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static <T> PVectorI3I<T> |
PVectorI3I.interpolateLinear(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
double alpha)
Linearly interpolate between
v0 and v1 by the amount alpha. |
static <T> int |
PVectorM3I.magnitude(PVectorReadable3IType<T> v)
Calculate the magnitude of the vector
v. |
static <T> int |
PVectorI3I.magnitude(PVectorReadable3IType<T> v)
Calculate the magnitude of the vector
v. |
static <T> int |
PVectorM3I.magnitudeSquared(PVectorReadable3IType<T> v)
Calculate the squared magnitude of the vector
v. |
static <T> int |
PVectorI3I.magnitudeSquared(PVectorReadable3IType<T> v)
Calculate the squared magnitude of the vector
v. |
static <T> PVectorI3I<T> |
PVectorI3I.projection(PVectorReadable3IType<T> p,
PVectorReadable3IType<T> q)
Calculate the projection of the vector
p onto the vector q. |
static <T> PVectorI3I<T> |
PVectorI3I.projection(PVectorReadable3IType<T> p,
PVectorReadable3IType<T> q)
Calculate the projection of the vector
p onto the vector q. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.projection(PVectorReadable3IType<T> p,
PVectorReadable3IType<T> q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.projection(PVectorReadable3IType<T> p,
PVectorReadable3IType<T> q,
V r)
Calculate the projection of the vector
p onto the vector q,
saving the result in r. |
static <T> PVectorI3I<T> |
PVectorI3I.scale(PVectorReadable3IType<T> v,
double r)
Scale the vector
v by the scalar r, saving the result to
out. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.scale(PVectorReadable3IType<T> v,
double r,
V out)
Scale the vector
v by the scalar r, saving the result to
out. |
static <T> PVectorI3I<T> |
PVectorI3I.subtract(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Subtract the vector
v1 from the vector v0. |
static <T> PVectorI3I<T> |
PVectorI3I.subtract(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1)
Subtract the vector
v1 from the vector v0. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.subtract(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <T,V extends PVectorWritable3IType<T>> |
PVectorM3I.subtract(PVectorReadable3IType<T> v0,
PVectorReadable3IType<T> v1,
V out)
Subtract the vector
v1 from the vector v0, saving the
result to out. |
static <T,V extends PVectorWritable3IType<T> & PVectorReadable3IType<T>> |
PVectorM3I.subtractInPlace(V v0,
PVectorReadable3IType<T> v1)
Subtract the vector
v1 from the vector v0, saving the
result to v0. |
| Constructor and Description |
|---|
PVectorI3I(PVectorReadable3IType<T> in_v)
Construct a vector initialized with the values given in the vector
in_v. |
PVectorM3I(PVectorReadable3IType<T> in_v)
Construct a vector initialized with the values given in the vector
in_v. |
Copyright © 2017 <code@io7m.com> http://io7m.com