Latest revision |
Your text |
Line 1: |
Line 1: |
| ==== Coding Log Report for GSoc 2013 ==== | | ==== Coding Log Report for GSoc 2013 ==== |
| Daily log: | | Daily log: |
− |
| |
− |
| |
− | === PROJECT SUMMARY ===
| |
− |
| |
− | This year's GSoC was my first and most exciting projects given the fact that I'm working on my first opensource project and contributing for my first time to a great software and organization like BRL-CAD.
| |
− |
| |
− | For the past three months I worked on implementing a pull routine which reversed the effects of a push on a CSG tree. This project focused on reversing the effects of the push command available in BRL-CAD and also pulling up and unpushed node. While following my implementation outline as described in my [http://brlcad.org/wiki/User:NyahCh3ck20/GSOC13/Design_Document Design Document], I kept modifying the plan as needed and tried updating my [http://brlcad.org/wiki/User:NyahCh3ck20/GSoc2013/Coding_Report logs] daily especially when I initially had no stable Internet access.
| |
− |
| |
− | Before the Mid-term Evaluations, I studied the push and xpush routines seeing how the matrices were pushed down the tree in respective commands and started implementing and finished implementing the pull_comb() routine which pulls the matrix transformations in a combination node. Submitted patches on sourceforge for review. I tested various parts of the routine and made sure routine works perfectly will continue testing and fixing bugs if any post GSoC to make sure command is complete. Also, I wrote tests for the poly.c routines and submitted patches on sourceforge; tested the bn_mat_inverse() routine implemented for BRL-CAD and proposed new routine which are still awaiting review by mentors.
| |
− |
| |
− | Post Mid-term evaluations, I studied the various primitives trying to figure out how to implement the pull_leaf() routine for each primitive which was later disproved by Sean as a bad design choice which led to my implementing of the pull_leaf() using the AABB's of primitives which enabled me to pull translation components successfully. I also developed the pull interface, wrote regression tests, created the man pages and other documentation which will integrate command fully into BRL-CAD.
| |
− |
| |
− | During Final Days and Post-GSoC I plan to finish implementing the pull_leaf routine which pulls both the scale and rotation components of primitives for BRL-CAD completing the pull routine and any other new projects as needed.
| |
− |
| |
− | This was one of the most exciting summers of my life.
| |
− |
| |
− | Cheers!
| |
− | Nyah
| |
| | | |
| === Test Results === | | === Test Results === |
Line 523: |
Line 505: |
| == Sept 02 - Sept 08 == | | == Sept 02 - Sept 08 == |
| | | |
− | Monday Sept 02
| |
− |
| |
− | *Started looking at the other primitives; left to complete the pull_leaf() routine. Saw many complications with many primitives. Will need the Assistance of Sean in extracting the matrix transformations from them.
| |
− |
| |
− |
| |
− | Tuesday Sept 03
| |
− |
| |
− | *Fixed bug in bn_poly_sub() unit test; uploaded code to [https://sourceforge.net/p/brlcad/patches/224/ sourceforge].
| |
− |
| |
− | *Succeeded in pulling the following primitives(TGC, REC, PARTICLE, EPA, EHY, HYP, ETO, EXTRUDE). Still left with about 26 primitives to be pulled in order to complete the pull_leaf() routine.
| |
− |
| |
− | Will need some directions on how to implement pull_leaf() since using switch case statements is not a good design choice.
| |
− |
| |
− | Thursday05 - Sunday 08
| |
− | *Took a break so as to recover from malaria.
| |
| | | |
| == Sept 09 - Sept 15 == | | == Sept 09 - Sept 15 == |
| | | |
− | Monday 09 October
| |
− |
| |
− | *Started looking at AABB bbox routines in BRL-CAD. Still to develop simple algorithm that automatically processes the translation from bbox return vectors to determine original translation.
| |
− |
| |
− | *Read some online wiki pages on AABB bounding box of objects.
| |
− | ToDO: To start writing routine and unit test tomorrow
| |
− |
| |
− |
| |
− | Tuesday 10 October
| |
− |
| |
− | *Started and finished writing tranlate routine which extracts and sets the translation component from the bounding box minimum and maximum points from the bounding box routine.
| |
− |
| |
− | *To integrate general bounding box calculating function for every primitive.
| |
− |
| |
− |
| |
− | Wednesday 11 October
| |
− |
| |
− | * Started testing pull_leaf routine using the rt_functab bbox routine and successfully pulled some translations assuming object's centrepoint was translated from the origin(0,0,0). But still waiting on Sean for some clarifications on the math.
| |
− |
| |
− | *To look at confirmation from sean and perfect the pull_leaf routine, completing the pull routine and running through valgrind.
| |
− |
| |
− |
| |
− | Thursday 12 October
| |
− |
| |
− | *Perfected math on moving bounding box and primitive to origin before extracting translation. But will start testing tomorrow.
| |
− |
| |
− |
| |
− |
| |
− | Friday 13 October
| |
− |
| |
− | *Successfully wrote the pull_leaf routine which pulled the translation components of the primitive.
| |
− |
| |
− | *Tested routine together with the pull_combination routines and successfully moved the matrices right up to the root of the tree. but still unclear with cases where the matrix transformations for the combinations is NAN.
| |
− |
| |
− | * Submitted [https://sourceforge.net/p/brlcad/patches/215/ patch] on sf and awaiting review before moving on to porting command to archer since i've not been granted commit access.
| |
| | | |
| == Sept 16 - Sept 22 == | | == Sept 16 - Sept 22 == |
| | | |
− | Monday Sept 16,
| |
− |
| |
− | *Started re-testing the pull routine starting from the pull_leaf which pulled correctly.
| |
− |
| |
− | *Discovered a bug with the pull_comb() routine which pulls matrices which are not symmetric;so will fix bug tomorrow.
| |
− |
| |
− | *Started stubbing pull to archer but had an error will try to fix problem tomorrow or post question on mailing list and see what comes up.
| |
− |
| |
− |
| |
− | Tuesday Sept 17
| |
− |
| |
− | *Continued testing the pull_leaf and realised NAN values were being pulled from the primitives which are to be set to zero in such cases.
| |
− |
| |
− | *Started fixing bug.
| |
− |
| |
− | Wednesday Sept 18
| |
− |
| |
− | * Continued fixing pull_leaf routine but realised pull_comb() routine pulled matrix transformations having NAN as values. to ask mentors about this problem if it persists.
| |
− |
| |
− | * Was in a meeting with the Vice Chancellor as Google Student Ambassador and explained my Vision for the University during my tenure.
| |
− |
| |
− | Thursday Sept 19
| |
− | * Started preparing for my upcoming exams next week; and had a meeting with the Public relations Officer of the University concerning my recent appointment as Google Student Ambassador and plans for the University community.
| |
− |
| |
− |
| |
− | Friday Sept 20
| |
− | * Attended the Interview at the University Media House( Chariot FM) where I explained my GSoC experience and current work as Google Student Ambassador.
| |
− |
| |
− | Saturday Sept 21
| |
− | *Wrote the Project summary and continued preparing for my exams next week.
| |
| | | |
| == Sept 23 - Sept 28 == | | == Sept 23 - Sept 28 == |
− |
| |
− | #Monday Sept 23
| |
− |
| |
− | Started looking at the BRL-CAD documentation spreadsheet posted by Harmanpreet and summarising all documents on the list. Requested for the script from Harmanpreet that automates the summary of the documents.
| |
− |
| |
− | @Will finish summarising documents tomorrow; since I have to prepare for some of my exams coming up from tomorrow.
| |