Class Intersectord


  • public class Intersectord
    extends java.lang.Object
    • Constructor Detail

      • Intersectord

        public Intersectord()
    • Method Detail

      • intersectRayBoundsFast

        public static boolean intersectRayBoundsFast​(Rayd ray,
                                                     Vector3d center,
                                                     Vector3d dimensions)
        Quick check whether the given Ray and BoundingBoxd intersect.
        Parameters:
        ray - The ray
        center - The center of the bounding box
        dimensions - The dimensions (width, height and depth) of the bounding box
        Returns:
        Whether the ray and the bounding box intersect.
      • checkIntersectRaySpehre

        public static boolean checkIntersectRaySpehre​(Vector3d linePoint0,
                                                      Vector3d linePoint1,
                                                      Vector3d sphereCenter,
                                                      double sphereRadius)
      • checkIntersectRaySpehre

        public static boolean checkIntersectRaySpehre​(com.badlogic.gdx.math.Vector3 linePoint0,
                                                      com.badlogic.gdx.math.Vector3 linePoint1,
                                                      Vector3d sphereCenter,
                                                      double sphereRadius)
      • checkIntersectRaySpehre

        public static boolean checkIntersectRaySpehre​(double px,
                                                      double py,
                                                      double pz,
                                                      double vx,
                                                      double vy,
                                                      double vz,
                                                      double cx,
                                                      double cy,
                                                      double cz,
                                                      double sphereRadius)
      • intersectRaySphere

        public static com.badlogic.gdx.utils.Array<Vector3d> intersectRaySphere​(Vector3d linePoint0,
                                                                                Vector3d linePoint1,
                                                                                Vector3d sphereCenter,
                                                                                double sphereRadius)
      • checkIntersectSegmentSphere

        public static boolean checkIntersectSegmentSphere​(Vector3d linePoint0,
                                                          Vector3d linePoint1,
                                                          Vector3d sphereCenter,
                                                          double sphereRadius)
      • intersectSegmentSphere

        public static com.badlogic.gdx.utils.Array<Vector3d> intersectSegmentSphere​(Vector3d linePoint0,
                                                                                    Vector3d linePoint1,
                                                                                    Vector3d sphereCenter,
                                                                                    double sphereRadius)
        TODO: Not working well due to aux vectors
        Parameters:
        linePoint0 -
        linePoint1 -
        sphereCenter -
        sphereRadius -
        Returns:
      • distanceLinePoint

        public static double distanceLinePoint​(Vector3d x1,
                                               Vector3d x2,
                                               Vector3d x0)
        Returns the shortest distance between the line defined by x1 and x2 and the point x0. See here.
        Parameters:
        x1 - Segment first point
        x2 - Segment second point
        x0 - Point to test
        Returns:
        The minimum distance between the line and the point
      • distanceSegmentPoint

        public static double distanceSegmentPoint​(Vector3d a,
                                                  Vector3d b,
                                                  Vector3d v)
        Calculates the euclidean distance from a point to a line segment.
        Parameters:
        v - the point
        a - start of line segment
        b - end of line segment
        Returns:
        distance from v to line segment [a,b]