Contents
- Description
- Nested Class Summary
- Constructor Summary
- Method Summary
- Constructor Details
- Method Details
- toString(Vector3dc)
- toString(Vector3ic)
- randomize(Random, Vector3d)
- nextUp(Vector3d)
- nextDown(Vector3d)
- orthogonalVector(Vector3d, Vector3d)
- isZero(Vector3dc)
- isZero(Vector3ic)
- assignFloored(Vector3i, Vector3d)
- areasOverlap(Vector3d, Vector3d, Vector3d, Vector3d)
- distanceToSegment3d(Vector3dc, Vector3dc, Vector3dc)
- distanceToLine3d(Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d)
- nearestPointOnSegment3d(Vector3d, Vector3d, Vector3d)
- nearestPointOnLine3d(Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d, Vector3d)
- shortestSegmentBetweenTwoSegments(Vector3d, Vector3d, Vector3d, Vector3d, boolean, Vector3d, Vector3d)
- determinant(Vector3dc, Vector3dc)
- determinant(Vector3d, Vector3d, Vector3d)
- distanceAndNearestPointOnSegment3d(Vector3d, Vector3d, Vector3d)
- angle(Vector3d, Vector3d)
- rotateAroundAxis(Vector3d, Vector3d, double)
- rotateVectorByAxisAngle(Vector3d, Vector3d, double)
- isInside(Vector3i, Vector3i, Vector3i)
- isInside(Vector3d, Vector3d, Vector3d)
- isAnySmaller(Vector3d, Vector3d)
- isSmaller(Vector3d, Vector3d)
- isAnyGreater(Vector3d, Vector3d)
- isAnySmaller(Vector3i, Vector3i)
- isAnyGreater(Vector3i, Vector3i)
- isInside(Vector2d, Vector2d, Vector2d)
- isAnySmaller(Vector2d, Vector2d)
- isSmaller(Vector2d, Vector2d)
- isAnyGreater(Vector2d, Vector2d)
- isAnySmaller(Vector2i, Vector2i)
- isSmaller(Vector2i, Vector2i)
- isAnyGreater(Vector2i, Vector2i)
- fromOperation(Vector3i, Vector3i, VectorUtil.BiOperation3i)
- fromOperation(VectorUtil.NakedOperation3i)
- bitShiftRight(int, Vector3i)
- bitShiftLeft(int, Vector3i)
- orderByDistanceFrom(Vector2i, List)
Class VectorUtil
java.lang.Object
com.hypixel.hytale.builtin.hytalegenerator.VectorUtil
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic interfacestatic interfacestatic class -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic doubleangle(org.joml.Vector3d a, org.joml.Vector3d b) static booleanareasOverlap(org.joml.Vector3d minA, org.joml.Vector3d maxA, org.joml.Vector3d minB, org.joml.Vector3d maxB) static voidassignFloored(org.joml.Vector3i to, org.joml.Vector3d from) static voidbitShiftLeft(int shift, org.joml.Vector3i vector) static voidbitShiftRight(int shift, org.joml.Vector3i vector) static doubledeterminant(org.joml.Vector3dc v1, org.joml.Vector3dc v2) static doubledeterminant(org.joml.Vector3d a, org.joml.Vector3d b, org.joml.Vector3d c) static it.unimi.dsi.fastutil.doubles.DoubleObjectPair<org.joml.Vector3d> distanceAndNearestPointOnSegment3d(org.joml.Vector3d point, org.joml.Vector3d p0, org.joml.Vector3d p1) static doubledistanceToLine3d(org.joml.Vector3d point, org.joml.Vector3d p0, org.joml.Vector3d p1, org.joml.Vector3d rLineVec, org.joml.Vector3d rPointVec, org.joml.Vector3d rLineUnitVec, org.joml.Vector3d rPointVecScaled, org.joml.Vector3d rNearestPoint) static doubledistanceToSegment3d(org.joml.Vector3dc point, org.joml.Vector3dc p0, org.joml.Vector3dc p1) static org.joml.Vector3ifromOperation(VectorUtil.NakedOperation3i operation) static org.joml.Vector3ifromOperation(org.joml.Vector3i v1, org.joml.Vector3i v2, VectorUtil.BiOperation3i operation) static booleanisAnyGreater(org.joml.Vector2d point, org.joml.Vector2d limit) static booleanisAnyGreater(org.joml.Vector2i point, org.joml.Vector2i limit) static booleanisAnyGreater(org.joml.Vector3d point, org.joml.Vector3d limit) static booleanisAnyGreater(org.joml.Vector3i point, org.joml.Vector3i limit) static booleanisAnySmaller(org.joml.Vector2d point, org.joml.Vector2d limit) static booleanisAnySmaller(org.joml.Vector2i point, org.joml.Vector2i limit) static booleanisAnySmaller(org.joml.Vector3d point, org.joml.Vector3d limit) static booleanisAnySmaller(org.joml.Vector3i point, org.joml.Vector3i limit) static booleanisInside(org.joml.Vector2d point, org.joml.Vector2d min, org.joml.Vector2d max) static booleanisInside(org.joml.Vector3d point, org.joml.Vector3d min, org.joml.Vector3d max) static booleanisInside(org.joml.Vector3i point, org.joml.Vector3i min, org.joml.Vector3i max) static booleanisSmaller(org.joml.Vector2d point, org.joml.Vector2d limit) static booleanisSmaller(org.joml.Vector2i point, org.joml.Vector2i limit) static booleanisSmaller(org.joml.Vector3d point, org.joml.Vector3d limit) static booleanisZero(org.joml.Vector3dc vec) static booleanisZero(org.joml.Vector3ic vec) static voidnearestPointOnLine3d(org.joml.Vector3d point, org.joml.Vector3d p0, org.joml.Vector3d p1, org.joml.Vector3d vector_out, org.joml.Vector3d rLineVec, org.joml.Vector3d rPointVec, org.joml.Vector3d rLineUnitVec, org.joml.Vector3d rPointVecScaled) static org.joml.Vector3dnearestPointOnSegment3d(org.joml.Vector3d point, org.joml.Vector3d p0, org.joml.Vector3d p1) static voidnextDown(org.joml.Vector3d vec) static voidnextUp(org.joml.Vector3d vec) static List<org.joml.Vector2i> orderByDistanceFrom(org.joml.Vector2i origin, List<org.joml.Vector2i> vectors) Orders the provided list of vectors in order of closest to farthest from the origin.static voidorthogonalVector(org.joml.Vector3d vec, org.joml.Vector3d dest) static voidWrites a random direction, distributed uniformly over the unit sphere.static voidrotateAroundAxis(org.joml.Vector3d vec, org.joml.Vector3d axis, double theta) static voidrotateVectorByAxisAngle(org.joml.Vector3d vec, org.joml.Vector3d axis, double angle) static boolean[]shortestSegmentBetweenTwoSegments(org.joml.Vector3d a0, org.joml.Vector3d a1, org.joml.Vector3d b0, org.joml.Vector3d b1, boolean clamp, org.joml.Vector3d p0Out, org.joml.Vector3d p1Out) static StringtoString(org.joml.Vector3dc vec) static StringtoString(org.joml.Vector3ic vec)
-
Constructor Details
-
VectorUtil
public VectorUtil()
-
-
Method Details
-
toString
-
toString
-
randomize
Writes a random direction, distributed uniformly over the unit sphere.Uses Marsaglia's rejection method from "Choosing a Point from the Surface of a Sphere", Annals of Mathematical Statistics 43(2), 645-646 (1972).
- Parameters:
random- determines the random outcomevector_out- is written to, and receives a unit vector
-
nextUp
public static void nextUp(@Nonnull org.joml.Vector3d vec) -
nextDown
public static void nextDown(@Nonnull org.joml.Vector3d vec) -
orthogonalVector
public static void orthogonalVector(@Nonnull org.joml.Vector3d vec, @Nonnull org.joml.Vector3d dest) -
isZero
public static boolean isZero(@Nonnull org.joml.Vector3dc vec) -
isZero
public static boolean isZero(@Nonnull org.joml.Vector3ic vec) -
assignFloored
public static void assignFloored(@Nonnull org.joml.Vector3i to, @Nonnull org.joml.Vector3d from) -
areasOverlap
public static boolean areasOverlap(@Nonnull org.joml.Vector3d minA, @Nonnull org.joml.Vector3d maxA, @Nonnull org.joml.Vector3d minB, @Nonnull org.joml.Vector3d maxB) -
distanceToSegment3d
public static double distanceToSegment3d(@Nonnull org.joml.Vector3dc point, @Nonnull org.joml.Vector3dc p0, @Nonnull org.joml.Vector3dc p1) -
distanceToLine3d
public static double distanceToLine3d(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d p0, @Nonnull org.joml.Vector3d p1, @Nonnull org.joml.Vector3d rLineVec, @Nonnull org.joml.Vector3d rPointVec, @Nonnull org.joml.Vector3d rLineUnitVec, @Nonnull org.joml.Vector3d rPointVecScaled, @Nonnull org.joml.Vector3d rNearestPoint) -
nearestPointOnSegment3d
@Nonnull public static org.joml.Vector3d nearestPointOnSegment3d(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d p0, @Nonnull org.joml.Vector3d p1) -
nearestPointOnLine3d
public static void nearestPointOnLine3d(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d p0, @Nonnull org.joml.Vector3d p1, @Nonnull org.joml.Vector3d vector_out, @Nonnull org.joml.Vector3d rLineVec, @Nonnull org.joml.Vector3d rPointVec, @Nonnull org.joml.Vector3d rLineUnitVec, @Nonnull org.joml.Vector3d rPointVecScaled) -
shortestSegmentBetweenTwoSegments
public static boolean[] shortestSegmentBetweenTwoSegments(@Nonnull org.joml.Vector3d a0, @Nonnull org.joml.Vector3d a1, @Nonnull org.joml.Vector3d b0, @Nonnull org.joml.Vector3d b1, boolean clamp, @Nonnull org.joml.Vector3d p0Out, @Nonnull org.joml.Vector3d p1Out) -
determinant
public static double determinant(@Nonnull org.joml.Vector3dc v1, @Nonnull org.joml.Vector3dc v2) -
determinant
public static double determinant(@Nonnull org.joml.Vector3d a, @Nonnull org.joml.Vector3d b, @Nonnull org.joml.Vector3d c) -
distanceAndNearestPointOnSegment3d
@Nonnull public static it.unimi.dsi.fastutil.doubles.DoubleObjectPair<org.joml.Vector3d> distanceAndNearestPointOnSegment3d(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d p0, @Nonnull org.joml.Vector3d p1) -
angle
public static double angle(@Nonnull org.joml.Vector3d a, @Nonnull org.joml.Vector3d b) -
rotateAroundAxis
public static void rotateAroundAxis(@Nonnull org.joml.Vector3d vec, @Nonnull org.joml.Vector3d axis, double theta) -
rotateVectorByAxisAngle
public static void rotateVectorByAxisAngle(@Nonnull org.joml.Vector3d vec, @Nonnull org.joml.Vector3d axis, double angle) -
isInside
public static boolean isInside(@Nonnull org.joml.Vector3i point, @Nonnull org.joml.Vector3i min, @Nonnull org.joml.Vector3i max) -
isInside
public static boolean isInside(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d min, @Nonnull org.joml.Vector3d max) -
isAnySmaller
public static boolean isAnySmaller(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d limit) -
isSmaller
public static boolean isSmaller(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d limit) -
isAnyGreater
public static boolean isAnyGreater(@Nonnull org.joml.Vector3d point, @Nonnull org.joml.Vector3d limit) -
isAnySmaller
public static boolean isAnySmaller(@Nonnull org.joml.Vector3i point, @Nonnull org.joml.Vector3i limit) -
isAnyGreater
public static boolean isAnyGreater(@Nonnull org.joml.Vector3i point, @Nonnull org.joml.Vector3i limit) -
isInside
public static boolean isInside(@Nonnull org.joml.Vector2d point, @Nonnull org.joml.Vector2d min, @Nonnull org.joml.Vector2d max) -
isAnySmaller
public static boolean isAnySmaller(@Nonnull org.joml.Vector2d point, @Nonnull org.joml.Vector2d limit) -
isSmaller
public static boolean isSmaller(@Nonnull org.joml.Vector2d point, @Nonnull org.joml.Vector2d limit) -
isAnyGreater
public static boolean isAnyGreater(@Nonnull org.joml.Vector2d point, @Nonnull org.joml.Vector2d limit) -
isAnySmaller
public static boolean isAnySmaller(@Nonnull org.joml.Vector2i point, @Nonnull org.joml.Vector2i limit) -
isSmaller
public static boolean isSmaller(@Nonnull org.joml.Vector2i point, @Nonnull org.joml.Vector2i limit) -
isAnyGreater
public static boolean isAnyGreater(@Nonnull org.joml.Vector2i point, @Nonnull org.joml.Vector2i limit) -
fromOperation
@Nonnull public static org.joml.Vector3i fromOperation(@Nonnull org.joml.Vector3i v1, @Nonnull org.joml.Vector3i v2, @Nonnull VectorUtil.BiOperation3i operation) -
fromOperation
@Nonnull public static org.joml.Vector3i fromOperation(@Nonnull VectorUtil.NakedOperation3i operation) -
bitShiftRight
public static void bitShiftRight(int shift, @Nonnull org.joml.Vector3i vector) -
bitShiftLeft
public static void bitShiftLeft(int shift, @Nonnull org.joml.Vector3i vector) -
orderByDistanceFrom
-