Class Convex2dShape

All Implemented Interfaces:
Comparable<NativePhysicsObject>

public class Convex2dShape extends ConvexShape
A convex collision shape optimized for 2-D, based on Bullet's btConvex2dShape. For a rectangle, use Box2dShape instead.
  • Field Details

    • logger2

      public static final Logger logger2
      message logger for this class
  • Constructor Details

    • Convex2dShape

      public Convex2dShape(ConvexShape base)
      Instantiate a shape based on the specified convex shape.
      Parameters:
      base - the base shape (not null, convex, alias created)
    • Convex2dShape

      public Convex2dShape(FloatBuffer flippedBuffer)
      Instantiate a 2-D hull shape based on a flipped buffer containing coordinates.
      Parameters:
      flippedBuffer - the coordinates on which to base the shape (not null, not empty, length a multiple of 3, Z=0, unaffected)
  • Method Details

    • getBaseShape

      public ConvexShape getBaseShape()
      Access the base shape.
      Returns:
      the pre-existing shape (not null)
    • canScale

      public boolean canScale(Vector3f scale)
      Test whether the specified scale factors can be applied to this shape.
      Overrides:
      canScale in class CollisionShape
      Parameters:
      scale - the desired scale factor for each local axis (may be null, unaffected)
      Returns:
      true if applicable, otherwise false
    • setScale

      public void setScale(Vector3f scale)
      Alter the scale of this shape and its base. CAUTION: Not all shapes can be scaled arbitrarily.

      Note that if shapes are shared (between collision objects and/or compound shapes) changes can have unintended consequences.

      Overrides:
      setScale in class CollisionShape
      Parameters:
      scale - the desired scale factor for each local axis (not null, no negative component, unaffected, default=(1,1,1))