Interface Pickable

All Known Implementing Classes:
BasicText, BMText, BMTextBackground, Box, Capsule, ClipmapLevel, Cone, Cylinder, Disk, Dodecahedron, Dome, DrawableCamera, Extrusion, GeoSphere, Hexagon, Icosahedron, InteractRing, Line, Mesh, MultiFaceBox, Octahedron, OrientedBox, Point, PQTorus, ProjectedGrid, Pyramid, Quad, QuadBox, QuadQuad, RoundedBox, SkinnedMesh, SkyDome, Sphere, StripBox, Teapot, Terrain, TextMesh, Torus, TrailMesh, Tube, UIArc, UIDisk, UIQuad

public interface Pickable
An interface describing objects that can be used with our PickingUtil class.
  • Method Details

    • supportsBoundsIntersectionRecord

      boolean supportsBoundsIntersectionRecord()
      Returns:
      true if this pickable supports intersectsWorldBoundsWhere. False if this method will always return null.
    • supportsPrimitivesIntersectionRecord

      boolean supportsPrimitivesIntersectionRecord()
      Returns:
      true if this pickable supports intersectsPrimitivesWhere. False if this method will always return null.
    • intersectsWorldBound

      boolean intersectsWorldBound(Ray3 ray)
      Parameters:
      ray - a ray, in world coordinates.
      Returns:
      true if the given ray intersects our world bounding volume. false if it does not.
      Throws:
      NullPointerException - if there is no bound to check.
    • intersectsWorldBoundsWhere

      IntersectionRecord intersectsWorldBoundsWhere(Ray3 ray)
      Parameters:
      ray - a ray, in world coordinates.
      Returns:
      an intersection record containing information about where the ray intersected our bounding volume, or null if it does not.
      Throws:
      NullPointerException - if there is no bound to check.
    • intersectsPrimitivesWhere

      IntersectionRecord intersectsPrimitivesWhere(Ray3 ray)
      Parameters:
      ray - a ray, in world coordinates.
      Returns:
      an intersection record containing information about where the ray intersected our primitives, or null if it does not.