public interface Vector3dc
| Modifier and Type | Method and Description |
|---|---|
Vector3d |
absolute(Vector3d dest)
Compute the absolute values of the individual components of
this and store the result in dest. |
Vector3d |
add(double x,
double y,
double z,
Vector3d dest)
Increment the components of this vector by the given values and store the result in
dest. |
Vector3d |
add(Vector3dc v,
Vector3d dest)
Add the supplied vector to this one and store the result in
dest. |
Vector3d |
add(Vector3fc v,
Vector3d dest)
Add the supplied vector to this one and store the result in
dest. |
double |
angle(Vector3dc v)
Return the angle between this vector and the supplied vector.
|
double |
angleCos(Vector3dc v)
Return the cosine of the angle between
this vector and
the supplied vector. |
double |
angleSigned(double x,
double y,
double z,
double nx,
double ny,
double nz)
Return the signed angle between this vector and the supplied vector with
respect to the plane with the given normal vector
(nx, ny, nz). |
double |
angleSigned(Vector3dc v,
Vector3dc n)
Return the signed angle between this vector and the supplied vector with
respect to the plane with the given normal vector
n. |
Vector3d |
ceil(Vector3d 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. |
Vector3d |
cross(double x,
double y,
double z,
Vector3d dest)
Compute the cross product of this vector and
(x, y, z) and store the result in dest. |
Vector3d |
cross(Vector3dc v,
Vector3d dest)
Calculate the cross product of this and v2 and store the result in
dest. |
double |
distance(double x,
double y,
double z)
Return the distance between
this vector and (x, y, z). |
double |
distance(Vector3dc v)
Return the distance between this vector and
v. |
double |
distanceSquared(double x,
double y,
double z)
Return the square of the distance between
this vector and (x, y, z). |
double |
distanceSquared(Vector3dc v)
Return the square of the distance between this vector and
v. |
Vector3d |
div(double x,
double y,
double z,
Vector3d dest)
Divide the components of this Vector3f by the given scalar values and store the result in
dest. |
Vector3d |
div(double scalar,
Vector3d dest)
Divide this Vector3d by the given scalar value and store the result in
dest. |
Vector3d |
div(Vector3dc v,
Vector3d dest)
Divide this by
v component-wise and store the result into dest. |
Vector3d |
div(Vector3fc v,
Vector3d dest)
Divide this Vector3d component-wise by another Vector3f and store the result in
dest. |
double |
dot(double x,
double y,
double z)
Return the dot product of this vector and the vector
(x, y, z). |
double |
dot(Vector3dc v)
Return the dot product of this vector and the supplied vector.
|
boolean |
equals(double x,
double y,
double z)
Compare the vector components of
this vector with the given (x, y, z)
and return whether all of them are equal. |
boolean |
equals(Vector3dc v,
double delta)
Compare the vector components of
this vector with the given vector using the given delta
and return whether all of them are equal within a maximum difference of delta. |
Vector3d |
floor(Vector3d 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. |
Vector3d |
fma(double a,
Vector3dc b,
Vector3d dest)
Add the component-wise multiplication of
a * b to this vector
and store the result in dest. |
Vector3d |
fma(double a,
Vector3fc b,
Vector3d dest)
Add the component-wise multiplication of
a * b to this vector
and store the result in dest. |
Vector3d |
fma(Vector3dc a,
Vector3dc b,
Vector3d dest)
Add the component-wise multiplication of
a * b to this vector
and store the result in dest. |
Vector3d |
fma(Vector3dc a,
Vector3fc b,
Vector3d dest)
Add the component-wise multiplication of
a * b to this vector
and store the result in dest. |
Vector3d |
fma(Vector3fc a,
Vector3fc b,
Vector3d dest)
Add the component-wise multiplication of
a * b to this vector
and store the result in dest. |
ByteBuffer |
get(ByteBuffer buffer)
Store this vector into the supplied
ByteBuffer at the current
buffer position. |
DoubleBuffer |
get(DoubleBuffer buffer)
Store this vector into the supplied
DoubleBuffer at the current
buffer position. |
FloatBuffer |
get(FloatBuffer buffer)
Store this vector into the supplied
FloatBuffer at the current
buffer position. |
double |
get(int component)
Get the value of the specified component of this vector.
|
ByteBuffer |
get(int index,
ByteBuffer buffer)
Store this vector into the supplied
ByteBuffer starting at the specified
absolute buffer position/index. |
DoubleBuffer |
get(int index,
DoubleBuffer buffer)
Store this vector into the supplied
DoubleBuffer starting at the specified
absolute buffer position/index. |
FloatBuffer |
get(int index,
FloatBuffer buffer)
Store this vector into the supplied
FloatBuffer starting at the specified
absolute buffer position/index. |
ByteBuffer |
getf(ByteBuffer buffer)
Store this vector into the supplied
ByteBuffer at the current
buffer position. |
ByteBuffer |
getf(int index,
ByteBuffer buffer)
Store this vector into the supplied
ByteBuffer starting at the specified
absolute buffer position/index. |
Vector3d |
half(double x,
double y,
double z,
Vector3d dest)
Compute the half vector between this and the vector
(x, y, z)
and store the result in dest. |
Vector3d |
half(Vector3dc other,
Vector3d dest)
Compute the half vector between this and the other vector and store the result in
dest. |
Vector3d |
hermite(Vector3dc t0,
Vector3dc v1,
Vector3dc t1,
double t,
Vector3d 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. |
boolean |
isFinite()
|
double |
length()
Return the length of this vector.
|
double |
lengthSquared()
Return the length squared of this vector.
|
Vector3d |
lerp(Vector3dc other,
double t,
Vector3d dest)
Linearly interpolate
this and other using the given interpolation factor t
and store the result in dest. |
Vector3d |
max(Vector3dc v,
Vector3d dest)
Set the components of
dest to be the component-wise maximum of this and the other vector. |
int |
maxComponent()
Determine the component with the biggest absolute value.
|
Vector3d |
min(Vector3dc v,
Vector3d dest)
Set the components of
dest to be the component-wise minimum of this and the other vector. |
int |
minComponent()
Determine the component with the smallest (towards zero) absolute value.
|
Vector3d |
mul(double x,
double y,
double z,
Vector3d dest)
Multiply the components of this Vector3f by the given scalar values and store the result in
dest. |
Vector3d |
mul(double scalar,
Vector3d dest)
Multiply this Vector3d by the given scalar value and store the result in
dest. |
Vector3d |
mul(Matrix3dc mat,
Vector3d dest)
Multiply the given matrix
mat with this and store the
result in dest. |
Vector3d |
mul(Matrix3fc mat,
Vector3d dest)
Multiply the given matrix
mat with this and store the
result in dest. |
Vector3d |
mul(Matrix3x2dc mat,
Vector3d dest)
Multiply the given matrix
mat with this by assuming a
third row in the matrix of (0, 0, 1) and store the result in dest. |
Vector3d |
mul(Matrix3x2fc mat,
Vector3d dest)
Multiply the given matrix
mat with this by assuming a
third row in the matrix of (0, 0, 1) and store the result in dest. |
Vector3d |
mul(Vector3dc v,
Vector3d dest)
Multiply this by
v component-wise and store the result into dest. |
Vector3d |
mul(Vector3fc v,
Vector3d dest)
Multiply this Vector3d component-wise by another Vector3f and store the result in
dest. |
Vector3d |
mulDirection(Matrix4dc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulDirection(Matrix4fc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulDirection(Matrix4x3dc mat,
Vector3d dest)
Multiply the given 4x3 matrix
mat with this and store the
result in dest. |
Vector3d |
mulDirection(Matrix4x3fc mat,
Vector3d dest)
Multiply the given 4x3 matrix
mat with this and store the
result in dest. |
Vector3d |
mulPosition(Matrix4dc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulPosition(Matrix4fc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulPosition(Matrix4x3dc mat,
Vector3d dest)
Multiply the given 4x3 matrix
mat with this and store the
result in dest. |
Vector3d |
mulPosition(Matrix4x3fc mat,
Vector3d dest)
Multiply the given 4x3 matrix
mat with this and store the
result in dest. |
double |
mulPositionW(Matrix4dc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this, store the
result in dest and return the w component of the resulting 4D vector. |
double |
mulPositionW(Matrix4fc mat,
Vector3d dest)
Multiply the given 4x4 matrix
mat with this, store the
result in dest and return the w component of the resulting 4D vector. |
Vector3d |
mulProject(Matrix4dc mat,
Vector3d dest)
Multiply the given matrix
mat with this Vector3d, perform perspective division
and store the result in dest. |
Vector3d |
mulProject(Matrix4fc mat,
Vector3d dest)
Multiply the given matrix
mat with this Vector3d, perform perspective division
and store the result in dest. |
Vector3d |
mulTranspose(Matrix3dc mat,
Vector3d dest)
Multiply the transpose of the given matrix with this Vector3f and store the result in
dest. |
Vector3d |
mulTranspose(Matrix3fc mat,
Vector3d dest)
Multiply the transpose of the given matrix with this Vector3f and store the result in
dest. |
Vector3d |
mulTransposeDirection(Matrix4dc mat,
Vector3d dest)
Multiply the transpose of the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulTransposeDirection(Matrix4fc mat,
Vector3d dest)
Multiply the transpose of the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulTransposePosition(Matrix4dc mat,
Vector3d dest)
Multiply the transpose of the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
mulTransposePosition(Matrix4fc mat,
Vector3d dest)
Multiply the transpose of the given 4x4 matrix
mat with this and store the
result in dest. |
Vector3d |
negate(Vector3d dest)
Negate this vector and store the result in
dest. |
Vector3d |
normalize(double length,
Vector3d dest)
Scale this vector to have the given length and store the result in
dest. |
Vector3d |
normalize(Vector3d dest)
Normalize this vector and store the result in
dest. |
Vector3d |
orthogonalize(Vector3dc v,
Vector3d dest)
Transform
this vector so that it is orthogonal to the given vector v, normalize the result and store it into dest. |
Vector3d |
orthogonalizeUnit(Vector3dc v,
Vector3d dest)
Transform
this vector so that it is orthogonal to the given unit vector v, normalize the result and store it into dest. |
Vector3d |
reflect(double x,
double y,
double z,
Vector3d dest)
Reflect this vector about the given normal vector and store the result in
dest. |
Vector3d |
reflect(Vector3dc normal,
Vector3d dest)
Reflect this vector about the given normal vector and store the result in
dest. |
Vector3d |
rotate(Quaterniondc quat,
Vector3d dest)
Rotate this vector by the given quaternion
quat and store the result in dest. |
Vector3d |
rotateAxis(double angle,
double aX,
double aY,
double aZ,
Vector3d dest)
Rotate this vector the specified radians around the given rotation axis and store the result
into
dest. |
Vector3d |
rotateX(double angle,
Vector3d dest)
Rotate this vector the specified radians around the X axis and store the result
into
dest. |
Vector3d |
rotateY(double angle,
Vector3d dest)
Rotate this vector the specified radians around the Y axis and store the result
into
dest. |
Vector3d |
rotateZ(double angle,
Vector3d dest)
Rotate this vector the specified radians around the Z axis and store the result
into
dest. |
Quaterniond |
rotationTo(double toDirX,
double toDirY,
double toDirZ,
Quaterniond dest)
Compute the quaternion representing a rotation of
this vector to point along (toDirX, toDirY, toDirZ)
and store the result in dest. |
Quaterniond |
rotationTo(Vector3dc toDir,
Quaterniond dest)
Compute the quaternion representing a rotation of
this vector to point along toDir
and store the result in dest. |
Vector3d |
round(Vector3d 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. |
Vector3d |
smoothStep(Vector3dc v,
double t,
Vector3d dest)
Compute a smooth-step (i.e.
|
Vector3d |
sub(double x,
double y,
double z,
Vector3d dest)
Subtract
(x, y, z) from this vector and store the result in dest. |
Vector3d |
sub(Vector3dc v,
Vector3d dest)
Subtract the supplied vector from this one and store the result in
dest. |
Vector3d |
sub(Vector3fc v,
Vector3d dest)
Subtract the supplied vector from this one and store the result in
dest. |
double |
x() |
double |
y() |
double |
z() |
double x()
double y()
double z()
ByteBuffer get(ByteBuffer buffer)
ByteBuffer at the current
buffer position.
This method will not increment the position of the given ByteBuffer.
In order to specify the offset into the ByteBuffer at which
the vector is stored, use get(int, ByteBuffer), taking
the absolute position as parameter.
buffer - will receive the values of this vector in x, y, z orderget(int, ByteBuffer)ByteBuffer get(int index, ByteBuffer buffer)
ByteBuffer starting at the specified
absolute buffer position/index.
This method will not increment the position of the given ByteBuffer.
index - the absolute position into the ByteBufferbuffer - will receive the values of this vector in x, y, z orderDoubleBuffer get(DoubleBuffer buffer)
DoubleBuffer at the current
buffer position.
This method will not increment the position of the given DoubleBuffer.
In order to specify the offset into the DoubleBuffer at which
the vector is stored, use get(int, DoubleBuffer), taking
the absolute position as parameter.
buffer - will receive the values of this vector in x, y, z orderget(int, DoubleBuffer)DoubleBuffer get(int index, DoubleBuffer buffer)
DoubleBuffer starting at the specified
absolute buffer position/index.
This method will not increment the position of the given DoubleBuffer.
index - the absolute position into the DoubleBufferbuffer - will receive the values of this vector in x, y, z orderFloatBuffer get(FloatBuffer buffer)
FloatBuffer at the current
buffer position.
This method will not increment the position of the given FloatBuffer.
In order to specify the offset into the FloatBuffer at which
the vector is stored, use get(int, FloatBuffer), taking
the absolute position as parameter.
Please note that due to this vector storing double values those values will potentially lose precision when they are converted to float values before being put into the given FloatBuffer.
buffer - will receive the values of this vector in x, y, z orderget(int, DoubleBuffer)FloatBuffer get(int index, FloatBuffer buffer)
FloatBuffer starting at the specified
absolute buffer position/index.
This method will not increment the position of the given FloatBuffer.
Please note that due to this vector storing double values those values will potentially lose precision when they are converted to float values before being put into the given FloatBuffer.
index - the absolute position into the FloatBufferbuffer - will receive the values of this vector in x, y, z orderByteBuffer getf(ByteBuffer buffer)
ByteBuffer at the current
buffer position.
This method will not increment the position of the given ByteBuffer.
In order to specify the offset into the ByteBuffer at which
the vector is stored, use get(int, ByteBuffer), taking
the absolute position as parameter.
Please note that due to this vector storing double values those values will potentially lose precision when they are converted to float values before being put into the given ByteBuffer.
buffer - will receive the values of this vector in x, y, z orderget(int, ByteBuffer)ByteBuffer getf(int index, ByteBuffer buffer)
ByteBuffer starting at the specified
absolute buffer position/index.
This method will not increment the position of the given ByteBuffer.
Please note that due to this vector storing double values those values will potentially lose precision when they are converted to float values before being put into the given ByteBuffer.
index - the absolute position into the ByteBufferbuffer - will receive the values of this vector in x, y, z orderVector3d sub(Vector3dc v, Vector3d dest)
dest.v - the vector to subtract from thisdest - will hold the resultVector3d sub(Vector3fc v, Vector3d dest)
dest.v - the vector to subtract from thisdest - will hold the resultVector3d sub(double x, double y, double z, Vector3d dest)
(x, y, z) from this vector and store the result in dest.x - the x component to subtracty - the y component to subtractz - the z component to subtractdest - will hold the resultVector3d add(Vector3dc v, Vector3d dest)
dest.v - the vector to adddest - will hold the resultVector3d add(Vector3fc v, Vector3d dest)
dest.v - the vector to adddest - will hold the resultVector3d add(double x, double y, double z, Vector3d dest)
dest.x - the x component to addy - the y component to addz - the z component to adddest - will hold the resultVector3d fma(Vector3dc a, Vector3dc b, Vector3d dest)
a * b to this vector
and store the result in dest.a - the first multiplicandb - the second multiplicanddest - will hold the resultVector3d fma(double a, Vector3dc b, Vector3d dest)
a * b to this vector
and store the result in dest.a - the first multiplicandb - the second multiplicanddest - will hold the resultVector3d fma(Vector3dc a, Vector3fc b, Vector3d dest)
a * b to this vector
and store the result in dest.a - the first multiplicandb - the second multiplicanddest - will hold the resultVector3d fma(Vector3fc a, Vector3fc b, Vector3d dest)
a * b to this vector
and store the result in dest.a - the first multiplicandb - the second multiplicanddest - will hold the resultVector3d fma(double a, Vector3fc b, Vector3d dest)
a * b to this vector
and store the result in dest.a - the first multiplicandb - the second multiplicanddest - will hold the resultVector3d mul(Vector3fc v, Vector3d dest)
dest.v - the vector to multiply bydest - will hold the resultVector3d mul(Vector3dc v, Vector3d dest)
v component-wise and store the result into dest.v - the vector to multiply bydest - will hold the resultVector3d div(Vector3fc v, Vector3d dest)
dest.v - the vector to divide bydest - will hold the resultVector3d div(Vector3dc v, Vector3d dest)
v component-wise and store the result into dest.v - the vector to divide bydest - will hold the resultVector3d mulProject(Matrix4dc mat, Vector3d dest)
mat with this Vector3d, perform perspective division
and store the result in dest.
This method uses w=1.0 as the fourth vector component.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulProject(Matrix4fc mat, Vector3d dest)
mat with this Vector3d, perform perspective division
and store the result in dest.
This method uses w=1.0 as the fourth vector component.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mul(Matrix3dc mat, Vector3d dest)
mat with this and store the
result in dest.mat - the matrix to multiply this vector bydest - will hold the resultVector3d mul(Matrix3fc mat, Vector3d dest)
mat with this and store the
result in dest.mat - the matrix to multiply this vector bydest - will hold the resultVector3d mul(Matrix3x2dc mat, Vector3d dest)
mat with this by assuming a
third row in the matrix of (0, 0, 1) and store the result in dest.mat - the matrix to multiply this vector bydest - will hold the resultVector3d mul(Matrix3x2fc mat, Vector3d dest)
mat with this by assuming a
third row in the matrix of (0, 0, 1) and store the result in dest.mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulTranspose(Matrix3dc mat, Vector3d dest)
dest.mat - the matrixdest - will hold the resultVector3d mulTranspose(Matrix3fc mat, Vector3d dest)
dest.mat - the matrixdest - will hold the resultVector3d mulPosition(Matrix4dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulPosition(Matrix4fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulPosition(Matrix4x3dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulPosition(Matrix4x3fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulTransposePosition(Matrix4dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix whose transpose to multiply this vector bydest - will hold the resultVector3d mulTransposePosition(Matrix4fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 1.0.
mat - the matrix whose transpose to multiply this vector bydest - will hold the resultdouble mulPositionW(Matrix4fc mat, Vector3d dest)
mat with this, store the
result in dest and return the w component of the resulting 4D vector.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the (x, y, z) components of the resulting vectordouble mulPositionW(Matrix4dc mat, Vector3d dest)
mat with this, store the
result in dest and return the w component of the resulting 4D vector.
This method assumes the w component of this to be 1.0.
mat - the matrix to multiply this vector bydest - will hold the (x, y, z) components of the resulting vectorVector3d mulDirection(Matrix4dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulDirection(Matrix4fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulDirection(Matrix4x3dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulDirection(Matrix4x3fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix to multiply this vector bydest - will hold the resultVector3d mulTransposeDirection(Matrix4dc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix whose transpose to multiply this vector bydest - will hold the resultVector3d mulTransposeDirection(Matrix4fc mat, Vector3d dest)
mat with this and store the
result in dest.
This method assumes the w component of this to be 0.0.
mat - the matrix whose transpose to multiply this vector bydest - will hold the resultVector3d mul(double scalar, Vector3d dest)
dest.scalar - the scalar factordest - will hold the resultVector3d mul(double x, double y, double z, Vector3d dest)
dest.x - the x component to multiply this vector byy - the y component to multiply this vector byz - the z component to multiply this vector bydest - will hold the resultVector3d rotate(Quaterniondc quat, Vector3d dest)
quat and store the result in dest.quat - the quaternion to rotate this vectordest - will hold the resultQuaterniond.transform(Vector3d)Quaterniond rotationTo(Vector3dc toDir, Quaterniond dest)
this vector to point along toDir
and store the result in dest.
Because there can be multiple possible rotations, this method chooses the one with the shortest arc.
toDir - the destination directiondest - will hold the resultQuaterniond.rotationTo(Vector3dc, Vector3dc)Quaterniond rotationTo(double toDirX, double toDirY, double toDirZ, Quaterniond dest)
this vector to point along (toDirX, toDirY, toDirZ)
and store the result in dest.
Because there can be multiple possible rotations, this method chooses the one with the shortest arc.
toDirX - the x coordinate of the destination directiontoDirY - the y coordinate of the destination directiontoDirZ - the z coordinate of the destination directiondest - will hold the resultQuaterniond.rotationTo(double, double, double, double, double, double)Vector3d rotateAxis(double angle, double aX, double aY, double aZ, Vector3d dest)
dest.angle - the angle in radiansaX - the x component of the rotation axisaY - the y component of the rotation axisaZ - the z component of the rotation axisdest - will hold the resultVector3d rotateX(double angle, Vector3d dest)
dest.angle - the angle in radiansdest - will hold the resultVector3d rotateY(double angle, Vector3d dest)
dest.angle - the angle in radiansdest - will hold the resultVector3d rotateZ(double angle, Vector3d dest)
dest.angle - the angle in radiansdest - will hold the resultVector3d div(double scalar, Vector3d dest)
dest.scalar - the scalar to divide this vector bydest - will hold the resultVector3d div(double x, double y, double z, Vector3d dest)
dest.x - the x component to divide this vector byy - the y component to divide this vector byz - the z component to divide this vector bydest - will hold the resultdouble lengthSquared()
double length()
Vector3d normalize(Vector3d dest)
dest.dest - will hold the resultVector3d normalize(double length, Vector3d dest)
dest.length - the desired lengthdest - will hold the resultVector3d cross(Vector3dc v, Vector3d dest)
dest.v - the other vectordest - will hold the resultVector3d cross(double x, double y, double z, Vector3d dest)
(x, y, z) and store the result in dest.x - the x component of the other vectory - the y component of the other vectorz - the z component of the other vectordest - will hold the resultdouble distance(Vector3dc v)
v.v - the other vectordouble distance(double x,
double y,
double z)
this vector and (x, y, z).x - the x component of the other vectory - the y component of the other vectorz - the z component of the other vectordouble distanceSquared(Vector3dc v)
v.v - the other vectordouble distanceSquared(double x,
double y,
double z)
this vector and (x, y, z).x - the x component of the other vectory - the y component of the other vectorz - the z component of the other vectordouble dot(Vector3dc v)
v - the other vectordouble dot(double x,
double y,
double z)
(x, y, z).x - the x component of the other vectory - the y component of the other vectorz - the z component of the other vectordouble angleCos(Vector3dc v)
this vector and
the supplied vector. Use this instead of Math.cos(angle(v)).v - the other vectorangle(Vector3dc)double angle(Vector3dc v)
v - the other vectorangleCos(Vector3dc)double angleSigned(Vector3dc v, Vector3dc n)
n.v - the other vectorn - the plane's normal vectorangleCos(Vector3dc)double angleSigned(double x,
double y,
double z,
double nx,
double ny,
double nz)
(nx, ny, nz).x - the x coordinate of the other vectory - the y coordinate of the other vectorz - the z coordinate of the other vectornx - the x coordinate of the plane's normal vectorny - the y coordinate of the plane's normal vectornz - the z coordinate of the plane's normal vectorVector3d min(Vector3dc v, Vector3d dest)
dest to be the component-wise minimum of this and the other vector.v - the other vectordest - will hold the resultVector3d max(Vector3dc v, Vector3d dest)
dest to be the component-wise maximum of this and the other vector.v - the other vectordest - will hold the resultVector3d negate(Vector3d dest)
dest.dest - will hold the resultVector3d absolute(Vector3d dest)
this and store the result in dest.dest - will hold the resultVector3d reflect(Vector3dc normal, Vector3d dest)
dest.normal - the vector to reflect aboutdest - will hold the resultVector3d reflect(double x, double y, double z, Vector3d dest)
dest.x - the x component of the normaly - the y component of the normalz - the z component of the normaldest - will hold the resultVector3d half(Vector3dc other, Vector3d dest)
dest.other - the other vectordest - will hold the resultVector3d half(double x, double y, double z, Vector3d dest)
(x, y, z)
and store the result in dest.x - the x component of the other vectory - the y component of the other vectorz - the z component of the other vectordest - will hold the resultVector3d smoothStep(Vector3dc v, double t, Vector3d dest)
this vector and the given vector v and
store the result in dest.v - the other vectort - the interpolation factor, within [0..1]dest - will hold the resultVector3d hermite(Vector3dc t0, Vector3dc v1, Vector3dc t1, double t, Vector3d dest)
this vector and its
associated tangent t0 and the given vector v
with its tangent t1 and store the result in
dest.t0 - the tangent of this vectorv1 - the other vectort1 - the tangent of the other vectort - the interpolation factor, within [0..1]dest - will hold the resultVector3d lerp(Vector3dc other, double t, Vector3d dest)
this and other using the given interpolation factor t
and store the result in dest.
If t is 0.0 then the result is this. If the interpolation factor is 1.0
then the result is other.
other - the other vectort - the interpolation factor between 0.0 and 1.0dest - will hold the resultdouble get(int component)
throws IllegalArgumentException
component - the component, within [0..2]IllegalArgumentException - if component is not within [0..2]int maxComponent()
[0..2]int minComponent()
[0..2]Vector3d orthogonalize(Vector3dc v, Vector3d dest)
this vector so that it is orthogonal to the given vector v, normalize the result and store it into dest.
Reference: Gram–Schmidt process
v - the reference vector which the result should be orthogonal todest - will hold the resultVector3d orthogonalizeUnit(Vector3dc v, Vector3d dest)
this vector so that it is orthogonal to the given unit vector v, normalize the result and store it into dest.
The vector v is assumed to be a unit vector.
Reference: Gram–Schmidt process
v - the reference unit vector which the result should be orthogonal todest - will hold the resultVector3d floor(Vector3d dest)
double value that is less than or equal to that
component and is equal to a mathematical integer and store the result in
dest.dest - will hold the resultVector3d ceil(Vector3d dest)
double value that is greater than or equal to that
component and is equal to a mathematical integer and store the result in
dest.dest - will hold the resultVector3d round(Vector3d dest)
dest.dest - will hold the resultboolean isFinite()
NaN and not
infinity.true if all components are finite floating-point values;
false otherwiseboolean equals(Vector3dc v, double delta)
this vector with the given vector using the given delta
and return whether all of them are equal within a maximum difference of delta.
Please note that this method is not used by any data structure such as ArrayList HashSet or HashMap
and their operations, such as ArrayList.contains(Object) or HashSet.remove(Object), since those
data structures only use the Object.equals(Object) and Object.hashCode() methods.
v - the other vectordelta - the allowed maximum differencetrue whether all of the vector components are equal; false otherwiseboolean equals(double x,
double y,
double z)
this vector with the given (x, y, z)
and return whether all of them are equal.x - the x component to compare toy - the y component to compare toz - the z component to compare totrue if all the vector components are equalCopyright © 2015–2019 JOML. All rights reserved.