rust-3d 0.27.0

2D/3D library written in rust
Documentation
octree for voxel image
kdtree for 2d or generic
quadtree

implement FooAssign where possible

IsScalable impl missing for LineSegment (and others?)

ensure as many traits as possible implemented

more filter shapes

some Hash impls might lose precision

many more distance functions

rename either the half edge or IsSearchableMesh methods, so the names match

remove all files from src/ toplevel and add only use sub folder

basic math shapes (circle, sphere etc.)
filters could then have e.g. a circle instead of position & radius

drop conn etc. once all operators work

remove / change IsTree trait

search for "///@todo" and remove, since this displays within the docs

add categories to cargo file

some algorithms (e.g. bezier) can be ported to 3d, maybe write them directly generic over the dimension

Mul and Add types where possible (Add for Matrix / Mul and Add for others

filter_and_test sometimes fails

distance methods for ray line line segment

similar to distances, add intersections

implement all operators for vec / pt etc. for both directions Mul<f64> for Foo , Mul<Foo> for f64

maybe more trim().split() usages required

support more ply formats or properly throw on error

one of the filter tests managed to fail (possibly race condition within the test files)

mark functions and traits as tested/untested?

currently all meshes are tri meshes, maybe rename later (at least once quad mesh was added)

searchable mesh currently only defined for tri mesh. consider making this generic / rename it
same for HalfEdge (likely that the specific version can be optimized better)

write mesh/PC file type converter program once many IO methods are implemented?

add more combinator filters to the random accessible filters

consider removing the new() from is buildable nd

trait for type with one or many normals (normal() or normal(id))

make the tests folder of the exact same structure and file names as src,
this way it becomes very easy to ensure everything is tested

many tests are missing

make kd-tree n-dimensional   (maybe the octree as well, but might be easier to implement quadtree)

filters should be directed (this could be dropped and a TransFormed wrapper applied [which inverse transformes incoming points first])

for impls and structs only require as few traits as possible

drop the distances files, once the DistanceTo traits are implemented

write tutorial / examples / example program

search values of the trees (e.g. in_sphere) should require a Positive

within the README create a small summary (currently one has to check out the entire docs, which is also not good)

try to avoid dynamic traits

make trees referencing via ids
also consider writing wrapper types which e.g. take a PC and parse the tree internally
this way, the tree and pc can never get async

should be possible to generalize the OutlierFilter to nd

outlier removal (filter which holds a kdtree of the reference structure, calc median / medium distance to k-nearest
neighbours remove which are further than x, furthest x percent further than x times
median / average dist...   could take either kdtree or iterator or random access
and be destructible to kdtree)

segmantation detection

IO methods for PC and mesh for all general file formats

octree is missing many query methods
(also implement quad tree once these are implemented)

better tags for the crate (search related ones to find them)

write as generic as possible helpers for operators and call these in the concrete types

3d version of AABBTree

new types such as AABBTree missing docs

douglas peucker 3D version (or generic?) also consider rewriting it to not require PC as type
proper docs / cleanup of douglas peucker

implement IsMatrix4Transformable and 3 for more types

avoid allocations (return of Vec)

trait Colorized? or somehow offer the option to add colors to a type instead of carrying the colors extra

reserve methods for more types or even traits

more helper methods for bounding boxes