So, my project timeline started in the first week of December. The total time required for this project is 4 months. That's a month in December and then February to May (1st week of May is the submission).
"Analysis, Effective implementation and Applications of NURBS in CAD"
The month of January was dedicated to completing my university course work for the final semester, leaving the next three months (Starting from the 1st week of Feb), for project development. Instead of doing just a coding project, I thought I'll expand the scope of my project to also front-end analysis using CAD softwares. I used the entire of December to do the analysis part of the project. In this time period, I studied the applications and features of NURBS in different CAD softwares (Open source and Proprietary). Analysis would mean how effectively an algorithm is implemented in different softwares. Though I've made some progress in that part of my project, I'm still not very convinced as to how I can compare different implementations of the concept of NURBS. I have a few questions regarding this:
1. Which are the CAD softwares that I should compare for the best implemented models?
[...SNIP...]
I'm going to skip a lot of questions from your e-mail because they're more a brain dump than anything. Many of your questions depend on the answers to other questions or are completely off-base. You're all over the place, lacking specific goals, and up against a very specific deadline. So focusing on your coding questions, below are some of the more directed questions.
As far as the project idea is concerned, I thought I could pursue the project of converting basic implicit models to NURBS format. I found this project on the following link:
That project will probably take a minimum of a month full-time effort to complete plus another week for overhead and learning time, so you should plan accordingly. Given you only have 9 or 10 weeks remaining, you will need to start immediately if you intend to finish within 9-10 months. With the other analysis work you were proposing, I don't see that happening..
They are one in the same but at completely opposite ends of the skill and production spectrum. The TODO page assumes rather heavy familiarity with BRL-CAD's implementation and is a rough estimate of the time required to get a proof-of-concept implemented. The Implicit_to_NURBS_conversion wiki page is the "real deal" and more appropriate for your project. You should expect it to take a month minimum to implement plus another month for overhead discussions, learning, documentation, testing, etc, spread throughout.
And I had a doubt about the CSG/BREP functionality in BRL-CAD. So is NURBS implemented only using BREP or also CSG? (I could understand that since NURBS is a surface representation format, that BREP would be more apt). But, is it possible to implement NURBS using CSG?
That question doesn't make much sense.
BREP just means boundary representation. CSG are combinatorial operators on geometry. BREP can technically imply triangulated mesh, polygonal mesh, or spline-surfaces (such as NURBS or Bspline patches). NURBS is the more common BREP form for CAD systems, so that is the focus of our spline-surface boundary representation implementation. CSG operators are _traditionally_ applied to implicit geometry BUT you can also apply them to NURBS or mesh BREP geometry as well.
The task you found involves converting geometry that is in non-BREP (i.e., probably implicit) form (with CSG operators) into BREP (i.e., NURBS) form (with CSG operators).
My aim is to try and work on some smaller NURBS projects on the TODO page before getting into converting implicit primitives. This could help me in understanding NURBS better and would also give me more experience with it. Some suggestions for smaller projects would be of great help!
You don't have time for that. ;)
Implicit-to-NURBS or NURBS tessellation is about as simple as it gets and either (but not both) are viable coding projects. Moreover, the time estimates on the NURBS_TODO page would be in units of weeks, not days, for someone getting started (so 2 days becomes 2 weeks minimum).
So, by conversion of implicit models, does it mean that I need to convert all the primitives listed on this page:to NURBS representations? How many of those are already converted to NURBS?
Most are already converted, but only as a C API function. There needs to be a command that walks a hierarchy, converts the geometry to NURBS, then writes a new hierarchy. Maybe call the command "brepify".
Finally, Is this a time intensive project? Would I be able to complete it before the first week of May?
You have time but only if you focus on getting familiar with the code NOW and stop fiddling with comparisons and research. If you do that, you should be able to finish comfortably with time available to document your progress and perform ray trace visualization comparisons.
I am very excited to work on this project and would love support from you guys. Again, I apologize for the lack of communication and the overload of questions on one single email. A continuous and sustained relationship is important for productivity, I promise to be more active on the mailing lists and IRC.
Cheers!
Sean
------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________ BRL-CAD Developer mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/brlcad-devel
