JuliaGeometry / GeometryBasics.jl

Basic Geometry Types
MIT License
164 stars 54 forks source link

Slicing from previous GeometryTypes #156

Open Wikunia opened 2 years ago

Wikunia commented 2 years ago

I'm interested in slicing meshes which seemed to exist in the discontinued GeometryTypes.jl see: https://github.com/JuliaGeometry/GeometryTypes.jl/blob/2ee24aa65c6adbbaccc1e8cc2c67668954c6af1b/src/meshes.jl#L266

Is there a reason why this function wasn't moved over to GeometryBasics i.e is there another package which I should use for this functionality?

sjkelly commented 2 years ago

There is likely not a reason it was not copied over. I doubt there were users of the function. I would prefer to copy the functionality into a new package or bring it here. This algorithm is not really useful on its own, and there needs some data structures on top to handle the decomposition efficiently.

SimonDanisch commented 2 years ago

I think we kind of agreed back then, that such functionality is better located in something like Meshing.jl, since GeometryBASIC should only contain the most basic operations and types.

sjkelly commented 2 years ago

I am removing both GeometryTypes and GeometryBasics from the next release of Meshing.jl since it is just a collection of generic algorithms and the high-level APIs break every couple of years. I guess it could live there if it doesn't need a concrete definition of Mesh.

Wikunia commented 2 years ago

Sounds good to me. On that matter is there some kind of general overview of how all these Julia geometry packages work together? It's currently a bit hard for me to know what to use for my use case.

sjkelly commented 2 years ago

There is a big mix of use cases and history over the years, so we now have (in chronological order) GeometricalPredicates, GeometryTypes, GeometryBasics, and Meshes as "base" libraries. There are also tons of libraries outside of this org that have their own base geometry workings. They should all interoperate fine, as most code in Julia. Most libraries support GeometryBasics in this org, with Meshes (AFAICT) taking a more monolithic CGAL-like approach. @SimonDanisch curious you thoughts on the Meshes and Makie in the future?