Class AABB

java.lang.Object
org.jbox2d.collision.AABB

public class AABB extends java.lang.Object
An axis-aligned bounding box.
  • Field Details

    • lowerBound

      public final Vec2 lowerBound
      Bottom left vertex of bounding box.
    • upperBound

      public final Vec2 upperBound
      Top right vertex of bounding box.
  • Constructor Details

    • AABB

      public AABB()
      Creates the default object, with vertices at 0,0 and 0,0.
    • AABB

      public AABB(AABB copy)
      Copies from the given object
      Parameters:
      copy - the object to copy from
    • AABB

      public AABB(Vec2 lowerVertex, Vec2 upperVertex)
      Creates an AABB object using the given bounding vertices.
      Parameters:
      lowerVertex - the bottom left vertex of the bounding box
      maxVertex - the top right vertex of the bounding box
  • Method Details

    • set

      public final void set(AABB aabb)
      Sets this object from the given object
      Parameters:
      aabb - the object to copy from
    • isValid

      public final boolean isValid()
      Verify that the bounds are sorted
    • getCenter

      public final Vec2 getCenter()
      Get the center of the AABB
      Returns:
    • getCenterToOut

      public final void getCenterToOut(Vec2 out)
    • getExtents

      public final Vec2 getExtents()
      Get the extents of the AABB (half-widths).
      Returns:
    • getExtentsToOut

      public final void getExtentsToOut(Vec2 out)
    • getVertices

      public final void getVertices(Vec2[] argRay)
    • combine

      public final void combine(AABB aabb1, AABB aab)
      Combine two AABBs into this one.
      Parameters:
      aabb1 -
      aab -
    • getPerimeter

      public final float getPerimeter()
      Gets the perimeter length
      Returns:
    • combine

      public final void combine(AABB aabb)
      Combines another aabb with this one
      Parameters:
      aabb -
    • contains

      public final boolean contains(AABB aabb)
      Does this aabb contain the provided AABB.
      Returns:
    • raycast

      public final boolean raycast(RayCastOutput output, RayCastInput input)
      Deprecated.
      please use raycast(RayCastOutput, RayCastInput, IWorldPool) for better performance
      Parameters:
      output -
      input -
      Returns:
    • raycast

      public final boolean raycast(RayCastOutput output, RayCastInput input, IWorldPool argPool)
      From Real-time Collision Detection, p179.
      Parameters:
      output -
      input -
    • testOverlap

      public static final boolean testOverlap(AABB a, AABB b)
    • toString

      public final java.lang.String toString()
      Overrides:
      toString in class java.lang.Object