## Generated by Codox

# Walkmap 0.1.0-SNAPSHOT

##### Released under the EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0

A Clojure library designed to assist in computing walkmaps for games.

## Installation

To install, add the following dependency to your project or build file:

    [journeyman-cc/walkmap "0.1.0-SNAPSHOT"]

## Topics

- Dali performance
- Introduction to walkmap

## Namespaces

### walkmap.edge

Essentially the specification for things we shall consider to be an edge. An edge is a line segment having just a start and an end, with no intervening nodes.

Public variables and functions:

- centre
- collinear2d?
- collinear?
- edge
- edge?
- intersection2d
- length
- minimaxd
- on2d?
- on?
- overlaps2d?
- parallel?
- unit-vector

### walkmap.id

The namespace within which the privileged keyword `:walkmap.id/id` is defined.

Public variables and functions:

- id

### walkmap.ocean

Deal with (specifically, at this stage, cull) ocean areas

Public variables and functions:

- *sea-level*
- cull-ocean-facets
- ocean?

### walkmap.path

Essentially the specification for things we shall consider to be path. Note that for these purposes `path` means any continuous linear feature, where such features specifically include watercourses.

Public variables and functions:

- check-path
- check-paths
- length
- path
- path->edges
- path?
- polygon->path

### walkmap.polygon

Essentially the specification for things we shall consider to be polygons.

Public variables and functions:

- centre
- check-polygon
- check-polygons
- check-triangle
- gradient
- polygon
- polygon?
- triangle-centre
- triangle?

### walkmap.read-svg

Utility functions for scalable vector graphics (SVG) into walkmap structures.

Public variables and functions:

- command-string->vertices
- match->vertex
- path-elt->path
- progeny
- read-svg
- upper-case?

### walkmap.routing

Finding optimal routes to traverse a map.

Public variables and functions:

### walkmap.stl

Utility functions dealing with stereolithography (STL) files. Not a stable API yet!

Public variables and functions:

- binary-stl
- binary-stl-to-ascii
- canonicalise
- decode-binary-stl
- facet
- stl->ascii
- stl?
- vect
- write-ascii-stl

### walkmap.superstructure

single indexing structure for walkmap objects

Public variables and functions:

- in-retrieve
- in-store-find-objects
- in-store-replace-with-keys
- index-vertex
- index-vertices
- retrieve
- search-vertices
- store
- vertex-index
- vertices

### walkmap.svg

Utility functions for writing stereolithography (STL) files (and possibly, later, other geometry files of interest to us) as scalable vector graphics (SVG).

Public variables and functions:

- *preferred-svg-render*
- binary-stl-file->svg
- dali-stl->svg
- hiccup-stl->svg
- stl->svg

### walkmap.tag

Code for tagging, untagging, and finding tags on objects. Note the use of the namespaced keyword, `:walkmap.tag/tags`, denoted in this file `::tags`. This is in an attempt to avoid name clashes with other uses of this key.

Public variables and functions:

- tag
- tagged?
- tags
- untag

### walkmap.utils

Miscellaneous utility functions.

Public variables and functions:

- =ish
- check-kind-type
- check-kind-type-seq
- deep-merge
- kind-type
- truncate

### walkmap.vertex

Essentially the specification for things we shall consider to be vertices.

Public variables and functions:

- canonicalise
- check-vertex
- check-vertices
- ensure2d
- ensure3d
- vertex
- vertex*
- vertex-key
- vertex=
- vertex?
- within-box?