Difference between revisions of "User:Sharan.nyn/GSoC18/Log"
From BRL-CAD
Sharan.nyn (talk | contribs) (→Week 3) |
Sharan.nyn (talk | contribs) (→Week 3) |
||
Line 75: | Line 75: | ||
* 28/05/18 | * 28/05/18 | ||
** Couldn't code in the morning hours. My cousin brother came and played games on my PC all day! | ** Couldn't code in the morning hours. My cousin brother came and played games on my PC all day! | ||
+ | ** Added getting objects from view feature to ged_check_overlaps | ||
+ | ** Tested rtcheck executable for matflag inputs. | ||
+ | * 29/05/18 | ||
+ | ** Trying my best to get the display of overlaps working for ged_check_overlaps. |
Revision as of 10:40, 29 May 2018
Development Logs
Community Bonding Period
Due to my semester end exams (Apr 26 - May 17), my time spent during community bonding period was less but I still managed to do the following:
- Week 1
- Prepared a flowchart to understand how the execution of the rtcheck program works : rtcheck_flow
- Was introduced to 'gdb' which helped me a lot to analyze the flow.
- Understood how the front-end portions of rt and back-end portions are connected by linking the view*.c files
- Week 2
- Read the documentation to understand the RTUIF API : https://brlcad.org/wiki/Developing_applications
- Understood the origins of libanalyze functions.
- Discussed some ideas on how to implement the libanalyze function, all were bad ideas because they all involved calling the rtcheck program using execvp() as they usually end with exit().
- Was suggested a basic plan on how to proceed.
- Understood how libanalyze functions were used by an example : libged/voxelize.c and libanalyze/voxels.c
- Week 3
- Complied a version of the rtcheck program by just copying the relevant files to libanalyze/overlaps/.
- Discussed the plan related to rtcheck in detail.
- Understood the concept of using contexts and callback functions.
- Tried out callback functions, implementing a basic callback function that alters an int.
Week 1
- 14/05/18
- trying to build a new rtcheck command by stripping down the non-necessary parts of the front-end, so that the code is easier to understand.
- discussed a lot of issues with mentor.
- 15/05/18
- started working on the design of the libanalyze function
- all parts of rt/main.c and do_ae() done
- 16/05/18
- added do_frame(), do_run() and grid_setup() to libanalyze.
- 17/05/18
- added worker() and do_pixel()
- used a worker_context to pass data to worker using the void pointer for bu_parallel
- when I ran the command I was getting segfault at rt_gettrees, thought I'd fix it next day
- 18/05/18
- figured out the problem but it meant moving a lot of content to libanalyze
- I did it anyway out of curiosity and it fixed the problem with rt_gettrees still it crashed at rt_shootray!
- At the end of the day after a lot of debugging and trials, found out that rt_shootray was calling the hit sequence of gqa :O, not sure why.
- A quick rename of the hit sequence of libanalyze to check_hit solved the problem.
- Still need to figure out how to call rt_gettrees without moving all function calls to libanalyze.
- 19/05/18
- Added code to fill the overlap list passed through callback data.
- Using `gedp->ged_wdbp->dbip` to get the db name instead of asking it before objects.
- 20/05/18
- Fixed printing of the overlap list.
Week 2
- 21/05/18
- Clean-up of the libanalyze function :
- Fixed a derp with setting default values of width and height in libanalyze instead of libged.
- Removed redundant header files.
- Read code for libged/gqa.c
- Prepare patch for the work done in first week.
- Clean-up of the libanalyze function :
- 22/05/18
- Submitted the patch:#488
- Did follow up and submitted v2.
- 23/05/18
- Didn't do much today : Read the checker.tcl file for understanding.
- 24/05/18
- Updated the patch and submitted v3.
- 25/05/18
- Discussed the plans for refactoring rtcheck.
- Started work on rtcheck.
- 26/05/18
- Added plot file output option.
- Fixed check_overlaps command not showing up in Archer.
- Submitted patch #491 fixing some minor issues with the accepted patch #488.
- 27/05/18
- Added old_way of processing stdin.
- Added command driven way of processing stdin.
- Have to test the changes, it compiles fine.
Week 3
- 28/05/18
- Couldn't code in the morning hours. My cousin brother came and played games on my PC all day!
- Added getting objects from view feature to ged_check_overlaps
- Tested rtcheck executable for matflag inputs.
- 29/05/18
- Trying my best to get the display of overlaps working for ged_check_overlaps.