| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Functionality used by various modules and routines for initialization and change of global variables. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Synopsis | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Initialization | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Initilizes the Chipmunk library. This should be called once before using any functions of this library. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Basic data types | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

The floating point type used internally in Chipmunk. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

infinity may be used to create bodies with
an infinite mass.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Type synonym used to hint that the argument or result represents time. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Type synonym used to hint that the argument or result represents an angle in radians. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Global variables | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Chipmunk tries to maintein a very few number of global variables to allow multiple Physics.Hipmunk.Space.Spaces to be used simultaneously, however there are some. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Shape counter | |||||||||||||||||||||||||||||||||||||||||||||||||||||

The shape counter is a global counter used for creating unique hash identifiers to the shapes. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

However, be careful as you should not use shapes created
before a call to | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Contact persistence | |||||||||||||||||||||||||||||||||||||||||||||||||||||

This variable determines how long contacts should persist. It should be small as the cached contacts will only be close for a short time. (default is 3) | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Collision slop | |||||||||||||||||||||||||||||||||||||||||||||||||||||

The collision slop is the amount that shapes are allowed to penetrate. Setting this to zero will work just fine, but using a small positive amount will help prevent oscillating contacts. (default is 0.1) | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Bias coefficient | |||||||||||||||||||||||||||||||||||||||||||||||||||||

The amount of penetration to reduce in each step. Values should range from 0 to 1. Using large values will eliminate penetration in fewer steps, but can cause vibration. (default is 0.1) | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Joint bias coefficient | |||||||||||||||||||||||||||||||||||||||||||||||||||||

Similar to the bias coefficient, but for all joints. In the future, joints might have their own bias coefficient instead. (default is 0.1) | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Vectors | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Type synonym used to hint that the argument or result represents a position. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Constructs an unitary vector pointing to the given angle (in radians). | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

The length of a vector. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Normalizes the vector (i.e. divides it by its length). | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Scales the components of a vector by the same amount. | |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

toAngle v is the angle that v has
with the vector Vector 1 0 (modulo 2*pi).
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

v1 `dot` v2 computes the familiar dot operation.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

v1 `cross` v2 computes the familiar cross operation.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

perp v is a vector of same length as v but perpendicular
to v (i.e. toAngle (perp v) - toAngle v equals pi/2
modulo 2*pi).
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

v1 `project` v2 is the vector projection of v1 onto v2.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

v1 `rotate` v2 uses complex multiplication
to rotate (and scale) v1 by v2.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

| |||||||||||||||||||||||||||||||||||||||||||||||||||||

The inverse operation of rotate, such that
unrotate (rotate v1 v2) v2 equals v1.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||

Produced by Haddock version 2.3.0 |