Freedom-of-Form-Foundation / anatomy3d

A CAD tool for humanoid anatomy alterations. See the anatomy3d-blender repository for more recent work.
https://freedomofform.org/1856/3d-anatomy-project-scope-phase-1-focus-on-a-limb-joint/
GNU General Public License v2.0
7 stars 5 forks source link

Implement raytracing of surfaces deformed by a ContinuousMap #15

Closed Lathreas closed 3 years ago

Lathreas commented 3 years ago

For various features of the software, such as projecting a bone surface onto the surface of a joint object, we need some form of raytracing. Since all surfaces are defined as a smooth base geometry (which is implemented as a Surface) deformed by a heightmap (which is implemented as a ContinuousMap), we need to implement some form of raytracer that can query the distance between any point and an arbitrary surface.

AdamNorberg commented 3 years ago

Thought debris for the future: for now, Surface + ContinuousMap describes "a raytraceable thing", but if this starts to look more complicated than hoped, IRaytraceable might be useful to define as "something that can answer the questions a raytracer needs", with MappedSurface representing the specific Surface + ContinuousMap version.