Namespace Tizen.NUI.Physics2D.Chipmunk
Classes
Body
Mass and moment are ignored when BodyType is Kinematic or Static. Guessing the mass for a body is usually fine, but guessing a moment of inertia can lead to a very poor simulation. It’s recommended to use Chipmunk’s moment-calculating functions to estimate the moment for you.
Box
A retangular shape shape
Circle
A circle shape defined by a radius This is the fastest and simplest collision shape
CollisionHandler
A collision handler is a set of 4 function callbacks for the different collision events that Chipmunk recognizes. Collision callbacks are closely associated with Arbiter objects. You should familiarize yourself with those as well. Note #1: Shapes tagged as sensors (Sensor == true) never generate collisions that get processed, so collisions between sensor shapes and other shapes will never call the post_solve() callback. They still generate begin() and separate() callbacks, and the pre_solve() callback is also called every frame even though there is no collision response. Note #2: pre_solve() callbacks are called before the sleeping algorithm runs. If an object falls asleep, its post_solve() callback won’t be called until it’s re-awoken.
Constraint
Base class of all constraints. You usually don’t want to create instances of this class directly, but instead use one of the specific constraints such as the PinJoint.
ContactPoint
Contains information about a contact point. PointA and PointB are the contact positions on the surface of each shape. Distance is the penetration distance of the two, which is a negative value. This value is calculated as dot(point2 - point1), normal) and is ignored when you set the ContactPointSet.
ContactPointSet
Contact point sets make getting contact information simpler. There can be at most 2 contact points.
DampedRotarySpring
DampedRotarySpring works like DampedSpring, but in an angular fashion.
DampedSpring
DampedSpring is a damped spring. The spring allows you to define the rest length, stiffness and damping.
DebugDrawColors
Default DebugColors for ShapeOutline, Constraint and CollisionPoint
GearJoint
GearJoint keeps the angular velocity ratio of a pair of bodies constant.
GrooveJoint
GrooveJoint is similar to a PivotJoint, but with a linear slide. One of the anchor points is a line segment that the pivot can slide on instead of being fixed.
HastySpace
Similar to Space, but with ARM NEON optimizations in the solver.
MarchData
March data used for Tizen.NUI.Physics2D.Chipmunk.AutoGeometry.
PinJoint
PinJoint links shapes with a solid bar or pin. Keeps the anchor points at a set distance from one another.
PivotJoint
PivotJoint acts like a swivel, allowing two objects to pivot about a single point.
PointQueryInfo
PointQueryInfo holds the result of a point query made on a Shape or Space.
Polygon
A polygon shape composed of connected vertices.
RatchetJoint
RatchetJoint is a rotary ratchet, which works like a socket wrench.
RotaryLimitJoint
RotaryLimitJoint constrains the relative rotations of two bodies.
Segment
A line segment shape between two points, which is mainly useful when it behaves statically, though it can be beveled to give it thickness.
SegmentQueryInfo
Segment queries return where a shape was hit and its surface normal at the point of contact. Use Shape == null to test if a shape was hit. Segment queries are like ray casting, but because not all spatial indexes allow processing infinitely long ray queries, it's limited to segments. In practice, this is still very fast and you don’t need to worry too much about the performance as long as you aren’t using extremely long segments for your queries.
Shape
Abstract Chipmunk Shape
SimpleMotor
SimpleMotor keeps the relative angular velocity constant.
SlideJoint
SlideJoint is like a PinJoint, but with a minimum and maximum distance. A chain could be modeled using this joint. It keeps the anchor points from getting too far apart, but will allow them to get closer together.
Space
Spaces in Chipmunk are the basic unit of simulation. You add rigid bodies, shapes, and constraints to the space and then step them all forward through time together.
SpaceRef
Weak reference to a Space. Gives access to the Native cpSpace API without enforcing ownership of the space (which may instead be owned by the rendering library)
Structs
Arbiter
The Arbiter object encapsulates a pair of colliding shapes and all of the data about their collision.
BoundingBox
Chipmunk's axis-aligned 2D bounding box type.
DebugColor
RGBA channels as floats used to represent the color for debug drawing.
ShapeFilter
Fast collision filtering type that is used to determine if two objects collide before calling collision or query callbacks.
Transform
Type used for 2x3 affine transforms. See wikipedia for details: http://en.wikipedia.org/wiki/Affine_transformation. The properties map to the matrix in this way: [[a c tx], [b d ty]]. We can't use System.Numerics.Matrix32 since it does't use doubles.
Vect
2D Vector struct
Interfaces
IDebugDraw
Interface to draw debug primitives (circle, point, segment).
Enums
BodyType
Chipmunk supports three different types of bodies with unique behavioral and performance characteristics.
DebugDrawFlags
Flags to enable or disable DebugDrawing.