|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jbox2d.collision.shapes.Shape
org.jbox2d.collision.shapes.PolygonShape
public class PolygonShape
A convex polygon shape. Polygons have a maximum number of vertices equal to _maxPolygonVertices. In most cases you should not need many vertices for a convex polygon.
Field Summary | |
---|---|
Vec2 |
m_centroid
Local position of the shape centroid in parent body frame. |
int |
m_count
Number of active vertices in the shape. |
Vec2[] |
m_normals
The normals of the shape. |
Vec2[] |
m_vertices
The vertices of the shape. |
Fields inherited from class org.jbox2d.collision.shapes.Shape |
---|
m_radius, m_type |
Constructor Summary | |
---|---|
PolygonShape()
|
Method Summary | |
---|---|
Vec2 |
centroid(Transform xf)
Get the centroid and apply the supplied transform. |
Vec2 |
centroidToOut(Transform xf,
Vec2 out)
Get the centroid and apply the supplied transform. |
Shape |
clone()
|
void |
computeAABB(AABB aabb,
Transform xf,
int childIndex)
Given a transform, compute the associated axis aligned bounding box for a child shape. |
void |
computeCentroidToOut(Vec2[] vs,
int count,
Vec2 out)
|
void |
computeMass(MassData massData,
float density)
Compute the mass properties of this shape using its dimensions and density. |
int |
getChildCount()
Get the number of child primitives |
Vec2[] |
getNormals()
Get the edge normal vectors. |
Vec2 |
getVertex(int index)
Get a vertex by index. |
int |
getVertexCount()
Get the vertex count. |
Vec2[] |
getVertices()
Get the vertices in local coordinates. |
boolean |
raycast(RayCastOutput output,
RayCastInput input,
Transform xf,
int childIndex)
Cast a ray against a child shape. |
void |
set(Vec2[] vertices,
int count)
Create a convex hull from the given array of points. |
void |
set(Vec2[] verts,
int num,
Vec2Array vecPool,
IntArray intPool)
Create a convex hull from the given array of points. |
void |
setAsBox(float hx,
float hy)
Build vertices to represent an axis-aligned box. |
void |
setAsBox(float hx,
float hy,
Vec2 center,
float angle)
Build vertices to represent an oriented box. |
boolean |
testPoint(Transform xf,
Vec2 p)
Test a point for containment in this shape. |
boolean |
validate()
Validate convexity. |
Methods inherited from class org.jbox2d.collision.shapes.Shape |
---|
getRadius, getType, setRadius |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public final Vec2 m_centroid
public final Vec2[] m_vertices
public final Vec2[] m_normals
public int m_count
Constructor Detail |
---|
public PolygonShape()
Method Detail |
---|
public final Shape clone()
clone
in class Shape
public final void set(Vec2[] vertices, int count)
public final void set(Vec2[] verts, int num, Vec2Array vecPool, IntArray intPool)
public final void setAsBox(float hx, float hy)
hx
- the half-width.hy
- the half-height.public final void setAsBox(float hx, float hy, Vec2 center, float angle)
hx
- the half-width.hy
- the half-height.center
- the center of the box in local coordinates.angle
- the rotation of the box in local coordinates.public int getChildCount()
Shape
getChildCount
in class Shape
public final boolean testPoint(Transform xf, Vec2 p)
Shape
testPoint
in class Shape
xf
- the shape world transform.p
- a point in world coordinates.public final void computeAABB(AABB aabb, Transform xf, int childIndex)
Shape
computeAABB
in class Shape
public final int getVertexCount()
public final Vec2 getVertex(int index)
index
-
public final boolean raycast(RayCastOutput output, RayCastInput input, Transform xf, int childIndex)
Shape
raycast
in class Shape
public final void computeCentroidToOut(Vec2[] vs, int count, Vec2 out)
public void computeMass(MassData massData, float density)
Shape
computeMass
in class Shape
massData
- returns the mass data for this shape.density
- the density in kilograms per meter squared.public boolean validate()
public Vec2[] getVertices()
public Vec2[] getNormals()
public Vec2 centroid(Transform xf)
public Vec2 centroidToOut(Transform xf, Vec2 out)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |