Before diving into implementation of MGED, we considered it necessary to understand how MGED works. I have completed basic working as a user on MGED.
Creating shapes, regions, combinations and ray tracing constitute the modeling process. Also learnt how to perform different operations on various objects, namely union, intersection and subtraction. Assigned materials to objects, added internal components to objects, created redefined model for a special case. So now I have clear overview of the working in MGED as a user.
Two of the few models I made:
Next we will be diving into its code.
Continuing my task on Flex/Bison, I could not cope up much with it yet. I have linked the working of flex and bison files, but conversion between formats perplexes me. So much missing from my part.
After successfully compiling BRL-CAD against Qt, we are now exploring MGED. A Qt window for rendering has been implemented already. However, it is not embedded in its parent Tcl/Tk window. In order to be able to achieve this, we have started studying how to work on MGED. For the Qt window to be displayed in its parent, Qt will be replacing Tcl/Tk.
Another thing I am doing these days is working with flex and bison. I am assigned the task of conversion between two formats. I implemented minimal patterns needed and worked with flex file alone to comprehend the patterns defined. Then I proceeded to define my tokens in bison. I am onto one entity currently i.e. sphere. Defined my logic to convert attributes from ecad format to xcad format. How to use those variables? No ideas!
I decided to divide the entire task into smaller tasks to get the things clearer. File handling is implemented in bison and the corresponding actions in flex file yet!
Encountered some issues while raytracing in BRLCAD. Got it working after instructions from the ML.