Reputation: 6149
My work is related to mesh generation and its processing. I create mesh with GMSH and read the output of GMSH with my own code. In my code I defined geometric shapes such as quadrilateral, tetrahedron, etc. I would like to use a computational geometry library which would define shapes and do all geometric operations such as intersection detection and binary tree, area calculation. I took a look at famous CGAL however, it offered only axis-aligned geometries (Bbox_2
and Iso_rectangular_2
in 2D) for quadrilateral in 2D and 3D Linear Geometry Kernel
. Rotating mesh is not a solution since the mesh does not need to be Cartesian but could be hybrid consisting of multiple shapes (triangle, quadrilateral). Does CGAL indeed offer non-axis-aligned quadrilaterals? Is CGAL the best option for my purpose?
Upvotes: 0
Views: 98
Reputation: 681
In CGAL, there is the Linear cell complex data structure [1] (based on combinatorial maps [2]) that can be used in order to represent a mesh while mixing different volumic elements.
However this data structure has (for now) not many operations and thus is not yet able to do intersections or area computation. But basic operations exist allowing to develop yourself these operations (but this is probably a long work).
[1] http://doc.cgal.org/latest/Linear_cell_complex/index.html
[2] http://doc.cgal.org/latest/Combinatorial_map/index.html
Upvotes: 1