imagej / imagej-ops

ImageJ Ops: "Write once, run anywhere" image processing
https://imagej.net/libs/imagej-ops
BSD 2-Clause "Simplified" License
88 stars 42 forks source link

Generalize DefaultConvexHull3D to use points/vertices instead of meshes #607

Closed kephale closed 5 years ago

kephale commented 5 years ago

It is often useful to create a convex hull from a collection of points when no edge information is available, e.g., point clouds. DefaultConvexHull3D takes a Mesh as input, which is more specific than a collection of points/vertices because it includes edge/facet information. However, the methods in DefaultConvexHull3D do not seem to utilize triangle information (except for storing associations that are computed during convex hull calculation). It would be preferable if DefaultConvexHull3D could take something like Set<RealLocalizable> or List<RealLocalizable> as input, or maybe RealPoint.

kephale commented 5 years ago

This is still potentially a reasonable point, but I had missed the test that handles this: https://github.com/imagej/imagej-ops/blob/master/src/test/java/net/imagej/ops/geom/QuickHull3DTest.java#L61