opencax / GSoC

Google Summer of Code Projects
30 stars 14 forks source link

NURBS Editing Support in BRL-CAD #32

Open drossberg opened 3 years ago

drossberg commented 3 years ago

Outline

Implement the prerequisites for NURBS editing in BRL-CAD's GUIs

Details

BRL-CAD has support for raytracing of NURBS surfaces implemented, but they are handed over as BLOBs to the openNURBS library. Beyond basic operations such as rotation and translation, the BRL-CAD core has no ability to edit them. This project would implement support for editing NURBS curves and surfaces in the BRL-CAD core, thus creating the prerequisites to handle them with higher level (i.e. GUI) tools.

See this task's description in former GSoCs for some more information: https://brlcad.org/wiki/NURBS_Editing_Support

The key-feature would be to have ged command(s) that lets you build NURBS objects from scratch. This could be done by having a declarative ASCII description of these entities and/or wrapping the openNURBS library by a scripting language.

Describe in your proposal which approach you want to use and why. You may let inspire you by solutions in other programs:

Expected Outcome

Implementing the necessary logic for NURBS handling in librt, libbrep, and libged

Future Possibilities

Implementing a visual NURBS editor in a BRL-CAD GUI (mged, Archer, Arbalest)

Project Properties

Skills

Difficulty

medium

Size

long (350h)

Additional Information

ayushgupta9906 commented 3 months ago

I want to work on this issue. Please Assign this to me. Thanks