> 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

Reply via email to