# Uses of Classorg.joml.Vector4f

Packages that use Vector4f
Package
Description
Contains all classes of JOML.
• ## Uses of Vector4f in org.joml

Methods in org.joml that return Vector4f
Modifier and Type
Method
Description
`Vector4f`
Vector4f.`absolute()`
Compute the absolute of each of this vector's components.
`Vector4f`
Vector4f.`absolute(Vector4f dest)`

`Vector4f`
Vector4fc.`absolute(Vector4f dest)`
Compute the absolute of each of this vector's components and store the result into `dest`.
`Vector4f`
Vector4f.```add(float x, float y, float z, float w)```
Increment the components of this vector by the given values.
`Vector4f`
Vector4f.```add(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.`add(Vector4fc v)`
Add the supplied vector to this one.
`Vector4f`
Vector4f.```add(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```add(float x, float y, float z, float w, Vector4f dest)```
Increment the components of this vector by the given values and store the result in `dest`.
`Vector4f`
Vector4fc.```add(Vector4fc v, Vector4f dest)```
Add the supplied vector to this one and store the result in `dest`.
`Vector4f`
Vector4f.`ceil()`
Set each component of this vector to the smallest (closest to negative infinity) `float` value that is greater than or equal to that component and is equal to a mathematical integer.
`Vector4f`
Vector4f.`ceil(Vector4f dest)`

`Vector4f`
Vector4fc.`ceil(Vector4f dest)`
Compute for each component of this vector the smallest (closest to negative infinity) `float` value that is greater than or equal to that component and is equal to a mathematical integer and store the result in `dest`.
`Vector4f`
Vector4f.`div(float scalar)`
Divide all components of this `Vector4f` by the given scalar value.
`Vector4f`
Vector4f.```div(float x, float y, float z, float w)```
Divide the components of this Vector4f by the given scalar values and store the result in `this`.
`Vector4f`
Vector4f.```div(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```div(float scalar, Vector4f dest)```

`Vector4f`
Vector4f.`div(Vector4fc v)`
Divide this Vector4f component-wise by another Vector4f.
`Vector4f`
Vector4f.```div(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```div(float x, float y, float z, float w, Vector4f dest)```
Divide the components of this Vector4f by the given scalar values and store the result in `dest`.
`Vector4f`
Vector4fc.```div(float scalar, Vector4f dest)```
Divide all components of this `Vector4f` by the given scalar value and store the result in `dest`.
`Vector4f`
Vector4fc.```div(Vector4fc v, Vector4f dest)```
Divide this Vector4f component-wise by another Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.`floor()`
Set each component of this vector to the largest (closest to positive infinity) `float` value that is less than or equal to that component and is equal to a mathematical integer.
`Vector4f`
Vector4f.`floor(Vector4f dest)`

`Vector4f`
Vector4fc.`floor(Vector4f dest)`
Compute for each component of this vector the largest (closest to positive infinity) `float` value that is less than or equal to that component and is equal to a mathematical integer and store the result in `dest`.
`Vector4f`
Vector4f.```fma(float a, Vector4fc b)```
Add the component-wise multiplication of `a * b` to this vector.
`Vector4f`
Vector4f.```fma(float a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4f.```fma(Vector4fc a, Vector4fc b)```
Add the component-wise multiplication of `a * b` to this vector.
`Vector4f`
Vector4f.```fma(Vector4fc a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4fc.```fma(float a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `a * b` to this vector and store the result in `dest`.
`Vector4f`
Vector4fc.```fma(Vector4fc a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `a * b` to this vector and store the result in `dest`.
`Vector4f`
Matrix4f.```frustumPlane(int plane, Vector4f dest)```

`Vector4f`
Matrix4fc.```frustumPlane(int plane, Vector4f planeEquation)```
Calculate a frustum plane of `this` matrix, which can be a projection matrix or a combined modelview-projection matrix, and store the result in the given `planeEquation`.
`Vector4f`
Matrix4x3f.```frustumPlane(int which, Vector4f dest)```

`Vector4f`
Matrix4x3fc.```frustumPlane(int which, Vector4f dest)```
Calculate a frustum plane of `this` matrix, which can be a projection matrix or a combined modelview-projection matrix, and store the result in the given `dest`.
`Vector4f`
Vector4d.`get(Vector4f dest)`

`Vector4f`
Vector4dc.`get(Vector4f dest)`
Set the components of the given vector `dest` to those of `this` vector.
`Vector4f`
Vector4f.`get(Vector4f dest)`

`Vector4f`
Vector4fc.`get(Vector4f dest)`
Set the components of the given vector `dest` to those of `this` vector.
`Vector4f`
Matrix4f.```getColumn(int column, Vector4f dest)```

`Vector4f`
Matrix4fc.```getColumn(int column, Vector4f dest)```
Get the column at the given `column` index, starting with `0`.
`Vector4f`
Matrix4f.```getRow(int row, Vector4f dest)```

`Vector4f`
Matrix4fc.```getRow(int row, Vector4f dest)```
Get the row at the given `row` index, starting with `0`.
`Vector4f`
Matrix4x3f.```getRow(int row, Vector4f dest)```

`Vector4f`
Matrix4x3fc.```getRow(int row, Vector4f dest)```
Get the row at the given `row` index, starting with `0`.
`Vector4f`
Vector4f.```hermite(Vector4fc t0, Vector4fc v1, Vector4fc t1, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```hermite(Vector4fc t0, Vector4fc v1, Vector4fc t1, float t, Vector4f dest)```
Compute a hermite interpolation between `this` vector and its associated tangent `t0` and the given vector `v` with its tangent `t1` and store the result in `dest`.
`Vector4f`
Vector4f.```lerp(Vector4fc other, float t)```
Linearly interpolate `this` and `other` using the given interpolation factor `t` and store the result in `this`.
`Vector4f`
Vector4f.```lerp(Vector4fc other, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```lerp(Vector4fc other, float t, Vector4f dest)```
Linearly interpolate `this` and `other` using the given interpolation factor `t` and store the result in `dest`.
`Vector4f`
Vector4f.`max(Vector4fc v)`
Set the components of this vector to be the component-wise maximum of this and the other vector.
`Vector4f`
Vector4f.```max(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```max(Vector4fc v, Vector4f dest)```
Set the components of `dest` to be the component-wise maximum of this and the other vector.
`Vector4f`
Vector4f.`min(Vector4fc v)`
Set the components of this vector to be the component-wise minimum of this and the other vector.
`Vector4f`
Vector4f.```min(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```min(Vector4fc v, Vector4f dest)```
Set the components of `dest` to be the component-wise minimum of this and the other vector.
`Vector4f`
Vector4f.`mul(float scalar)`
Multiply all components of this `Vector4f` by the given scalar value.
`Vector4f`
Vector4f.```mul(float x, float y, float z, float w)```
Multiply the components of this Vector4f by the given scalar values and store the result in `this`.
`Vector4f`
Vector4f.```mul(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```mul(float scalar, Vector4f dest)```

`Vector4f`
Vector4f.`mul(Matrix4fc mat)`
Multiply the given matrix mat with this Vector4f and store the result in `this`.
`Vector4f`
Vector4f.```mul(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4f.`mul(Matrix4x3fc mat)`
Multiply the given matrix mat with this Vector4f and store the result in `this`.
`Vector4f`
Vector4f.```mul(Matrix4x3fc mat, Vector4f dest)```

`Vector4f`
Vector4f.`mul(Vector4fc v)`
Multiply this Vector4f component-wise by another Vector4f.
`Vector4f`
Vector4f.```mul(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```mul(float x, float y, float z, float w, Vector4f dest)```
Multiply the components of this Vector4f by the given scalar values and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(float scalar, Vector4f dest)```
Multiply all components of this `Vector4f` by the given scalar value and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Matrix4fc mat, Vector4f dest)```
Multiply the given matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Matrix4x3fc mat, Vector4f dest)```
Multiply the given matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Vector4fc v, Vector4f dest)```
Multiply this Vector4f component-wise by another Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.```mulAdd(float a, Vector4fc b)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `this`.
`Vector4f`
Vector4f.```mulAdd(float a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4f.```mulAdd(Vector4fc a, Vector4fc b)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `this`.
`Vector4f`
Vector4f.```mulAdd(Vector4fc a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAdd(float a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `dest`.
`Vector4f`
Vector4fc.```mulAdd(Vector4fc a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `dest`.
`Vector4f`
Vector4f.```mulAffine(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAffine(Matrix4fc mat, Vector4f dest)```
Multiply the given affine matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.```mulAffineTranspose(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAffineTranspose(Matrix4fc mat, Vector4f dest)```
Multiply the transpose of the given affine matrix `mat` with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.`mulProject(Matrix4fc mat)`
Multiply the given matrix `mat` with this Vector4f, perform perspective division.
`Vector4f`
Vector4f.```mulProject(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulProject(Matrix4fc mat, Vector4f dest)```
Multiply the given matrix `mat` with this Vector4f, perform perspective division and store the result in `dest`.
`Vector4f`
Vector4f.`mulTranspose(Matrix4fc mat)`
Multiply the transpose of the given matrix `mat` with this Vector4f and store the result in `this`.
`Vector4f`
Vector4f.```mulTranspose(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulTranspose(Matrix4fc mat, Vector4f dest)```
Multiply the transpose of the given matrix `mat` with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.`negate()`
Negate this vector.
`Vector4f`
Vector4f.`negate(Vector4f dest)`

`Vector4f`
Vector4fc.`negate(Vector4f dest)`
Negate this vector and store the result in `dest`.
`Vector4f`
Vector4f.`normalize()`
Normalizes this vector.
`Vector4f`
Vector4f.`normalize(float length)`
Scale this vector to have the given length.
`Vector4f`
Vector4f.```normalize(float length, Vector4f dest)```

`Vector4f`
Vector4f.`normalize(Vector4f dest)`

`Vector4f`
Vector4fc.```normalize(float length, Vector4f dest)```
Scale this vector to have the given length and store the result in `dest`.
`Vector4f`
Vector4fc.`normalize(Vector4f dest)`
Normalizes this vector and store the result in `dest`.
`Vector4f`
Vector4f.`normalize3()`
Normalize this vector by computing only the norm of `(x, y, z)`.
`Vector4f`
Vector4f.`normalize3(Vector4f dest)`

`Vector4f`
Vector4fc.`normalize3(Vector4f dest)`
Normalize this vector by computing only the norm of `(x, y, z)` and store the result in `dest`.
`Vector4f`
Matrix4f.```project(float x, float y, float z, int[] viewport, Vector4f winCoordsDest)```

`Vector4f`
Matrix4f.```project(Vector3fc position, int[] viewport, Vector4f winCoordsDest)```

`Vector4f`
Matrix4fc.```project(float x, float y, float z, int[] viewport, Vector4f winCoordsDest)```
Project the given `(x, y, z)` position via `this` matrix using the specified viewport and store the resulting window coordinates in `winCoordsDest`.
`Vector4f`
Matrix4fc.```project(Vector3fc position, int[] viewport, Vector4f winCoordsDest)```
Project the given `position` via `this` matrix using the specified viewport and store the resulting window coordinates in `winCoordsDest`.
`Vector4f`
Vector4f.`rotate(Quaternionfc quat)`
Rotate this vector by the given quaternion `quat` and store the result in `this`.
`Vector4f`
Vector4f.```rotate(Quaternionfc quat, Vector4f dest)```

`Vector4f`
Vector4fc.```rotate(Quaternionfc quat, Vector4f dest)```
Rotate this vector by the given quaternion `quat` and store the result in `dest`.
`Vector4f`
Vector4f.```rotateAbout(float angle, float x, float y, float z)```
Rotate this vector the specified radians around the given rotation axis.
`Vector4f`
Vector4f.```rotateAxis(float angle, float aX, float aY, float aZ, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateAxis(float angle, float aX, float aY, float aZ, Vector4f dest)```
Rotate this vector the specified radians around the given rotation axis and store the result into `dest`.
`Vector4f`
Vector4f.`rotateX(float angle)`
Rotate this vector the specified radians around the X axis.
`Vector4f`
Vector4f.```rotateX(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateX(float angle, Vector4f dest)```
Rotate this vector the specified radians around the X axis and store the result into `dest`.
`Vector4f`
Vector4f.`rotateY(float angle)`
Rotate this vector the specified radians around the Y axis.
`Vector4f`
Vector4f.```rotateY(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateY(float angle, Vector4f dest)```
Rotate this vector the specified radians around the Y axis and store the result into `dest`.
`Vector4f`
Vector4f.`rotateZ(float angle)`
Rotate this vector the specified radians around the Z axis.
`Vector4f`
Vector4f.```rotateZ(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateZ(float angle, Vector4f dest)```
Rotate this vector the specified radians around the Z axis and store the result into `dest`.
`Vector4f`
Vector4f.`round()`
Set each component of this vector to the closest float that is equal to a mathematical integer, with ties rounding to positive infinity.
`Vector4f`
Vector4f.`round(Vector4f dest)`

`Vector4f`
Vector4fc.`round(Vector4f dest)`
Compute for each component of this vector the closest float that is equal to a mathematical integer, with ties rounding to positive infinity and store the result in `dest`.
`Vector4f`
Vector4f.`set(double d)`
Set the x, y, z, and w components to the supplied value.
`Vector4f`
Vector4f.```set(double x, double y, double z, double w)```
Set the x, y, z, and w components to the supplied values.
`Vector4f`
Vector4f.`set(float d)`
Set the x, y, z, and w components to the supplied value.
`Vector4f`
Vector4f.`set(float[] xyzw)`
Set the four components of this vector to the first four elements of the given array.
`Vector4f`
Vector4f.```set(float x, float y, float z)```
Set the x, y, z components to the supplied values.
`Vector4f`
Vector4f.```set(float x, float y, float z, float w)```
Set the x, y, z, and w components to the supplied values.
`Vector4f`
Vector4f.```set(int index, ByteBuffer buffer)```
Read this vector from the supplied `ByteBuffer` starting at the specified absolute buffer position/index.
`Vector4f`
Vector4f.```set(int index, FloatBuffer buffer)```
Read this vector from the supplied `FloatBuffer` starting at the specified absolute buffer position/index.
`Vector4f`
Vector4f.`set(ByteBuffer buffer)`
Read this vector from the supplied `ByteBuffer` at the current buffer `position`.
`Vector4f`
Vector4f.`set(FloatBuffer buffer)`
Read this vector from the supplied `FloatBuffer` at the current buffer `position`.
`Vector4f`
Vector4f.```set(Vector2fc v, float z, float w)```
Sets the first two components of this to the components of given `v` and last two components to the given `z`, and `w`.
`Vector4f`
Vector4f.```set(Vector2ic v, float z, float w)```
Sets the first two components of this to the components of given `v` and last two components to the given `z`, and `w`.
`Vector4f`
Vector4f.```set(Vector3fc v, float w)```
Set the first three components of this to the components of `v` and the last component to `w`.
`Vector4f`
Vector4f.```set(Vector3ic v, float w)```
Set the first three components of this to the components of `v` and the last component to `w`.
`Vector4f`
Vector4f.`set(Vector4dc v)`
Set this `Vector4f` to the values of the given `v`.
`Vector4f`
Vector4f.`set(Vector4fc v)`
Set this `Vector4f` to the values of the given `v`.
`Vector4f`
Vector4f.`set(Vector4ic v)`
Set this `Vector4f` to the values of the given `v`.
`Vector4f`
Vector4f.```setComponent(int component, float value)```
Set the value of the specified component of this vector.
`Vector4f`
Vector4f.`setFromAddress(long address)`
Set the values of this vector by reading 4 float values from off-heap memory, starting at the given address.
`Vector4f`
Vector4f.```smoothStep(Vector4fc v, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```smoothStep(Vector4fc v, float t, Vector4f dest)```
Compute a smooth-step (i.e. hermite with zero tangents) interpolation between `this` vector and the given vector `v` and store the result in `dest`.
`Vector4f`
Vector4f.```sub(float x, float y, float z, float w)```
Subtract `(x, y, z, w)` from this.
`Vector4f`
Vector4f.```sub(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.`sub(Vector4fc v)`
Subtract the supplied vector from this one.
`Vector4f`
Vector4f.```sub(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```sub(float x, float y, float z, float w, Vector4f dest)```
Subtract `(x, y, z, w)` from this and store the result in `dest`.
`Vector4f`
Vector4fc.```sub(Vector4fc v, Vector4f dest)```
Subtract the supplied vector from this one and store the result in `dest`.
`Vector4f`
AxisAngle4f.`transform(Vector4f v)`
Transform the given vector by the rotation transformation described by this `AxisAngle4f`.
`Vector4f`
AxisAngle4f.```transform(Vector4fc v, Vector4f dest)```
Transform the given vector by the rotation transformation described by this `AxisAngle4f` and store the result in `dest`.
`Vector4f`
Matrix4f.```transform(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transform(Vector4f v)`

`Vector4f`
Matrix4f.```transform(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transform(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by this matrix and store the result in `dest`.
`Vector4f`
Matrix4fc.`transform(Vector4f v)`
Transform/multiply the given vector by this matrix and store the result in that vector.
`Vector4f`
Matrix4fc.```transform(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix and store the result in `dest`.
`Vector4f`
Matrix4x3f.`transform(Vector4f v)`

`Vector4f`
Matrix4x3f.```transform(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4x3fc.`transform(Vector4f v)`
Transform/multiply the given vector by this matrix and store the result in that vector.
`Vector4f`
Matrix4x3fc.```transform(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix and store the result in `dest`.
`Vector4f`
Quaterniond.```transform(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transform(Vector4f vec)`

`Vector4f`
Quaterniond.```transform(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transform(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transform(Vector4f vec)`
Transform the given vector by this quaternion.
`Vector4f`
Quaterniondc.```transform(Vector4fc vec, Vector4f dest)```
Transform the given vector by this quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transform(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transform(Vector4f vec)`

`Vector4f`
Quaternionf.```transform(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transform(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transform(Vector4f vec)`
Transform the given vector by this quaternion.
`Vector4f`
Quaternionfc.```transform(Vector4fc vec, Vector4f dest)```
Transform the given vector by this quaternion and store the result in `dest`.
`Vector4f`
Matrix4f.```transformAffine(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformAffine(Vector4f v)`

`Vector4f`
Matrix4f.```transformAffine(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformAffine(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the 4D-vector `(x, y, z, w)` by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`) and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformAffine(Vector4f v)`
Transform/multiply the given 4D-vector by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`).
`Vector4f`
Matrix4fc.```transformAffine(Vector4fc v, Vector4f dest)```
Transform/multiply the given 4D-vector by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`) and store the result in `dest`.
`Vector4f`
Quaterniond.```transformInverse(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformInverse(Vector4f vec)`

`Vector4f`
Quaterniond.```transformInverse(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformInverse(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformInverse(Vector4f vec)`
Transform the given vector by the inverse of this quaternion.
`Vector4f`
Quaterniondc.```transformInverse(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformInverse(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformInverse(Vector4f vec)`

`Vector4f`
Quaternionf.```transformInverse(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformInverse(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformInverse(Vector4f vec)`
Transform the given vector by the inverse of this quaternion.
`Vector4f`
Quaternionfc.```transformInverse(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.```transformInverseUnit(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformInverseUnit(Vector4f vec)`

`Vector4f`
Quaterniond.```transformInverseUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformInverseUnit(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformInverseUnit(Vector4f vec)`
Transform the given vector by the inverse of this unit quaternion.
`Vector4f`
Quaterniondc.```transformInverseUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformInverseUnit(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformInverseUnit(Vector4f vec)`

`Vector4f`
Quaternionf.```transformInverseUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformInverseUnit(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformInverseUnit(Vector4f vec)`
Transform the given vector by the inverse of this unit quaternion.
`Vector4f`
Quaternionfc.```transformInverseUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.`transformPositiveX(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveX(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this quaternion.
`Vector4f`
Quaterniond.`transformPositiveY(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveY(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this quaternion.
`Vector4f`
Quaterniond.`transformPositiveZ(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveZ(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this quaternion.
`Vector4f`
Matrix4f.```transformProject(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformProject(Vector4f v)`

`Vector4f`
Matrix4f.```transformProject(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformProject(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by this matrix, perform perspective divide and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformProject(Vector4f v)`
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in that vector.
`Vector4f`
Matrix4fc.```transformProject(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in `dest`.
`Vector4f`
Matrix4f.```transformTranspose(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformTranspose(Vector4f v)`

`Vector4f`
Matrix4f.```transformTranspose(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformTranspose(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by the transpose of this matrix and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformTranspose(Vector4f v)`
Transform/multiply the given vector by the transpose of this matrix and store the result in that vector.
`Vector4f`
Matrix4fc.```transformTranspose(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by the transpose of this matrix and store the result in `dest`.
`Vector4f`
Quaterniond.```transformUnit(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformUnit(Vector4f vec)`

`Vector4f`
Quaterniond.```transformUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformUnit(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformUnit(Vector4f vec)`
Transform the given vector by this unit quaternion.
`Vector4f`
Quaterniondc.```transformUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformUnit(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformUnit(Vector4f vec)`

`Vector4f`
Quaternionf.```transformUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformUnit(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformUnit(Vector4f vec)`
Transform the given vector by this unit quaternion.
`Vector4f`
Quaternionfc.```transformUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.`transformUnitPositiveX(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveX(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this unit quaternion.
`Vector4f`
Quaterniond.`transformUnitPositiveY(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveY(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this unit quaternion.
`Vector4f`
Quaterniond.`transformUnitPositiveZ(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveZ(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this unit quaternion.
`Vector4f`
Matrix4f.```unproject(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4f.```unproject(Vector3fc winCoords, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4fc.```unproject(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `(winX, winY, winZ)` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4fc.```unproject(Vector3fc winCoords, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `winCoords` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4f.```unprojectInv(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4f.```unprojectInv(Vector3fc winCoords, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4fc.```unprojectInv(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `(winX, winY, winZ)` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4fc.```unprojectInv(Vector3fc winCoords, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `winCoords` by `this` matrix using the specified viewport.
`Vector4f`
Vector4f.`zero()`
Set all components to zero.
Methods in org.joml with parameters of type Vector4f
Modifier and Type
Method
Description
`Vector4f`
Vector4f.`absolute(Vector4f dest)`

`Vector4f`
Vector4fc.`absolute(Vector4f dest)`
Compute the absolute of each of this vector's components and store the result into `dest`.
`Vector4f`
Vector4f.```add(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```add(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```add(float x, float y, float z, float w, Vector4f dest)```
Increment the components of this vector by the given values and store the result in `dest`.
`Vector4f`
Vector4fc.```add(Vector4fc v, Vector4f dest)```
Add the supplied vector to this one and store the result in `dest`.
`Vector4f`
Vector4f.`ceil(Vector4f dest)`

`Vector4f`
Vector4fc.`ceil(Vector4f dest)`
Compute for each component of this vector the smallest (closest to negative infinity) `float` value that is greater than or equal to that component and is equal to a mathematical integer and store the result in `dest`.
`Vector4f`
Vector4f.```div(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```div(float scalar, Vector4f dest)```

`Vector4f`
Vector4f.```div(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```div(float x, float y, float z, float w, Vector4f dest)```
Divide the components of this Vector4f by the given scalar values and store the result in `dest`.
`Vector4f`
Vector4fc.```div(float scalar, Vector4f dest)```
Divide all components of this `Vector4f` by the given scalar value and store the result in `dest`.
`Vector4f`
Vector4fc.```div(Vector4fc v, Vector4f dest)```
Divide this Vector4f component-wise by another Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.`floor(Vector4f dest)`

`Vector4f`
Vector4fc.`floor(Vector4f dest)`
Compute for each component of this vector the largest (closest to positive infinity) `float` value that is less than or equal to that component and is equal to a mathematical integer and store the result in `dest`.
`Vector4f`
Vector4f.```fma(float a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4f.```fma(Vector4fc a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4fc.```fma(float a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `a * b` to this vector and store the result in `dest`.
`Vector4f`
Vector4fc.```fma(Vector4fc a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `a * b` to this vector and store the result in `dest`.
`Vector4f`
Matrix4f.```frustumPlane(int plane, Vector4f dest)```

`Vector4f`
Matrix4fc.```frustumPlane(int plane, Vector4f planeEquation)```
Calculate a frustum plane of `this` matrix, which can be a projection matrix or a combined modelview-projection matrix, and store the result in the given `planeEquation`.
`Vector4f`
Matrix4x3f.```frustumPlane(int which, Vector4f dest)```

`Vector4f`
Matrix4x3fc.```frustumPlane(int which, Vector4f dest)```
Calculate a frustum plane of `this` matrix, which can be a projection matrix or a combined modelview-projection matrix, and store the result in the given `dest`.
`Vector4f`
Vector4d.`get(Vector4f dest)`

`Vector4f`
Vector4dc.`get(Vector4f dest)`
Set the components of the given vector `dest` to those of `this` vector.
`Vector4f`
Vector4f.`get(Vector4f dest)`

`Vector4f`
Vector4fc.`get(Vector4f dest)`
Set the components of the given vector `dest` to those of `this` vector.
`Vector4f`
Matrix4f.```getColumn(int column, Vector4f dest)```

`Vector4f`
Matrix4fc.```getColumn(int column, Vector4f dest)```
Get the column at the given `column` index, starting with `0`.
`Vector4f`
Matrix4f.```getRow(int row, Vector4f dest)```

`Vector4f`
Matrix4fc.```getRow(int row, Vector4f dest)```
Get the row at the given `row` index, starting with `0`.
`Vector4f`
Matrix4x3f.```getRow(int row, Vector4f dest)```

`Vector4f`
Matrix4x3fc.```getRow(int row, Vector4f dest)```
Get the row at the given `row` index, starting with `0`.
`Vector4f`
Vector4f.```hermite(Vector4fc t0, Vector4fc v1, Vector4fc t1, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```hermite(Vector4fc t0, Vector4fc v1, Vector4fc t1, float t, Vector4f dest)```
Compute a hermite interpolation between `this` vector and its associated tangent `t0` and the given vector `v` with its tangent `t1` and store the result in `dest`.
`static boolean`
Intersectionf.```intersectPlaneSphere(float a, float b, float c, float d, float centerX, float centerY, float centerZ, float radius, Vector4f intersectionCenterAndRadius)```
Test whether the plane with the general plane equation a*x + b*y + c*z + d = 0 intersects the sphere with center `(centerX, centerY, centerZ)` and `radius`, and store the center of the circle of intersection in the `(x, y, z)` components of the supplied vector and the radius of that circle in the w component.
`static boolean`
Intersectionf.```intersectPlaneSweptSphere(float a, float b, float c, float d, float cX, float cY, float cZ, float radius, float vX, float vY, float vZ, Vector4f pointAndTime)```
Test whether the plane with the general plane equation a*x + b*y + c*z + d = 0 intersects the moving sphere with center `(cX, cY, cZ)`, `radius` and velocity `(vX, vY, vZ)`, and store the point of intersection in the `(x, y, z)` components of the supplied vector and the time of intersection in the w component.
`static boolean`
Intersectionf.```intersectSphereSphere(float aX, float aY, float aZ, float radiusSquaredA, float bX, float bY, float bZ, float radiusSquaredB, Vector4f centerAndRadiusOfIntersectionCircle)```
Test whether the one sphere with center `(aX, aY, aZ)` and square radius `radiusSquaredA` intersects the other sphere with center `(bX, bY, bZ)` and square radius `radiusSquaredB`, and store the center of the circle of intersection in the `(x, y, z)` components of the supplied vector and the radius of that circle in the w component.
`static boolean`
Intersectionf.```intersectSphereSphere(Vector3fc centerA, float radiusSquaredA, Vector3fc centerB, float radiusSquaredB, Vector4f centerAndRadiusOfIntersectionCircle)```
Test whether the one sphere with center `centerA` and square radius `radiusSquaredA` intersects the other sphere with center `centerB` and square radius `radiusSquaredB`, and store the center of the circle of intersection in the `(x, y, z)` components of the supplied vector and the radius of that circle in the w component.
`static int`
Intersectionf.```intersectSweptSphereTriangle(float centerX, float centerY, float centerZ, float radius, float velX, float velY, float velZ, float v0X, float v0Y, float v0Z, float v1X, float v1Y, float v1Z, float v2X, float v2Y, float v2Z, float epsilon, float maxT, Vector4f pointAndTime)```
Determine the point of intersection between a sphere with the given center `(centerX, centerY, centerZ)` and `radius` moving with the given velocity `(velX, velY, velZ)` and the triangle specified via its three vertices `(v0X, v0Y, v0Z)`, `(v1X, v1Y, v1Z)`, `(v2X, v2Y, v2Z)`.
`Vector4f`
Vector4f.```lerp(Vector4fc other, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```lerp(Vector4fc other, float t, Vector4f dest)```
Linearly interpolate `this` and `other` using the given interpolation factor `t` and store the result in `dest`.
`Vector4f`
Vector4f.```max(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```max(Vector4fc v, Vector4f dest)```
Set the components of `dest` to be the component-wise maximum of this and the other vector.
`Vector4f`
Vector4f.```min(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```min(Vector4fc v, Vector4f dest)```
Set the components of `dest` to be the component-wise minimum of this and the other vector.
`Vector4f`
Vector4f.```mul(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```mul(float scalar, Vector4f dest)```

`Vector4f`
Vector4f.```mul(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4f.```mul(Matrix4x3fc mat, Vector4f dest)```

`Vector4f`
Vector4f.```mul(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```mul(float x, float y, float z, float w, Vector4f dest)```
Multiply the components of this Vector4f by the given scalar values and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(float scalar, Vector4f dest)```
Multiply all components of this `Vector4f` by the given scalar value and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Matrix4fc mat, Vector4f dest)```
Multiply the given matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Matrix4x3fc mat, Vector4f dest)```
Multiply the given matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4fc.```mul(Vector4fc v, Vector4f dest)```
Multiply this Vector4f component-wise by another Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.```mulAdd(float a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4f.```mulAdd(Vector4fc a, Vector4fc b, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAdd(float a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `dest`.
`Vector4f`
Vector4fc.```mulAdd(Vector4fc a, Vector4fc b, Vector4f dest)```
Add the component-wise multiplication of `this * a` to `b` and store the result in `dest`.
`Vector4f`
Vector4f.```mulAffine(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAffine(Matrix4fc mat, Vector4f dest)```
Multiply the given affine matrix mat with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.```mulAffineTranspose(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulAffineTranspose(Matrix4fc mat, Vector4f dest)```
Multiply the transpose of the given affine matrix `mat` with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.```mulProject(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulProject(Matrix4fc mat, Vector4f dest)```
Multiply the given matrix `mat` with this Vector4f, perform perspective division and store the result in `dest`.
`Vector4f`
Vector4f.```mulTranspose(Matrix4fc mat, Vector4f dest)```

`Vector4f`
Vector4fc.```mulTranspose(Matrix4fc mat, Vector4f dest)```
Multiply the transpose of the given matrix `mat` with this Vector4f and store the result in `dest`.
`Vector4f`
Vector4f.`negate(Vector4f dest)`

`Vector4f`
Vector4fc.`negate(Vector4f dest)`
Negate this vector and store the result in `dest`.
`Vector4f`
Vector4f.```normalize(float length, Vector4f dest)```

`Vector4f`
Vector4f.`normalize(Vector4f dest)`

`Vector4f`
Vector4fc.```normalize(float length, Vector4f dest)```
Scale this vector to have the given length and store the result in `dest`.
`Vector4f`
Vector4fc.`normalize(Vector4f dest)`
Normalizes this vector and store the result in `dest`.
`Vector4f`
Vector4f.`normalize3(Vector4f dest)`

`Vector4f`
Vector4fc.`normalize3(Vector4f dest)`
Normalize this vector by computing only the norm of `(x, y, z)` and store the result in `dest`.
`Vector4f`
Matrix4f.```project(float x, float y, float z, int[] viewport, Vector4f winCoordsDest)```

`Vector4f`
Matrix4f.```project(Vector3fc position, int[] viewport, Vector4f winCoordsDest)```

`Vector4f`
Matrix4fc.```project(float x, float y, float z, int[] viewport, Vector4f winCoordsDest)```
Project the given `(x, y, z)` position via `this` matrix using the specified viewport and store the resulting window coordinates in `winCoordsDest`.
`Vector4f`
Matrix4fc.```project(Vector3fc position, int[] viewport, Vector4f winCoordsDest)```
Project the given `position` via `this` matrix using the specified viewport and store the resulting window coordinates in `winCoordsDest`.
`Vector4f`
Vector4f.```rotate(Quaternionfc quat, Vector4f dest)```

`Vector4f`
Vector4fc.```rotate(Quaternionfc quat, Vector4f dest)```
Rotate this vector by the given quaternion `quat` and store the result in `dest`.
`Vector4f`
Vector4f.```rotateAxis(float angle, float aX, float aY, float aZ, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateAxis(float angle, float aX, float aY, float aZ, Vector4f dest)```
Rotate this vector the specified radians around the given rotation axis and store the result into `dest`.
`Vector4f`
Vector4f.```rotateX(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateX(float angle, Vector4f dest)```
Rotate this vector the specified radians around the X axis and store the result into `dest`.
`Vector4f`
Vector4f.```rotateY(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateY(float angle, Vector4f dest)```
Rotate this vector the specified radians around the Y axis and store the result into `dest`.
`Vector4f`
Vector4f.```rotateZ(float angle, Vector4f dest)```

`Vector4f`
Vector4fc.```rotateZ(float angle, Vector4f dest)```
Rotate this vector the specified radians around the Z axis and store the result into `dest`.
`Vector4f`
Vector4f.`round(Vector4f dest)`

`Vector4f`
Vector4fc.`round(Vector4f dest)`
Compute for each component of this vector the closest float that is equal to a mathematical integer, with ties rounding to positive infinity and store the result in `dest`.
`Matrix4f`
Matrix4f.```shadow(Vector4f light, float a, float b, float c, float d)```
Apply a projection transformation to this matrix that projects onto the plane specified via the general plane equation `x*a + y*b + z*c + d = 0` as if casting a shadow from a given light position/direction `light`.
`Matrix4f`
Matrix4f.```shadow(Vector4f light, float a, float b, float c, float d, Matrix4f dest)```

`Matrix4f`
Matrix4f.```shadow(Vector4f light, Matrix4f planeTransform)```
Apply a projection transformation to this matrix that projects onto the plane with the general plane equation `y = 0` as if casting a shadow from a given light position/direction `light`.
`Matrix4f`
Matrix4f.```shadow(Vector4f light, Matrix4fc planeTransform, Matrix4f dest)```

`Matrix4f`
Matrix4fc.```shadow(Vector4f light, float a, float b, float c, float d, Matrix4f dest)```
Apply a projection transformation to this matrix that projects onto the plane specified via the general plane equation `x*a + y*b + z*c + d = 0` as if casting a shadow from a given light position/direction `light` and store the result in `dest`.
`Matrix4f`
Matrix4fc.```shadow(Vector4f light, Matrix4fc planeTransform, Matrix4f dest)```
Apply a projection transformation to this matrix that projects onto the plane with the general plane equation `y = 0` as if casting a shadow from a given light position/direction `light` and store the result in `dest`.
`Vector4f`
Vector4f.```smoothStep(Vector4fc v, float t, Vector4f dest)```

`Vector4f`
Vector4fc.```smoothStep(Vector4fc v, float t, Vector4f dest)```
Compute a smooth-step (i.e. hermite with zero tangents) interpolation between `this` vector and the given vector `v` and store the result in `dest`.
`Vector4f`
Vector4f.```sub(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Vector4f.```sub(Vector4fc v, Vector4f dest)```

`Vector4f`
Vector4fc.```sub(float x, float y, float z, float w, Vector4f dest)```
Subtract `(x, y, z, w)` from this and store the result in `dest`.
`Vector4f`
Vector4fc.```sub(Vector4fc v, Vector4f dest)```
Subtract the supplied vector from this one and store the result in `dest`.
`Vector4f`
AxisAngle4f.`transform(Vector4f v)`
Transform the given vector by the rotation transformation described by this `AxisAngle4f`.
`Vector4f`
AxisAngle4f.```transform(Vector4fc v, Vector4f dest)```
Transform the given vector by the rotation transformation described by this `AxisAngle4f` and store the result in `dest`.
`Vector4f`
Matrix4f.```transform(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transform(Vector4f v)`

`Vector4f`
Matrix4f.```transform(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transform(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by this matrix and store the result in `dest`.
`Vector4f`
Matrix4fc.`transform(Vector4f v)`
Transform/multiply the given vector by this matrix and store the result in that vector.
`Vector4f`
Matrix4fc.```transform(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix and store the result in `dest`.
`Vector4f`
Matrix4x3f.`transform(Vector4f v)`

`Vector4f`
Matrix4x3f.```transform(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4x3fc.`transform(Vector4f v)`
Transform/multiply the given vector by this matrix and store the result in that vector.
`Vector4f`
Matrix4x3fc.```transform(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix and store the result in `dest`.
`Vector4f`
Quaterniond.```transform(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transform(Vector4f vec)`

`Vector4f`
Quaterniond.```transform(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transform(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transform(Vector4f vec)`
Transform the given vector by this quaternion.
`Vector4f`
Quaterniondc.```transform(Vector4fc vec, Vector4f dest)```
Transform the given vector by this quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transform(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transform(Vector4f vec)`

`Vector4f`
Quaternionf.```transform(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transform(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transform(Vector4f vec)`
Transform the given vector by this quaternion.
`Vector4f`
Quaternionfc.```transform(Vector4fc vec, Vector4f dest)```
Transform the given vector by this quaternion and store the result in `dest`.
`Vector4f`
Matrix4f.```transformAffine(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformAffine(Vector4f v)`

`Vector4f`
Matrix4f.```transformAffine(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformAffine(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the 4D-vector `(x, y, z, w)` by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`) and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformAffine(Vector4f v)`
Transform/multiply the given 4D-vector by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`).
`Vector4f`
Matrix4fc.```transformAffine(Vector4fc v, Vector4f dest)```
Transform/multiply the given 4D-vector by assuming that `this` matrix represents an `affine` transformation (i.e. its last row is equal to `(0, 0, 0, 1)`) and store the result in `dest`.
`Vector4f`
Quaterniond.```transformInverse(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformInverse(Vector4f vec)`

`Vector4f`
Quaterniond.```transformInverse(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformInverse(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformInverse(Vector4f vec)`
Transform the given vector by the inverse of this quaternion.
`Vector4f`
Quaterniondc.```transformInverse(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformInverse(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformInverse(Vector4f vec)`

`Vector4f`
Quaternionf.```transformInverse(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformInverse(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformInverse(Vector4f vec)`
Transform the given vector by the inverse of this quaternion.
`Vector4f`
Quaternionfc.```transformInverse(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.```transformInverseUnit(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformInverseUnit(Vector4f vec)`

`Vector4f`
Quaterniond.```transformInverseUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformInverseUnit(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformInverseUnit(Vector4f vec)`
Transform the given vector by the inverse of this unit quaternion.
`Vector4f`
Quaterniondc.```transformInverseUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformInverseUnit(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformInverseUnit(Vector4f vec)`

`Vector4f`
Quaternionf.```transformInverseUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformInverseUnit(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformInverseUnit(Vector4f vec)`
Transform the given vector by the inverse of this unit quaternion.
`Vector4f`
Quaternionfc.```transformInverseUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by the inverse of this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.`transformPositiveX(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveX(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this quaternion.
`Vector4f`
Quaterniond.`transformPositiveY(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveY(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this quaternion.
`Vector4f`
Quaterniond.`transformPositiveZ(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this quaternion.
`Vector4f`
Quaternionf.`transformPositiveZ(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this quaternion.
`Vector4f`
Matrix4f.```transformProject(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformProject(Vector4f v)`

`Vector4f`
Matrix4f.```transformProject(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformProject(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by this matrix, perform perspective divide and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformProject(Vector4f v)`
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in that vector.
`Vector4f`
Matrix4fc.```transformProject(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in `dest`.
`Vector4f`
Matrix4f.```transformTranspose(float x, float y, float z, float w, Vector4f dest)```

`Vector4f`
Matrix4f.`transformTranspose(Vector4f v)`

`Vector4f`
Matrix4f.```transformTranspose(Vector4fc v, Vector4f dest)```

`Vector4f`
Matrix4fc.```transformTranspose(float x, float y, float z, float w, Vector4f dest)```
Transform/multiply the vector `(x, y, z, w)` by the transpose of this matrix and store the result in `dest`.
`Vector4f`
Matrix4fc.`transformTranspose(Vector4f v)`
Transform/multiply the given vector by the transpose of this matrix and store the result in that vector.
`Vector4f`
Matrix4fc.```transformTranspose(Vector4fc v, Vector4f dest)```
Transform/multiply the given vector by the transpose of this matrix and store the result in `dest`.
`Vector4f`
Quaterniond.```transformUnit(double x, double y, double z, Vector4f dest)```

`Vector4f`
Quaterniond.`transformUnit(Vector4f vec)`

`Vector4f`
Quaterniond.```transformUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaterniondc.```transformUnit(double x, double y, double z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniondc.`transformUnit(Vector4f vec)`
Transform the given vector by this unit quaternion.
`Vector4f`
Quaterniondc.```transformUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionf.```transformUnit(float x, float y, float z, Vector4f dest)```

`Vector4f`
Quaternionf.`transformUnit(Vector4f vec)`

`Vector4f`
Quaternionf.```transformUnit(Vector4fc vec, Vector4f dest)```

`Vector4f`
Quaternionfc.```transformUnit(float x, float y, float z, Vector4f dest)```
Transform the given vector `(x, y, z)` by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaternionfc.`transformUnit(Vector4f vec)`
Transform the given vector by this unit quaternion.
`Vector4f`
Quaternionfc.```transformUnit(Vector4fc vec, Vector4f dest)```
Transform the given vector by this unit quaternion and store the result in `dest`.
`Vector4f`
Quaterniond.`transformUnitPositiveX(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveX(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveX(Vector4f dest)`
Transform the vector `(1, 0, 0)` by this unit quaternion.
`Vector4f`
Quaterniond.`transformUnitPositiveY(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveY(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveY(Vector4f dest)`
Transform the vector `(0, 1, 0)` by this unit quaternion.
`Vector4f`
Quaterniond.`transformUnitPositiveZ(Vector4f dest)`

`Vector4f`
Quaterniondc.`transformUnitPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this unit quaternion.
`Vector4f`
Quaternionf.`transformUnitPositiveZ(Vector4f dest)`

`Vector4f`
Quaternionfc.`transformUnitPositiveZ(Vector4f dest)`
Transform the vector `(0, 0, 1)` by this unit quaternion.
`Vector4f`
Matrix4f.```unproject(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4f.```unproject(Vector3fc winCoords, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4fc.```unproject(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `(winX, winY, winZ)` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4fc.```unproject(Vector3fc winCoords, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `winCoords` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4f.```unprojectInv(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4f.```unprojectInv(Vector3fc winCoords, int[] viewport, Vector4f dest)```

`Vector4f`
Matrix4fc.```unprojectInv(float winX, float winY, float winZ, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `(winX, winY, winZ)` by `this` matrix using the specified viewport.
`Vector4f`
Matrix4fc.```unprojectInv(Vector3fc winCoords, int[] viewport, Vector4f dest)```
Unproject the given window coordinates `winCoords` by `this` matrix using the specified viewport.