## Uses of Interface
com.io7m.jtensors.parameterized.PVectorWritable2FType

- Packages that use PVectorWritable2FType
  Package | Description
  --- | ---
  com.io7m.jtensors.bytebuffered.parameterized | `ByteBuffer` backed parameterized tensors.
  com.io7m.jtensors.parameterized | Parameterized vector and matrix types.

- - ### Uses of PVectorWritable2FType in com.io7m.jtensors.bytebuffered.parameterized

    Subinterfaces of PVectorWritable2FType in com.io7m.jtensors.bytebuffered.parameterized
    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.

    Classes in com.io7m.jtensors.bytebuffered.parameterized that implement PVectorWritable2FType
    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`.

  - ### Uses of PVectorWritable2FType in com.io7m.jtensors.parameterized

    Subinterfaces of PVectorWritable2FType in com.io7m.jtensors.parameterized
    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` | `PVectorWritable3FType<T>` 'Write' interface to three-dimensional vectors with `float` elements.
    `interface` | `PVectorWritable4FType<T>` 'Write' interface to four-dimensional vectors with `float` elements.

    Classes in com.io7m.jtensors.parameterized that implement PVectorWritable2FType
    Modifier and Type | Class and Description
    --- | ---
    `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.

    Methods in com.io7m.jtensors.parameterized with type parameters of type PVectorWritable2FType
    Modifier and Type | Method and Description
    --- | ---
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`absolute(PVectorReadable2FType<T> v, V out)` Calculate the absolute values of the elements in vector `v`, saving the result to `out`.
    `static <T,V extends PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`absoluteInPlace(V v)` Calculate the absolute values of the elements in vector `v`, modifying the vector in-place.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`add(PVectorReadable2FType<T> v0, PVectorReadable2FType<T> v1, V out)` Calculate the element-wise sum of the vectors `v0` and `v1`, saving the result to `out`.
    `static <T,V extends PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`addInPlace(V v0, PVectorReadable2FType<T> v1)` Calculate the element-wise sum of the vectors `v0` and `v1`, saving the result to `v0`.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`addScaled(PVectorReadable2FType<T> v0, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`addScaledInPlace(V v0, PVectorReadable2FType<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 PVectorWritable2FType<T>> V` | PVectorM2F.`clamp(PVectorReadable2FType<T> v, float minimum, float maximum, V out)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`clampByPVector(PVectorReadable2FType<T> v, PVectorReadable2FType<T> minimum, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampByPVectorInPlace(V v, PVectorReadable2FType<T> minimum, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampInPlace(V v, float minimum, float maximum)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`clampMaximum(PVectorReadable2FType<T> v, float maximum, V out)` Clamp the elements of the vector `v` to the range {@code [-Infinity ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`clampMaximumByPVector(PVectorReadable2FType<T> v, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampMaximumByPVectorInPlace(V v, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampMaximumInPlace(V v, float maximum)` Clamp the elements of the vector `v` to the range {@code [-Infinity ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`clampMinimum(PVectorReadable2FType<T> v, float minimum, V out)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`clampMinimumByPVector(PVectorReadable2FType<T> v, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampMinimumByPVectorInPlace(V v, PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`clampMinimumInPlace(V v, float minimum)` Clamp the elements of the vector `v` to the range {@code [minimum ..
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`copy(PVectorReadable2FType<T> input, V output)` Copy all elements of the vector `input` to the vector `output`.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`interpolateLinear(PVectorM2F.ContextPVM2F c, PVectorReadable2FType<T> v0, PVectorReadable2FType<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 PVectorWritable2FType<T>> V` | PVectorM2F.`normalize(PVectorReadable2FType<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 PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`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 PVectorWritable2FType<T>> void` | PVectorM2F.`orthoNormalize(PVectorM2F.ContextPVM2F c, PVectorReadable2FType<T> v0, V v0_out, PVectorReadable2FType<T> v1, V v1_out)` Orthonormalize and return the vectors `v0` and `v1` .
    `static <T,V extends PVectorWritable2FType<T> & PVectorReadable2FType<T>> void` | PVectorM2F.`orthoNormalizeInPlace(PVectorM2F.ContextPVM2F c, V v0, V v1)` Orthonormalize and the vectors `v0` and `v1`.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`projection(PVectorReadable2FType<T> p, PVectorReadable2FType<T> q, V r)` Calculate the projection of the vector `p` onto the vector `q`, saving the result in `r`.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`scale(PVectorReadable2FType<T> v, double r, V out)` Scale the vector `v` by the scalar `r`, saving the result to `out`.
    `static <T,V extends PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`scaleInPlace(V v, double r)` Scale the vector `v` by the scalar `r`, saving the result to `v`.
    `static <T,V extends PVectorWritable2FType<T>> V` | PVectorM2F.`subtract(PVectorReadable2FType<T> v0, PVectorReadable2FType<T> v1, V out)` Subtract the vector `v1` from the vector `v0`, saving the result to `out`.
    `static <T,V extends PVectorWritable2FType<T> & PVectorReadable2FType<T>> V` | PVectorM2F.`subtractInPlace(V v0, PVectorReadable2FType<T> v1)` Subtract the vector `v1` from the vector `v0`, saving the result to `v0`.

Copyright © 2016 <code@io7m.com> http://io7m.com