CHANGES
=======

1.2.0
-----

* fix: should be greater than or equal to
* fix: incorrect starting location in intersection
* test: tighten acceptable bounds on sphere test
* test: check empty volumes
* test: check more negative normals
* fix: floating point error causing intersections to be missed
* fix: incorrect calculation of triangle area
* fix: contact should be evaluated after testing for within object
* docs: show how to use contact warning
* docs: add pypi badge
* test: check negative normals
* perf: no need to reserve 12 pts
* refactor: rename diagonal to plane\_size
* fix: plane was too small on odd size grids
* test: check odd size 5x5x1 to ensure plane is large enough
* perf: faster normal projection in intersection checks
* fix: import algorithm and string
* docs: show how to interpret the bitfield
* feat: change 2d contact to bitfield
* feat+test: change contact from bool to bitfield
* test: check if contact area works
* feat: contact warning (#4)
* perf: reduce evaluation cost of bounds check
* Revert "perf: ensure basis vectors always advance at least 1 unit"
* refactor: make ihat, jhat, khat global variables
* perf: ensure basis vectors always advance at least 1 unit
* refactor: mark pipes and pipe\_points as const
* perf: limit number of intersections tested

1.1.0
-----

* perf: speed up for axis aligned normals

1.0.0
-----

* ci: upgrade cibuildwheel
* perf: don't re-evaluate spots w/ < 3 pts
* perf: faster calculation of cross sectional area (#1)

0.2.0
-----

* build: add cc3d to build
* test: explicitly install connected-components-3d
* install: added cc3d to pyproject.toml
* test: rename automated\_tests.py to automated\_test.py
* test: remove py37 and add py312
* test: change test branch to main
* fix: get raw pointer
* refactor: use unique\_ptr for markup
* build: add github actions
* test: give smoothness a more reasonable foundation
* test: check sphere for reasonable area and smoothness over theta
* fix: exclude null vector normal vectors

0.1.0
-----

* build: add MANIFEST.in and pyproject.toml
* docs: update README
* install: adding setup.py
* test: check range of rotation is sensible
* test: add a few basic integrity tests for a voxel
* fix: ensure binimg is a fortran array
* chore: remove python implementation of 3d
* fix: add type guards
* fix: ensure anisotropy is a numpy array
* chore: spaces to tabs
* fix: some ccl floating point boundary errors
* fix: support anisotropy for 5 and 6 sided contacts
* fix: support 5 and 6 vertex contact situations
* feat: add support for 3d anisotropy
* feat: kinda working fast 3d implementation
* wip: c++ code compiles
* feat: add 3d cross section computation
* Initial commit
