> On Jan 20, 2021, at 4:29 AM, Daniel Roßberg <danielmrossb...@gmail.com> wrote: > > Hi, > > Yes, sure, but, let's stay with the creation of NURBS entities for the > moment. It is very unsatisfactory that this can only be done with he help of > external programs.
Yes, sorry for the distraction. In production, Rhino3D is typically used for NURBS, then imported via 3dm-g. I agree it’s not satisfactory and has never been intended to be the end-state, but is what’s currently a functional route. We’ve had this GSoC project idea for a number of years: https://brlcad.org/wiki/NURBS_Editing_Support <https://brlcad.org/wiki/NURBS_Editing_Support> That description is even less likely with the reduced time, but there is still potential with reduced scope — like curve editing plus capping only. > OpenVSP is a good reference. It's about Design Cockpit 43, a somehow similar > application (before somebody asks: I've never touched or even seen this > software, I try to help somebody who has the task to export the geometry to > BRL-CAD). DC43 is written in Java, and it was decided that it's the best to > write a text file which can be parsed with mged. This seems to work for > almost all primitives, beside twisted lofts. > The idea with the scripting resulted from laziness: I consider it as easier > to wrap the C++ by a scripting language than to invent an ASCII .3dm file > format. However, the final decision (scripting or ASCII 3DM, which scripting > language, swig yes or no) could be made part of the student's proposal. Despite the complexity of the structure, do think it would be very easy to create a ged command or otherwise simplified API that declaratively lets you build NURBS entities. Most of the libs out there use an approach similar to what we do for sketches. Here are some notable examples I know about: NURBS-Python: https://github.com/orbingol/NURBS-Python <https://github.com/orbingol/NURBS-Python> Blender: https://blender.stackexchange.com/questions/7020/create-nurbs-surface-with-python <https://blender.stackexchange.com/questions/7020/create-nurbs-surface-with-python> Web3D: https://www.web3d.org/x3d/content/examples/Basic/NURBS/ <https://www.web3d.org/x3d/content/examples/Basic/NURBS/> 3DSMax/Maya: https://help.autodesk.com/view/3DSMAX/2016/ENU/?guid=__files_GUID_75CD4DE9_8024_4E25_B147_0A0EC8B10031_htm <https://help.autodesk.com/view/3DSMAX/2016/ENU/?guid=__files_GUID_75CD4DE9_8024_4E25_B147_0A0EC8B10031_htm> Ayam: http://ayam.sourceforge.net/docsdraft/ayam-6.html <http://ayam.sourceforge.net/docsdraft/ayam-6.html> NURBS-Python, Blender, and Web3D are all like how we handle Sketch data, declarative low-level container filling. Maya does same using an OO approach. Ayam is basically LIBGED-style. Cheers! Sean
_______________________________________________ BRL-CAD Developer mailing list brlcad-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/brlcad-devel