User:Harman052/GSoc2013/Logs

From BRL-CAD

Proposal Link: http://brlcad.org/wiki/User:Harman052

Daily Progress

Week 1

June 17 2013

I go through the project flow, checked milestones and time period to do specific tasks. I mentioned various JavaScript libraries in the proposal so was trying to sort out which I should start with. I compared them with each other but later on with some Internet searches, it was found that webGL is not fully supported on all devices and browsers. I already compared webGL and HTML5 during proposal submission but now it is confirmed that I will go with HTML5 canvas for this project. Also learned about its various capabilities and features.

June 18 2013

Tried tutorials of HTML5 to build base for the project implementation.

June 19 2013

I decided to submit a patch and selected a feature request of directing the mged output to journal file. Currently, only user inputs can be written in it. I tried by searching for files that I need to edit but failed. I was searching for bu_log_add_hook() that doesn't pointed me to files that I could start with. Later I got useful and detailed hints from IRC to look into src/mged. I will look into it.

Also discussed about project scope with Sean.

June 20 2013

Conclusion of discussion was that many aspects of project are still unclear to developers. Although it was very painful to know that developers have doubts about my proposal but anyway I started with visualization. Different steps can be visualized as 2D HTML5 entities. The results of intersection can be visualized as not displaying the non-overlapping part as soon as user clicks on 'Intersect' button using javascript's "onclick" event handler. But mathematical visualization will not there.

June 21 2013

Searched for solutions for unclear aspects of project. Searched about wireframes, why wireframes are used? It is just because they are fast to calculate but didn't find any anything useful specific to BRL-CAD for reply.

June 22 2013

I searched and collected lot of information that can be very useful for BRL-CAD. I am compiling it now, and as it completed, will share with developers.

June 23 2013

Found more useful information. Will share on mailing list, once summarized. Took break.

June 24 2013

Worked on patch. Studied the f_journal function, its various components. Some doubts are still not cleared. Will try to finish by tomorrow.

June 25 2013

  • Prepared a detailed email and sent to mailing list about what I found for Sean's questions. Expecting new directions.
  • Designed basic layout of interface.

June 26 2013

  • As told by mentor, I studied WebGL and tried WebGL demos. I would use mixture of HTML5 and WebGL.

June 27 2013

  • As suggested by Charlie Stirk, I reviewed http://shapesmith.net/. I tried it by downloading and installing locally. 3D objects can be easily created and edited. Moreover, it can produce josm files than can be easily parsed and used to make script of MGED commands. It will be wonderful if we use its interface.
  • Got reply from Sean, suggesting to shift from making geometry editor to geometry viewer.

June 28 2013

I was suggested to focus on making online geometry viewer. I just posted on dev-mailing list whatever I did in this context.

June 29 2013

  • Used facetize command to convert implicit primitives into bot format. However it failed to run on brep objects.
  • Searched for web technology that could support NURBS geometry directly.
  • Posted details about today's progress on mailing list.

June 30 2013

  • Explored source files to fix the facetize command. I found code for facetize command in two files, one in src/libged/facetize.c and other in src/libged/wdb_obj.c. Currently facetize.c is working.