Compute the absolute of each of this vector's components.
Compute the absolute of each of this vector's components
and store the result into dest
.
Vector4d.add(double x,
double y,
double z,
double w)
Add (x, y, z, w)
to this.
Vector4d.add(double x,
double y,
double z,
double w,
Vector4d dest)
Add the supplied vector to this one.
Add the supplied vector to this one.
Vector4dc.add(double x,
double y,
double z,
double w,
Vector4d dest)
Add (x, y, z, w)
to this and store the result in dest
.
Add the supplied vector to this one and store the result in dest
.
Add the supplied vector to this one and store the result in dest
.
Set each component of this vector to the smallest (closest to negative
infinity) double
value that is greater than or equal to that
component and is equal to a mathematical integer.
Compute for each component of this vector the smallest (closest to negative
infinity) double
value that is greater than or equal to that
component and is equal to a mathematical integer and store the result in
dest
.
Vector4d.div(double scalar)
Divide this Vector4d by the given scalar value.
Divide this Vector4d by the given scalar value and store the result in dest
.
Divide this
Vector4d
component-wise by the given
Vector4dc
and store the result in
dest
.
Set each component of this vector to the largest (closest to positive
infinity) double
value that is less than or equal to that
component and is equal to a mathematical integer.
Compute for each component of this vector the largest (closest to positive
infinity) double
value that is less than or equal to that
component and is equal to a mathematical integer and store the result in
dest
.
Add the component-wise multiplication of a * b
to this vector.
Add the component-wise multiplication of a * b
to this vector.
Add the component-wise multiplication of a * b
to this vector
and store the result in dest
.
Add the component-wise multiplication of a * b
to this vector
and store the result in 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
.
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
.
Set the components of the given vector dest
to those of this
vector.
Set the components of the given vector dest
to those of this
vector.
Get the column at the given column
index, starting with 0
.
Get the row at the given row
index, starting with 0
.
Get the row at the given row
index, starting with 0
.
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
.
Linearly interpolate this
and other
using the given interpolation factor t
and store the result in this
.
Linearly interpolate this
and other
using the given interpolation factor t
and store the result in dest
.
Set the components of this vector to be the component-wise maximum of this and the other vector.
Set the components of dest
to be the component-wise maximum of this and the other vector.
Set the components of this vector to be the component-wise minimum of this and the other vector.
Set the components of dest
to be the component-wise minimum of this and the other vector.
Vector4d.mul(double scalar)
Multiply this Vector4d by the given scalar value.
Multiply the given matrix
mat
with this
Vector4d
.
Multiply the given matrix
mat
with this
Vector4d
.
Multiply the given matrix mat with this Vector4d and store the result in
this
.
Multiply the given matrix mat with this Vector4d and store the result in
this
.
Multiply this Vector4d by the given scalar value and store the result in dest
.
Multiply the given matrix mat with this
Vector4d
and store the result in
dest
.
Multiply the given matrix mat with this Vector4d and store the result in dest
.
Multiply the given matrix mat with this Vector4d and store the result in
dest
.
Multiply the given matrix mat with this Vector4d and store the result in
dest
.
Multiply this
Vector4d
component-wise by the given
Vector4dc
and store the result in
dest
.
Multiply this
Vector4d
component-wise by the given
Vector4fc
and store the result in
dest
.
Add the component-wise multiplication of this * a
to b
and store the result in this
.
Add the component-wise multiplication of this * a
to b
and store the result in this
.
Add the component-wise multiplication of this * a
to b
and store the result in dest
.
Add the component-wise multiplication of this * a
to b
and store the result in dest
.
Multiply the given affine matrix mat with this Vector4d and store the result in
dest
.
Multiply the transpose of the given affine matrix mat
with this Vector4d and store the result in
dest
.
Multiply the given matrix mat
with this Vector4d, perform perspective division.
Multiply the given matrix mat
with this Vector4d, perform perspective division
and store the result in dest
.
Multiply the transpose of the given matrix mat
with this Vector4f and store the result in
this
.
Multiply the transpose of the given matrix mat
with this Vector4d and store the result in
dest
.
Negate this vector and store the result in dest
.
Scale this vector to have the given length.
Scale this vector to have the given length and store the result in dest
.
Normalizes this vector and store the result in dest
.
Normalize this vector by computing only the norm of (x, y, z)
.
Normalize this vector by computing only the norm of (x, y, z)
and store the result in dest
.
Matrix4d.project(double x,
double y,
double z,
int[] viewport,
Vector4d winCoordsDest)
Matrix4dc.project(double x,
double y,
double z,
int[] viewport,
Vector4d winCoordsDest)
Project the given (x, y, z)
position via this
matrix using the specified viewport
and store the resulting window coordinates in winCoordsDest
.
Project the given position
via this
matrix using the specified viewport
and store the resulting window coordinates in winCoordsDest
.
Transform this vector by the given quaternion quat
and store the result in this
.
Transform this vector by the given quaternion quat
and store the result in dest
.
Vector4d.rotateAxis(double angle,
double x,
double y,
double z)
Rotate this vector the specified radians around the given rotation axis.
Rotate this vector the specified radians around the given rotation axis and store the result
into dest
.
Rotate this vector the specified radians around the X axis.
Rotate this vector the specified radians around the X axis and store the result
into dest
.
Rotate this vector the specified radians around the Y axis.
Rotate this vector the specified radians around the Y axis and store the result
into dest
.
Rotate this vector the specified radians around the Z axis.
Rotate this vector the specified radians around the Z axis and store the result
into dest
.
Set each component of this vector to the closest double that is equal to
a mathematical integer, with ties rounding to positive infinity.
Compute for each component of this vector the closest double that is equal to
a mathematical integer, with ties rounding to positive infinity and store
the result in dest
.
Set the x, y, z, and w components to the supplied value.
Vector4d.set(double[] xyzw)
Set the four components of this vector to the first four elements of the given array.
Vector4d.set(double x,
double y,
double z)
Set the x, y, z components to the supplied values.
Vector4d.set(double x,
double y,
double z,
double w)
Set the x, y, z, and w components to the supplied values.
Vector4d.set(float[] xyzw)
Set the four components of this vector to the first four elements of the given array.
Read this vector from the supplied
ByteBuffer
starting at the specified
absolute buffer position/index.
Read this vector from the supplied
DoubleBuffer
starting at the specified
absolute buffer position/index.
Set the x and y components from the given v
and the z and w components to the given z
and w
.
Set the x and y components from the given v
and the z and w components to the given z
and w
.
Set the x and y components from the given v
and the z and w components to the given z
and w
.
Set the x, y, and z components of this to the components of
v
and the w component to w
.
Set the x, y, and z components of this to the components of
v
and the w component to w
.
Set the x, y, and z components of this to the components of
v
and the w component to w
.
Set this
Vector4d
to the values of the given
v
.
Set this
Vector4d
to the values of the given
v
.
Set this
Vector4d
to the values of the given
v
.
Set the value of the specified component of this vector.
Set the values of this vector by reading 4 double values from off-heap memory,
starting at the given address.
Compute a smooth-step (i.e.
Vector4d.sub(double x,
double y,
double z,
double w)
Subtract (x, y, z, w)
from this.
Vector4d.sub(double x,
double y,
double z,
double w,
Vector4d dest)
Subtract the supplied vector from this one.
Subtract the supplied vector from this one and store the result in dest
.
Subtract the supplied vector from this one.
Subtract the supplied vector from this one and store the result in dest
.
Vector4dc.sub(double x,
double y,
double z,
double w,
Vector4d dest)
Subtract (x, y, z, w)
from this and store the result in dest
.
Subtract the supplied vector from this one and store the result in dest
.
Subtract the supplied vector from this one and store the result in dest
.
Transform the given vector by the rotation transformation described by this
AxisAngle4d
.
Transform the given vector by the rotation transformation described by this
AxisAngle4d
and store the result in
dest
.
Transform/multiply the vector (x, y, z, w)
by this matrix and store the result in dest
.
Transform/multiply the given vector by this matrix and store the result in that vector.
Transform/multiply the given vector by this matrix and store the result in dest
.
Transform/multiply the given vector by this matrix and store the result in that vector.
Transform/multiply the given vector by this matrix and store the result in dest
.
Transform the given vector (x, y, z)
by this quaternion and store the result in dest
.
Transform the given vector by this quaternion.
Transform the given vector by this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by this quaternion and store the result in dest
.
Transform the given vector by this quaternion.
Transform the given vector by this quaternion and store the result in dest
.
Transform/multiply the 4D-vector
(x, y, z, w)
by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform/multiply the given 4D-vector by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform/multiply the given 4D-vector by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform the given vector (x, y, z)
by the inverse of
this quaternion and store the result in dest
.
Transform the given vector by the inverse of this quaternion.
Transform the given vector by the inverse of this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this quaternion and store the result in dest
.
Transform the given vector by the inverse of this quaternion.
Transform the given vector by the inverse of this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this unit quaternion and store the result in dest
.
Transform the given vector by the inverse of this unit quaternion.
Transform the given vector by the inverse of this unit quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this unit quaternion and store the result in dest
.
Transform the given vector by the inverse of this unit quaternion.
Transform the given vector by the inverse of this unit quaternion and store the result in dest
.
Transform the vector (1, 0, 0)
by this quaternion.
Transform the vector (1, 0, 0)
by this quaternion.
Transform the vector (0, 1, 0)
by this quaternion.
Transform the vector (0, 1, 0)
by this quaternion.
Transform the vector (0, 0, 1)
by this quaternion.
Transform the vector (0, 0, 1)
by this quaternion.
Transform/multiply the vector (x, y, z, w)
by this matrix, perform perspective divide and store the result in dest
.
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in that vector.
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in dest
.
Transform/multiply the vector (x, y, z, w)
by the transpose of this matrix
and store the result in dest
.
Transform/multiply the given vector by the transpose of this matrix and store the result in that vector.
Transform/multiply the given vector by the transpose of this matrix and store the result in dest
.
Transform the given vector (x, y, z)
by this unit quaternion and store the result in dest
.
Transform the given vector by this unit quaternion.
Transform the given vector by this unit quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by this unit quaternion and store the result in dest
.
Transform the given vector by this unit quaternion.
Transform the given vector by this unit quaternion and store the result in dest
.
Transform the vector (1, 0, 0)
by this unit quaternion.
Transform the vector (1, 0, 0)
by this unit quaternion.
Transform the vector (0, 1, 0)
by this unit quaternion.
Transform the vector (0, 1, 0)
by this unit quaternion.
Transform the vector (0, 0, 1)
by this unit quaternion.
Transform the vector (0, 0, 1)
by this unit quaternion.
Matrix4d.unproject(double winX,
double winY,
double winZ,
int[] viewport,
Vector4d dest)
Matrix4dc.unproject(double winX,
double winY,
double winZ,
int[] viewport,
Vector4d dest)
Unproject the given window coordinates (winX, winY, winZ)
by this
matrix using the specified viewport.
Unproject the given window coordinates winCoords
by this
matrix using the specified viewport.
Unproject the given window coordinates (winX, winY, winZ)
by this
matrix using the specified viewport.
Unproject the given window coordinates winCoords
by this
matrix using the specified viewport.
Set all components to zero.
Compute the absolute of each of this vector's components
and store the result into dest
.
Vector4d.add(double x,
double y,
double z,
double w,
Vector4d dest)
Vector4dc.add(double x,
double y,
double z,
double w,
Vector4d dest)
Add (x, y, z, w)
to this and store the result in dest
.
Add the supplied vector to this one and store the result in dest
.
Add the supplied vector to this one and store the result in dest
.
Compute for each component of this vector the smallest (closest to negative
infinity) double
value that is greater than or equal to that
component and is equal to a mathematical integer and store the result in
dest
.
Divide this Vector4d by the given scalar value and store the result in dest
.
Divide this
Vector4d
component-wise by the given
Vector4dc
and store the result in
dest
.
Compute for each component of this vector the largest (closest to positive
infinity) double
value that is less than or equal to that
component and is equal to a mathematical integer and store the result in
dest
.
Add the component-wise multiplication of a * b
to this vector
and store the result in dest
.
Add the component-wise multiplication of a * b
to this vector
and store the result in 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
.
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
.
Set the components of the given vector dest
to those of this
vector.
Set the components of the given vector dest
to those of this
vector.
Get the column at the given column
index, starting with 0
.
Get the row at the given row
index, starting with 0
.
Get the row at the given row
index, starting with 0
.
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
Intersectiond.intersectPlaneSphere(double a,
double b,
double c,
double d,
double centerX,
double centerY,
double centerZ,
double radius,
Vector4d 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
Intersectiond.intersectPlaneSweptSphere(double a,
double b,
double c,
double d,
double cX,
double cY,
double cZ,
double radius,
double vX,
double vY,
double vZ,
Vector4d 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
Intersectiond.intersectSphereSphere(double aX,
double aY,
double aZ,
double radiusSquaredA,
double bX,
double bY,
double bZ,
double radiusSquaredB,
Vector4d 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
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
Intersectiond.intersectSweptSphereTriangle(double centerX,
double centerY,
double centerZ,
double radius,
double velX,
double velY,
double velZ,
double v0X,
double v0Y,
double v0Z,
double v1X,
double v1Y,
double v1Z,
double v2X,
double v2Y,
double v2Z,
double epsilon,
double maxT,
Vector4d 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)
.
Linearly interpolate this
and other
using the given interpolation factor t
and store the result in dest
.
Set the components of dest
to be the component-wise maximum of this and the other vector.
Set the components of dest
to be the component-wise minimum of this and the other vector.
Multiply this Vector4d by the given scalar value and store the result in dest
.
Multiply the given matrix mat with this
Vector4d
and store the result in
dest
.
Multiply the given matrix mat with this Vector4d and store the result in dest
.
Multiply the given matrix mat with this Vector4d and store the result in
dest
.
Multiply the given matrix mat with this Vector4d and store the result in
dest
.
Multiply this
Vector4d
component-wise by the given
Vector4dc
and store the result in
dest
.
Multiply this
Vector4d
component-wise by the given
Vector4fc
and store the result in
dest
.
Add the component-wise multiplication of this * a
to b
and store the result in dest
.
Add the component-wise multiplication of this * a
to b
and store the result in dest
.
Multiply the given affine matrix mat with this Vector4d and store the result in
dest
.
Multiply the transpose of the given affine matrix mat
with this Vector4d and store the result in
dest
.
Multiply the given matrix mat
with this Vector4d, perform perspective division
and store the result in dest
.
Multiply the transpose of the given matrix mat
with this Vector4d and store the result in
dest
.
Negate this vector and store the result in dest
.
Scale this vector to have the given length and store the result in dest
.
Normalizes this vector and store the result in dest
.
Normalize this vector by computing only the norm of (x, y, z)
and store the result in dest
.
Matrix4d.project(double x,
double y,
double z,
int[] viewport,
Vector4d winCoordsDest)
Matrix4dc.project(double x,
double y,
double z,
int[] viewport,
Vector4d winCoordsDest)
Project the given (x, y, z)
position via this
matrix using the specified viewport
and store the resulting window coordinates in winCoordsDest
.
Project the given position
via this
matrix using the specified viewport
and store the resulting window coordinates in winCoordsDest
.
Transform this vector by the given quaternion quat
and store the result in dest
.
Rotate this vector the specified radians around the given rotation axis and store the result
into dest
.
Rotate this vector the specified radians around the X axis and store the result
into dest
.
Rotate this vector the specified radians around the Y axis and store the result
into dest
.
Rotate this vector the specified radians around the Z axis and store the result
into dest
.
Compute for each component of this vector the closest double that is equal to
a mathematical integer, with ties rounding to positive infinity and store
the result in dest
.
Set the four columns of this matrix to the supplied vectors, respectively.
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
.
Compute a smooth-step (i.e.
Vector4d.sub(double x,
double y,
double z,
double w,
Vector4d dest)
Subtract the supplied vector from this one and store the result in dest
.
Subtract the supplied vector from this one and store the result in dest
.
Vector4dc.sub(double x,
double y,
double z,
double w,
Vector4d dest)
Subtract (x, y, z, w)
from this and store the result in dest
.
Subtract the supplied vector from this one and store the result in dest
.
Subtract the supplied vector from this one and store the result in dest
.
Transform the given vector by the rotation transformation described by this
AxisAngle4d
.
Transform the given vector by the rotation transformation described by this
AxisAngle4d
and store the result in
dest
.
Transform/multiply the vector (x, y, z, w)
by this matrix and store the result in dest
.
Transform/multiply the given vector by this matrix and store the result in that vector.
Transform/multiply the given vector by this matrix and store the result in dest
.
Transform/multiply the given vector by this matrix and store the result in that vector.
Transform/multiply the given vector by this matrix and store the result in dest
.
Transform the given vector (x, y, z)
by this quaternion and store the result in dest
.
Transform the given vector by this quaternion.
Transform the given vector by this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by this quaternion and store the result in dest
.
Transform the given vector by this quaternion.
Transform the given vector by this quaternion and store the result in dest
.
Transform/multiply the 4D-vector
(x, y, z, w)
by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform/multiply the given 4D-vector by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform/multiply the given 4D-vector by assuming that
this
matrix represents an
affine
transformation
(i.e.
Transform the given vector (x, y, z)
by the inverse of
this quaternion and store the result in dest
.
Transform the given vector by the inverse of this quaternion.
Transform the given vector by the inverse of this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this quaternion and store the result in dest
.
Transform the given vector by the inverse of this quaternion.
Transform the given vector by the inverse of this quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this unit quaternion and store the result in dest
.
Transform the given vector by the inverse of this unit quaternion.
Transform the given vector by the inverse of this unit quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by the inverse of
this unit quaternion and store the result in dest
.
Transform the given vector by the inverse of this unit quaternion.
Transform the given vector by the inverse of this unit quaternion and store the result in dest
.
Transform the vector (1, 0, 0)
by this quaternion.
Transform the vector (1, 0, 0)
by this quaternion.
Transform the vector (0, 1, 0)
by this quaternion.
Transform the vector (0, 1, 0)
by this quaternion.
Transform the vector (0, 0, 1)
by this quaternion.
Transform the vector (0, 0, 1)
by this quaternion.
Transform/multiply the vector (x, y, z, w)
by this matrix, perform perspective divide and store the result in dest
.
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in that vector.
Transform/multiply the given vector by this matrix, perform perspective divide and store the result in dest
.
Transform/multiply the vector (x, y, z, w)
by the transpose of this matrix
and store the result in dest
.
Transform/multiply the given vector by the transpose of this matrix and store the result in that vector.
Transform/multiply the given vector by the transpose of this matrix and store the result in dest
.
Transform the given vector (x, y, z)
by this unit quaternion and store the result in dest
.
Transform the given vector by this unit quaternion.
Transform the given vector by this unit quaternion and store the result in dest
.
Transform the given vector (x, y, z)
by this unit quaternion and store the result in dest
.
Transform the given vector by this unit quaternion.
Transform the given vector by this unit quaternion and store the result in dest
.
Transform the vector (1, 0, 0)
by this unit quaternion.
Transform the vector (1, 0, 0)
by this unit quaternion.
Transform the vector (0, 1, 0)
by this unit quaternion.
Transform the vector (0, 1, 0)
by this unit quaternion.
Transform the vector (0, 0, 1)
by this unit quaternion.
Transform the vector (0, 0, 1)
by this unit quaternion.
Matrix4d.unproject(double winX,
double winY,
double winZ,
int[] viewport,
Vector4d dest)
Matrix4dc.unproject(double winX,
double winY,
double winZ,
int[] viewport,
Vector4d dest)
Unproject the given window coordinates (winX, winY, winZ)
by this
matrix using the specified viewport.
Unproject the given window coordinates winCoords
by this
matrix using the specified viewport.
Unproject the given window coordinates (winX, winY, winZ)
by this
matrix using the specified viewport.
Unproject the given window coordinates winCoords
by this
matrix using the specified viewport.