The quad-tree Reference Manual

This is the quad-tree Reference Manual, version 0.1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:40:38 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 quad-tree

An implementation of the quad tree data structure.

Author

Michael Fiano <>

Home Page

https://git.mfiano.net/mfiano/quad-tree

License

MIT

Version

0.1.0

Dependencies
  • mfiano-utils (system).
  • origin (system).
Source

quad-tree.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 quad-tree/quad-tree.asd

Source

quad-tree.asd.

Parent Component

quad-tree (system).

ASDF Systems

quad-tree.


3.1.2 quad-tree/package.lisp

Source

quad-tree.asd.

Parent Component

quad-tree (system).

Packages

quad-tree.


3.1.3 quad-tree/quad-tree.lisp

Dependency

package.lisp (file).

Source

quad-tree.asd.

Parent Component

quad-tree (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 quad-tree

Source

package.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Ordinary functions

Reader: boundary (instance)
Writer: (setf boundary) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

boundary.

Function: insert (tree point)
Package

quad-tree.

Source

quad-tree.lisp.

Function: make-boundary (center extents)
Package

quad-tree.

Source

quad-tree.lisp.

Function: make-tree (boundary &key max-depth max-capacity)
Package

quad-tree.

Source

quad-tree.lisp.

Function: query (tree boundary)
Package

quad-tree.

Source

quad-tree.lisp.


5.1.2 Standalone methods

Method: print-object ((tree tree) stream)
Source

quad-tree.lisp.


5.1.3 Structures

Structure: boundary
Package

quad-tree.

Source

quad-tree.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: center
Type

origin.vec2:vec

Initform

(origin.vec2:zero)

Readers

center.

Writers

(setf center).

Slot: extents
Type

origin.vec2:vec

Initform

(origin.vec2:zero)

Readers

extents.

Writers

(setf extents).

Structure: tree
Package

quad-tree.

Source

quad-tree.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: boundary
Readers

boundary.

Writers

(setf boundary).

Slot: max-capacity
Type

fixnum

Initform

0

Readers

max-capacity.

Writers

(setf max-capacity).

Slot: max-depth
Type

fixnum

Initform

0

Readers

max-depth.

Writers

(setf max-depth).

Slot: depth
Type

fixnum

Initform

0

Readers

depth.

Writers

(setf depth).

Slot: nw
Readers

nw.

Writers

(setf nw).

Slot: ne
Readers

ne.

Writers

(setf ne).

Slot: sw
Readers

sw.

Writers

(setf sw).

Slot: se
Readers

se.

Writers

(setf se).

Slot: points
Readers

points.

Writers

(setf points).


5.2 Internals


5.2.1 Ordinary functions

Function: %%make-tree (&key boundary max-capacity max-depth depth nw ne sw se points)
Package

quad-tree.

Source

quad-tree.lisp.

Function: %insert (tree point)
Package

quad-tree.

Source

quad-tree.lisp.

Function: %make-tree (boundary depth max-depth max-capacity)
Package

quad-tree.

Source

quad-tree.lisp.

Reader: center (instance)
Writer: (setf center) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

center.

Function: contains-point-p (boundary point)
Package

quad-tree.

Source

quad-tree.lisp.

Reader: depth (instance)
Writer: (setf depth) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

depth.

Reader: extents (instance)
Writer: (setf extents) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

extents.

Function: intersects-p (boundary-a boundary-b)
Package

quad-tree.

Source

quad-tree.lisp.

Reader: max-capacity (instance)
Writer: (setf max-capacity) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

max-capacity.

Reader: max-depth (instance)
Writer: (setf max-depth) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

max-depth.

Reader: ne (instance)
Writer: (setf ne) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

ne.

Reader: nw (instance)
Writer: (setf nw) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

nw.

Reader: points (instance)
Writer: (setf points) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

points.

Reader: se (instance)
Writer: (setf se) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

se.

Function: sub-divide (tree)
Package

quad-tree.

Source

quad-tree.lisp.

Function: sub-divided-p (tree)
Package

quad-tree.

Source

quad-tree.lisp.

Reader: sw (instance)
Writer: (setf sw) (instance)
Package

quad-tree.

Source

quad-tree.lisp.

Target Slot

sw.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
B   C   D   E   F   I   M   N   P   Q   S  
Index Entry  Section

%
%%make-tree: Private ordinary functions
%insert: Private ordinary functions
%make-tree: Private ordinary functions

(
(setf boundary): Public ordinary functions
(setf center): Private ordinary functions
(setf depth): Private ordinary functions
(setf extents): Private ordinary functions
(setf max-capacity): Private ordinary functions
(setf max-depth): Private ordinary functions
(setf ne): Private ordinary functions
(setf nw): Private ordinary functions
(setf points): Private ordinary functions
(setf se): Private ordinary functions
(setf sw): Private ordinary functions

B
boundary: Public ordinary functions

C
center: Private ordinary functions
contains-point-p: Private ordinary functions

D
depth: Private ordinary functions

E
extents: Private ordinary functions

F
Function, %%make-tree: Private ordinary functions
Function, %insert: Private ordinary functions
Function, %make-tree: Private ordinary functions
Function, (setf boundary): Public ordinary functions
Function, (setf center): Private ordinary functions
Function, (setf depth): Private ordinary functions
Function, (setf extents): Private ordinary functions
Function, (setf max-capacity): Private ordinary functions
Function, (setf max-depth): Private ordinary functions
Function, (setf ne): Private ordinary functions
Function, (setf nw): Private ordinary functions
Function, (setf points): Private ordinary functions
Function, (setf se): Private ordinary functions
Function, (setf sw): Private ordinary functions
Function, boundary: Public ordinary functions
Function, center: Private ordinary functions
Function, contains-point-p: Private ordinary functions
Function, depth: Private ordinary functions
Function, extents: Private ordinary functions
Function, insert: Public ordinary functions
Function, intersects-p: Private ordinary functions
Function, make-boundary: Public ordinary functions
Function, make-tree: Public ordinary functions
Function, max-capacity: Private ordinary functions
Function, max-depth: Private ordinary functions
Function, ne: Private ordinary functions
Function, nw: Private ordinary functions
Function, points: Private ordinary functions
Function, query: Public ordinary functions
Function, se: Private ordinary functions
Function, sub-divide: Private ordinary functions
Function, sub-divided-p: Private ordinary functions
Function, sw: Private ordinary functions

I
insert: Public ordinary functions
intersects-p: Private ordinary functions

M
make-boundary: Public ordinary functions
make-tree: Public ordinary functions
max-capacity: Private ordinary functions
max-depth: Private ordinary functions
Method, print-object: Public standalone methods

N
ne: Private ordinary functions
nw: Private ordinary functions

P
points: Private ordinary functions
print-object: Public standalone methods

Q
query: Public ordinary functions

S
se: Private ordinary functions
sub-divide: Private ordinary functions
sub-divided-p: Private ordinary functions
sw: Private ordinary functions