Package com.jme3.bullet.collision.shapes
Class Box2dShape
java.lang.Object
com.jme3.bullet.NativePhysicsObject
com.jme3.bullet.collision.shapes.CollisionShape
com.jme3.bullet.collision.shapes.ConvexShape
com.jme3.bullet.collision.shapes.Box2dShape
- All Implemented Interfaces:
Comparable<NativePhysicsObject>
An axis-aligned, rectangular collision shape based on Bullet's
btBox2dShape
.-
Field Summary
Fields inherited from class com.jme3.bullet.collision.shapes.ConvexShape
loggerX
Fields inherited from class com.jme3.bullet.collision.shapes.CollisionShape
enableContactFilter, logger, margin, scale
Fields inherited from class com.jme3.bullet.NativePhysicsObject
loggerN
-
Constructor Summary
ConstructorDescriptionBox2dShape
(float halfExtent) Instantiate a square shape with the specified half extent.Box2dShape
(float xHalfExtent, float yHalfExtent) Instantiate a rectangle shape with the specified half extents.Box2dShape
(Vector3f halfExtents) Instantiate a rectangle shape with the specified half extents. -
Method Summary
Modifier and TypeMethodDescriptiongetHalfExtents
(Vector3f storeResult) Copy the half extents of the rectangle.float
Calculate how far the scaled shape extends from its center.Methods inherited from class com.jme3.bullet.collision.shapes.ConvexShape
isConcave, isConvex, scaledVolume, toHullShape, toSplittableShape
Methods inherited from class com.jme3.bullet.collision.shapes.CollisionShape
aabbCenter, boundingBox, boundingBox, canScale, canSplit, getDefaultMargin, getMargin, getScale, getScaleDp, getShapeType, getShapeType, isContactFilterEnabled, isInfinite, isNonMoving, isPolyhedral, nativeMargin, recalculateAabb, setContactFilterEnabled, setDefaultMargin, setMargin, setNativeId, setScale, setScale, setUserIndex, setUserIndex2, toString, updateScale, userIndex, userIndex2
Methods inherited from class com.jme3.bullet.NativePhysicsObject
compareTo, countTrackers, dumpTrackers, equals, freeUnusedObjects, hasAssignedNativeObject, hashCode, nativeId, reassignNativeId, setNativeIdNotTracked, unassignNativeObject
-
Field Details
-
logger2
message logger for this class
-
-
Constructor Details
-
Box2dShape
public Box2dShape(float halfExtent) Instantiate a square shape with the specified half extent.- Parameters:
halfExtent
- the desired unscaled half extent on each local axis (not negative)
-
Box2dShape
public Box2dShape(float xHalfExtent, float yHalfExtent) Instantiate a rectangle shape with the specified half extents.- Parameters:
xHalfExtent
- the desired unscaled half extent on the local X axis (not negative)yHalfExtent
- the desired unscaled half extent on the local Y axis (not negative)
-
Box2dShape
Instantiate a rectangle shape with the specified half extents.- Parameters:
halfExtents
- the desired unscaled half extents (not null, no negative component, unaffected, Z component ignored)
-
-
Method Details
-
getHalfExtents
Copy the half extents of the rectangle.- Parameters:
storeResult
- storage for the result (modified if not null)- Returns:
- the unscaled half extent for each local axis (either storeResult or a new vector, not null, no negative component)
-
maxRadius
public float maxRadius()Calculate how far the scaled shape extends from its center.- Overrides:
maxRadius
in classCollisionShape
- Returns:
- the distance (in physics-space units, ≥0)
-