public abstract class Shape
extends java.lang.Object
Modifier and Type | Method and Description |
---|---|
abstract Shape |
clone() |
abstract void |
computeAABB(AABB aabb,
Transform xf,
int childIndex)
Given a transform, compute the associated axis aligned bounding box for a child shape.
|
abstract void |
computeMass(MassData massData,
float density)
Compute the mass properties of this shape using its dimensions and density.
|
abstract int |
getChildCount()
Get the number of child primitives
|
float |
getRadius()
The radius of the underlying shape.
|
ShapeType |
getType()
Get the type of this shape.
|
abstract boolean |
raycast(RayCastOutput output,
RayCastInput input,
Transform transform,
int childIndex)
Cast a ray against a child shape.
|
void |
setRadius(float radius)
Sets the radius of the underlying shape.
|
abstract boolean |
testPoint(Transform xf,
Vec2 p)
Test a point for containment in this shape.
|
public final ShapeType m_type
public float m_radius
public Shape(ShapeType type)
public ShapeType getType()
public float getRadius()
public void setRadius(float radius)
radius
- public abstract int getChildCount()
public abstract boolean testPoint(Transform xf, Vec2 p)
xf
- the shape world transform.p
- a point in world coordinates.public abstract boolean raycast(RayCastOutput output, RayCastInput input, Transform transform, int childIndex)
argOutput
- the ray-cast results.argInput
- the ray-cast input parameters.argTransform
- the transform to be applied to the shape.argChildIndex
- the child shape indexpublic abstract void computeAABB(AABB aabb, Transform xf, int childIndex)
argAabb
- returns the axis aligned box.argXf
- the world transform of the shape.public abstract void computeMass(MassData massData, float density)
massData
- returns the mass data for this shape.density
- the density in kilograms per meter squared.public abstract Shape clone()
clone
in class java.lang.Object
Copyright © 2017. All Rights Reserved.