-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathspace.lisp
58 lines (42 loc) · 1.47 KB
/
space.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
(in-package :cl-chipmunk)
(defun cp-space-new ()
(with-float-traps-masked
(%chip:cp-space-new)))
(defun cp-space-free (space)
(%chip:cp-space-free space))
(defun cp-space-get-gravity (space)
(with-returned-vect (ret)
(%chipmunk:cp-space-get-gravity ret space)))
(defun cp-space-set-gravity (space v)
(with-vect (g)
(lisp->cp-vect g v)
(%chip:cp-space-set-gravity space g))
space)
(defun cp-space-get-collision-slop (space)
(%chip:cp-space-get-collision-slop space))
(defun cp-space-set-collision-slop (space slop)
(%chip:cp-space-set-collision-slop
space
(df slop)))
(defun cp-space-get-iterations (space)
(%chip:cp-space-get-iterations space))
(defun cp-space-set-iterations (space iter)
(%chip:cp-space-set-iterations space iter))
(defun cp-space-get-static-body (space)
(%chip:cp-space-get-static-body space))
(defun cp-space-get-collision-bias (cspace)
(%chip:cp-space-get-collision-bias cspace))
(defun cp-space-set-collision-bias (cspace bias)
(%chip:cp-space-set-collision-bias cspace
(df bias)))
(defun cp-space-get-damping (cspace)
(%chip:cp-space-get-damping cspace))
(defun cp-space-set-damping (cspace bias)
(%chip:cp-space-set-damping cspace
(df bias)))
(defun cp-space-add-shape (space shape)
(%chip:cp-space-add-shape space shape))
(defun cp-space-add-body (space body)
(%chip:cp-space-add-body space body))
(defun cp-space-step (space time)
(%chip:cp-space-step space (df time)))