Class Vectors4F
java.lang.Object
com.io7m.jtensors.core.unparameterized.vectors.Vectors4F
-
Method Summary
Modifier and TypeMethodDescriptionstatic Vector4FCalculate the absolute ofv0.static Vector4FAddv0tov1.static Vector4FAddv0tov1 * r.static Vector4FClamp the values invbyv_minandv_max.static doubleCalculate the distance betweenv0andv1.static doubledotProduct(Vector4F v0, Vector4F v1) Calculate the scalar product of the vectorsv0andv1.static Vector4FinterpolateBilinear(Vector4F x0y0, Vector4F x1y0, Vector4F x0y1, Vector4F x1y1, double px, double py) Bilinearly interpolate betweenx0y0,x1y0,x0y1,x1y1.static Vector4FinterpolateLinear(Vector4F v0, Vector4F v1, double alpha) Linearly interpolate betweenv0andv1by the amountalpha.static doubleCalculate the magnitude of the vectorv0.static doubleCalculate the squared magnitude of the vectorv0.static Vector4FMultiplyv0byv1.static Vector4FCalculate the negation ofv.static Vector4FNormalize the vectorv0.static Vector4FScalev0byr.static Vector4FSubtractv1fromv0.static Vector4Fzero()The zero vector.
-
Method Details
-
absolute
-
add
-
multiply
-
addScaled
-
clamp
Clamp the values invbyv_minandv_max.- Parameters:
v_min- The minimum vectorv_max- The maximum vector- Returns:
(max(min(v.x, v_max.x()), v_min.x()), max(min(v.y, v_max.y()), v_min.y()), max(min(v.z, v_max.z()), v_min.z()), max(min(v.w, v_max.w()), v_min.w()))* @param v The source vector
-
distance
-
dotProduct
-
interpolateLinear
Linearly interpolate between
v0andv1by the amountalpha.The
alphaparameter controls the degree of interpolation, such that:interpolateLinear(v0, v1, 0.0) = v0interpolateLinear(v0, v1, 1.0) = v1
- Parameters:
v0- The left input vectorv1- The right input vectoralpha- The interpolation value in the range[0, 1]* @return((1 - alpha) * v0) + (alpha * v1)
-
interpolateBilinear
public static Vector4F interpolateBilinear(Vector4F x0y0, Vector4F x1y0, Vector4F x0y1, Vector4F x1y1, double px, double py) Bilinearly interpolate between
x0y0,x1y0,x0y1,x1y1.The
pxandpyparameters control the degree of interpolation, such that:interpolateBilinear(x0y0, x1y0, x0y1, x1y1, 0.0, 0.0) = x0y0interpolateBilinear(x0y0, x1y0, x0y1, x1y1, 1.0, 0.0) = x1y0interpolateBilinear(x0y0, x1y0, x0y1, x1y1, 0.0, 1.0) = x0y1interpolateBilinear(x0y0, x1y0, x0y1, x1y1, 1.0, 1.0) = x1y1
- Parameters:
x0y0- The top left input vectorx1y0- The top right input vectorx0y1- The bottom left input vectorx1y1- The bottom right input vectorpx- The X interpolation value in the range[0, 1]py- The Y interpolation value in the range[0, 1]* @return The bilinearly interpolated value
-
magnitudeSquared
Calculate the squared magnitude of the vectorv0. * @param v0 The vector- Returns:
- The squared magnitude of the vector
-
magnitude
Calculate the magnitude of the vectorv0. * @param v0 The vector- Returns:
- The magnitude of the vector
-
negate
-
normalize
-
scale
-
subtract
-
zero
-