Name: Anonymous 2013-01-22 6:19
Is there an octree package for Common Lisp? I.e. something that would allow setting voxel on/off and then do A-star on resulting big cubes.
m:genOctNeibFn N V = \<R E = $V:(`,` E $N) = Q: Get E = Ns: o Q,1,phash:Q
= en:<Qs L F // edge neibs
= 0,<N = {N≥≥L = w r ø}
= Q: F N | Get = [S O:$\[$@(q X Y Z | cng N \_)] L]:Q = H:O,phash
= {hget H Ns; rectsIsect [$@(q X Y Z | del N) L L] R = hset H Q Ns = [Q@!Qs]}
= r N+Q,2>
= Qs>
= l Q | <[[S O:$\[$@(q X Y Z | cng N \_)] L]:Q @Qs]
$@(= [X Y]: q X Y Z | del N = q (`+`N `+`L) (`+`N `-`1) (`+`L `+`N) (`-`1 `+`N)
| m:[A B C D] \(= en !Qs L <N=[$@(ins N V [[A X B] [C Y D]])]>) | j)
= r Qs>
= Ns | m ?,1>