Physicstype body = {shape : Playground.shape;x : Playground.number;y : Playground.number;vx : Playground.number;vy : Playground.number;angle : Playground.number;spin : Playground.number;mass : Playground.number;bounciness : Playground.number;friction : Playground.number;upright : bool;ax : Playground.number;ay : Playground.number;}val body : Playground.shape -> bodyval at : Playground.number -> Playground.number -> body -> bodyval moving : Playground.number -> Playground.number -> body -> bodyval launched : Playground.number -> Playground.number -> body -> bodyval shot_from : Playground.number -> Playground.number -> body -> body -> bodyval pointing : Playground.number -> body -> bodyval heavy : Playground.number -> body -> bodyval bouncy : Playground.number -> body -> bodyval rough : Playground.number -> body -> bodyval fall : Playground.number -> body -> bodyval push : Playground.number -> Playground.number -> body -> bodyval thrust : Playground.number -> body -> bodyval slow : Playground.number -> body -> bodyval pulled_to :
Playground.number ->
Playground.number ->
Playground.number ->
body ->
bodyval turn : Playground.number -> body -> bodyval tick : Playground.numberval wrap : Playground.screen -> body -> bodyval bounce_in : Playground.screen -> Playground.number -> body -> bodyval bounce_all : ?broad_phase:Broadphase.method_ -> body list -> body listval broad_phase : Broadphase.method_ -> body list -> Broadphase.resultval debug : body -> Playground.shapeval simulate :
?gravity:Playground.number ->
?iterations:int ->
?warm_starting:bool ->
world ->
worldval pin :
?motor:(Playground.number * Playground.number) ->
int ->
int ->
at:(Playground.number * Playground.number) ->
world ->
worldval rod :
int ->
int ->
at_a:(Playground.number * Playground.number) ->
at_b:(Playground.number * Playground.number) ->
world ->
worldval rope :
?length:Playground.number ->
int ->
int ->
at_a:(Playground.number * Playground.number) ->
at_b:(Playground.number * Playground.number) ->
world ->
worldval pulley :
int ->
int ->
at_a:(Playground.number * Playground.number) ->
at_b:(Playground.number * Playground.number) ->
ground_a:(Playground.number * Playground.number) ->
ground_b:(Playground.number * Playground.number) ->
world ->
worldval set_motor :
int ->
(Playground.number * Playground.number) ->
world ->
worldval joint_length : int -> world -> Playground.numberval debug_joints : world -> Playground.shape listval draw : body -> Playground.shapeval distance : body -> body -> Playground.numberval speed : body -> Playground.numberval outside : Playground.screen -> body -> bool