Point inversion to surface (project point on surface)

Quaoar

Administrator
Staff member
This topic discusses different approaches to point projection on a surface (for curves, it's gonna be the same thing more or less). Projection can also be seen as the "inversion" problem when a point geometrically lies on a surface. We need a fast and reliable method of point inversion, and there are quite some state-of-the-art approaches I wanted to bring to the Google Summer of Code. Unfortunately, Google did not take Open CASCADE on board, and these ideas largely remained intact.

So, how to project a point onto a surface? I've been working on a small NURBS library where point inversion is done in a very straightforward way by Newton iterations. But that's not generic enough as it works for splines only. What OpenCascade provides is ShapeAnalysis package and also GeomAPI_ProjectPointOnCurve. My current feeling is that everything from ShapeAnalysis is not well-tested and should be kinda taken with care (if you cannot provide these things with intensive testing yourself, you'd better avoid them).

Additionally, as I mentioned above, there is a certain interest in developing efficient state-of-the-art approaches to point projection. Having a highly efficient method is appealing as it should unlock computationally expensive numerical fitting procedures, e.g., to fit a primitive with a point cloud. Therefore, I'd like to have this thread open here. Feel free to share your discoveries, experience, whatsoever, not even necessarily related to OpenCascade.
 
Top