by ACWraith
Split and merge planes of integer dimensions. [More]
To download this library for your Linux/Mac installation, enter this on your command line:

DreamDownload byond://ACWraith.BSPDD##version=9

Emulator users, in the BYOND pager go to File | Open Location and enter this URL:


Version 9
Date added: Feb 14 2012
Last updated: Mar 19 2012
1 fan
This library offers a datum to iteratively divide a plane horizontally and vertically until sections are small enough to deal with. This process can be completed manually or with procs for random selection. Merging sections back together is also possible.

This is a limited form of Binary Space Partitioning. Limits include:
  • All partitions are rectangles.
  • All coordinates are based on positive integers. (Similar to /atom locs.)

Differences from my obsolete BSP 2D library include:
  • Active maintenance, bug fixes and performance improvements.
  • More useful group splitting options.
  • The option of horizontal and/or vertical edge wrapping.
  • The ability to toggle corner neighbors with a single proc instead of setting a parameter in every related call.
  • Many more coordinate detection options.