This repository has been archived by the owner on Dec 5, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
package.lisp
78 lines (72 loc) · 1.49 KB
/
package.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
(defpackage :cl-lsystem
(:use :cl :gutils :iterate :alexandria :cl-arrows)
(:shadow
eval ; cl
position ; cl (turtle slot)
space ; cl (turtle3D)
function ; cl (rule)
rotate ; alexandria (instruction)
save) ; gutils
(:export
;; utils.lisp
with-disjoint-outcomes
deg->rad
;; lsystem.lisp
parametrized-letter
parametrized-word
rule name function instruction
lsystem axiom rules
set-rule
iter-lsystem
*lsystem*
define-lsystem
define-rule
parametric-word
instruction-constructor
;; instruction.lisp
instruction
singleton-instruction
noop
jump
forward
rotate
roll
pitch
yaw
stack
unstack
begin-fill
end-fill
apply-material
pop-material
lisp
;; env.lisp
turtle position
turtle2d direction
turtle3d space
head left up
with-3d-turtle-space
space-unit
environment
2d-environment
3d-environment branch-radius branch-decay fill-stack
save
with-updated-turtle
update-turtle
png-environment
eval-in-graphics-state
face
obj-environment vertices lines faces-root faces-stack edges-per-branch
obj-face-tree make-obj-face-tree oft-group-name oft-material oft-faces oft-subgroups
obj-material diffuse
define-material
add-vertice
add-face
add-subgroup
pop-face-stack
;; eval.lisp
;; endpoints
process))
(defpackage :cl-lsystem/scripting
(:use :cl :cl-lsystem :gutils)
(:shadowing-import-from :cl-lsystem function position space save))