What you link to is not a general geometric constraint solver. You can use the code of FreeCAD as a independent library: https://github.com/FreeCAD/FreeCAD/tree/master/src/Mod/Sketcher/App/planegcs (Shaper is using it too AFAIR). It is advanced, but it is not *that* complicated.
I think I'm hitting some limitations of the AIS module (or the documentation thereof - e.g. how do I display an edge with the orientation indicated).
Is it worthwhile to invest time into converting to OCCT+VTK? Are there any other alternatives that should be considered? I'm looking for some...
Looking at the sources I found this function:
const void Mesh :: GetSurfaceElementsOfFace (int facenr, Array<SurfaceElementIndex> & sei) const
it also looks that occgeom contains a facemap fmap. Full disclosure: I have not used those.
My very brief experience is stated here: https://github.com/CadQuery/cadquery/issues/367#issuecomment-651328681
TL;DR Netgen was able to generate a correct surface mesh for the issue case which was not possible with OCCT. Furthemore they have a pybind11 based python interface which is great (if...
If I remember correctly I used this paper to get some background: Geometric constraint satisfaction using optimization methods Computer-Aided Design 31 (1999) 867–879. In the end it is nothing spectacular - you construct a cost function that is a sum of individual constraint cost functions and...
It is not unthinkable, e.g. take a look here: https://github.com/CadQuery/cadquery/blob/96e3424338f32352edf9898e36951a3d60ed2002/cadquery/occ_impl/sketch_solver.py The actual numerical solver is from nlopt.
AFAICT PlaneGCS should be reasonably easy to use with pybind11 (i.e. no fancy stuff is...
In my limited experience (simple use cases) it worked fine. But I hear it can result in ill-behaved surfaces with too many points. That is the motivation behind my question.
I looked at the Plate_Plate code and I must say I've seen more readable things. At the very bottom they are solving some...
Regarding constrained surface filling, would you have some pointer on the theory? I found this:
Is similar approach used in OCCT?
Thanks! Regarding shape healing I have two specific interests:
(1) Fixing planar faces based on possibly incorrect wires/edges - how to do it in an optimal way/which fixes are strictly necessary?
(2) General shape diagnostics in the case of filed bool ops - where to get started in such a situation?