Editing User:Izak/GSOC 2013 logs
From BRL-CAD
User account "Izak" is not registered. Please check if you want to create/edit this page.
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 63: | Line 63: | ||
==From June 24th to June 29th== | ==From June 24th to June 29th== | ||
− | June 24 | + | ==June 24== |
* Re-read the Patch submission guidelines in the HACKING file . | * Re-read the Patch submission guidelines in the HACKING file . | ||
Line 69: | Line 69: | ||
* Read the research paper titled "Volumetric shape description using the blobby model" which was used to implement the metaball primitive ( by the second method). Since the above method is used with two sphere primitives to create a metaball , I am considering using this same method alongside two spheres ( for the heart lobes ) and an elliptical parabola - epa (for the lower portion of the heart ). Need to verify the correctness of this design approach on the mailing list. | * Read the research paper titled "Volumetric shape description using the blobby model" which was used to implement the metaball primitive ( by the second method). Since the above method is used with two sphere primitives to create a metaball , I am considering using this same method alongside two spheres ( for the heart lobes ) and an elliptical parabola - epa (for the lower portion of the heart ). Need to verify the correctness of this design approach on the mailing list. | ||
− | June 25 | + | ==June 25== |
* Studying the ray tracing geometry header ( rtgeom.h ) to write the heart primitive's internal representation (struct rt_hrt_internal) . | * Studying the ray tracing geometry header ( rtgeom.h ) to write the heart primitive's internal representation (struct rt_hrt_internal) . | ||
Line 79: | Line 79: | ||
* Currently writing the struct rt_hrt_internal structure which I have kept [https://sourceforge.net/p/brlcad/patches/204/ here] .Also wrote the RT_HRT_CK_MAGIC(_p) macro in rtgeom.h for the heart . | * Currently writing the struct rt_hrt_internal structure which I have kept [https://sourceforge.net/p/brlcad/patches/204/ here] .Also wrote the RT_HRT_CK_MAGIC(_p) macro in rtgeom.h for the heart . | ||
− | June 26 | + | |
+ | ==June 26== | ||
* Finished Modifying the magic header file [https://sourceforge.net/p/brlcad/patches/203/ here] which I earlier on submitted . | * Finished Modifying the magic header file [https://sourceforge.net/p/brlcad/patches/203/ here] which I earlier on submitted . | ||
Line 91: | Line 92: | ||
* Editing the table.c file in src/librt/primitives .Declared a raytrace interface for the heart by RT_DECLARE_INTERFACE(hrt) . Edited the rt_functab[] array by providing an entry ID_HRT for the heart primitive. That is, add RT_FUNCTAB_MAGIC, "ID_HRT", "hrt",rt_hrt_*, just to name a few. You are welcome to look at my [https://sourceforge.net/p/brlcad/patches/205/ progress]. | * Editing the table.c file in src/librt/primitives .Declared a raytrace interface for the heart by RT_DECLARE_INTERFACE(hrt) . Edited the rt_functab[] array by providing an entry ID_HRT for the heart primitive. That is, add RT_FUNCTAB_MAGIC, "ID_HRT", "hrt",rt_hrt_*, just to name a few. You are welcome to look at my [https://sourceforge.net/p/brlcad/patches/205/ progress]. | ||
− | June 27 | + | ==June 27== |
* Early in the morning I Left Buea, my home town to collect Google's welcome package in Douala. Collected some cash from the available ATM . Negotiating for Internet access and cool coding environment.Really tired. | * Early in the morning I Left Buea, my home town to collect Google's welcome package in Douala. Collected some cash from the available ATM . Negotiating for Internet access and cool coding environment.Really tired. | ||
− | June 28 | + | ==June 28== |
* Corrected and submitted the db5 header [https://sourceforge.net/p/brlcad/patches/191/ ( See db5.patch )] based on guidelines given by mentors. | * Corrected and submitted the db5 header [https://sourceforge.net/p/brlcad/patches/191/ ( See db5.patch )] based on guidelines given by mentors. | ||
Line 103: | Line 104: | ||
* Corrected and submitted the magic header [https://sourceforge.net/p/brlcad/patches/203/ ( See newest_magic.patch )] based on guidelines given by mentors. Still to correct the magic.c file to make these changes complete. | * Corrected and submitted the magic header [https://sourceforge.net/p/brlcad/patches/203/ ( See newest_magic.patch )] based on guidelines given by mentors. Still to correct the magic.c file to make these changes complete. | ||
− | June 29 | + | ==June 29== |
* Editing the magic.c file to accommodate the heart primitive. Uploaded the [https://sourceforge.net/p/brlcad/patches/203/?page=1 patch here]. | * Editing the magic.c file to accommodate the heart primitive. Uploaded the [https://sourceforge.net/p/brlcad/patches/203/?page=1 patch here]. | ||
Line 111: | Line 112: | ||
==From July 1st to July 6th== | ==From July 1st to July 6th== | ||
− | July 1 | + | ==July 1== |
* Working on struct rt_hrt_internal inorder to include the heart primitive into the include/rtgeom.h header. Reading wikipedia and Wolfram pages on heart symbol,Level set,cusps and epicycloids. | * Working on struct rt_hrt_internal inorder to include the heart primitive into the include/rtgeom.h header. Reading wikipedia and Wolfram pages on heart symbol,Level set,cusps and epicycloids. | ||
Line 119: | Line 120: | ||
* Combined db5_h.patch and db5_types_c.patch into single [https://sourceforge.net/p/brlcad/patches/207/ db5.tar.gz] compressed file. | * Combined db5_h.patch and db5_types_c.patch into single [https://sourceforge.net/p/brlcad/patches/207/ db5.tar.gz] compressed file. | ||
− | July 2 | + | ==July 2== |
* Still awaiting clarifications which I requested on the mailing list to develope the internal representation of the heart primitive in include/rtgeom.h. | * Still awaiting clarifications which I requested on the mailing list to develope the internal representation of the heart primitive in include/rtgeom.h. | ||
Line 129: | Line 130: | ||
* Awaiting some answers to questions posted on the mailing list in order to proceed with the editing of rtgeom.h and raytrace.h | * Awaiting some answers to questions posted on the mailing list in order to proceed with the editing of rtgeom.h and raytrace.h | ||
− | July 3 | + | ==July 3== |
* Getting requisite authorization to connect Workspace at the Faculty of Science building to the Internet. Not easy dealing with a bureaucratic system in which every administrative decision has to be documented in letters. | * Getting requisite authorization to connect Workspace at the Faculty of Science building to the Internet. Not easy dealing with a bureaucratic system in which every administrative decision has to be documented in letters. | ||
Line 137: | Line 138: | ||
* The above activities took the whole day. Could not do coding work. | * The above activities took the whole day. Could not do coding work. | ||
− | July 4 | + | ==July 4== |
* Doing negotiations to get Internet access. This is a prerequisite to submitting perfect patches which are generated from the svn checkout. | * Doing negotiations to get Internet access. This is a prerequisite to submitting perfect patches which are generated from the svn checkout. | ||
Line 147: | Line 148: | ||
* Did no coding work today as I was preparing a good environment for coding. | * Did no coding work today as I was preparing a good environment for coding. | ||
− | June 5 | + | ==June 5== |
* Did detailed mind maps to aid visualization of necessary editing of files to aid submission of logical patches. This will help see exactly how to group file changes like magic numbers , mirror support, mged support, etc. | * Did detailed mind maps to aid visualization of necessary editing of files to aid submission of logical patches. This will help see exactly how to group file changes like magic numbers , mirror support, mged support, etc. | ||
Line 153: | Line 154: | ||
* Got equipment ready for installations of Internet but could not install today due to rainy weather. Hoping to get a sunny window tomorrow morning for installation. | * Got equipment ready for installations of Internet but could not install today due to rainy weather. Hoping to get a sunny window tomorrow morning for installation. | ||
− | July 6 | + | ==July 6== |
* Awaiting the arrival of Head of Department from Bamenda. Discussed with him the need for authorization to install Internet at the laboratory by phone. He said we need to officially discuss it during office hours on Monday,July 8. | * Awaiting the arrival of Head of Department from Bamenda. Discussed with him the need for authorization to install Internet at the laboratory by phone. He said we need to officially discuss it during office hours on Monday,July 8. | ||
Line 161: | Line 162: | ||
==From July 8th to July 14th== | ==From July 8th to July 14th== | ||
− | July 8 | + | ==July 8== |
* Yoopee:) My Head of Department discusses the need for GSoC students to temporarily install Internet at the laboratory with the Dean of the Faculty of Science.The Dean seconds the idea and writes to the Vice-Chancellor for final authorization. Waiting for the final authorization from the Vice-Chancellor within the week.This is the [https://docs.google.com/file/d/0B4kEIUMOBbU-SlBaeEdqQ0Eta1U/edit?usp=sharing letter] I wrote to the Deputy Vice Chancellor .The Head of Department's letter through the Dean to the Vice-Chancellor can be viewed [https://docs.google.com/file/d/0B4kEIUMOBbU-b2xzMXl2Y2lyaG8/edit?usp=sharing here]. | * Yoopee:) My Head of Department discusses the need for GSoC students to temporarily install Internet at the laboratory with the Dean of the Faculty of Science.The Dean seconds the idea and writes to the Vice-Chancellor for final authorization. Waiting for the final authorization from the Vice-Chancellor within the week.This is the [https://docs.google.com/file/d/0B4kEIUMOBbU-SlBaeEdqQ0Eta1U/edit?usp=sharing letter] I wrote to the Deputy Vice Chancellor .The Head of Department's letter through the Dean to the Vice-Chancellor can be viewed [https://docs.google.com/file/d/0B4kEIUMOBbU-b2xzMXl2Y2lyaG8/edit?usp=sharing here]. | ||
Line 171: | Line 172: | ||
* Plan to generate the patches from the work done immediately Internet access is available. | * Plan to generate the patches from the work done immediately Internet access is available. | ||
− | July 9 | + | ==July 9== |
* Correcting my M.Sc. thesis in order to submit to supervisor until 13:00 UTC. | * Correcting my M.Sc. thesis in order to submit to supervisor until 13:00 UTC. | ||
Line 185: | Line 186: | ||
* Intend to test these edits tomorrow. Couldn't do these today because the Faculty building was very noisy today due to a staff meeting. | * Intend to test these edits tomorrow. Couldn't do these today because the Faculty building was very noisy today due to a staff meeting. | ||
− | + | ==June 10== | |
* Had a two-hour entretien today with my supervisor and head of Department until 10:00 UTC. | * Had a two-hour entretien today with my supervisor and head of Department until 10:00 UTC. | ||
Line 197: | Line 198: | ||
* For tomorrow's work, I intend to create a heart object which can be tested in the mged interface. | * For tomorrow's work, I intend to create a heart object which can be tested in the mged interface. | ||
− | + | ==June 11== | |
* Debugged and compiled the int mk_hrt(struct rt_wdb *wdbp, const char *name, const fastf_t *center, const fastf_t *xdir, const fastf_t *ydir, const fastf_t *zdir, const fastf_t d) routine which was previously added to src/libwdb/wdb.c file. | * Debugged and compiled the int mk_hrt(struct rt_wdb *wdbp, const char *name, const fastf_t *center, const fastf_t *xdir, const fastf_t *ydir, const fastf_t *zdir, const fastf_t d) routine which was previously added to src/libwdb/wdb.c file. | ||
Line 209: | Line 210: | ||
* Intend to finish any hacks of the mged interface and get into the difficult functions like rt_hrt_shot, rt_hrt_prep , etc. | * Intend to finish any hacks of the mged interface and get into the difficult functions like rt_hrt_shot, rt_hrt_prep , etc. | ||
− | + | ==June 12== | |
* Added case HRT to the solbld function in src/conv/asc/asc2g.c which parses the heart record and determines which libwdb routine to call in order to replicate it. Debugging asc2g.c..... | * Added case HRT to the solbld function in src/conv/asc/asc2g.c which parses the heart record and determines which libwdb routine to call in order to replicate it. Debugging asc2g.c..... | ||
− | + | ==June 13== | |
* Started writing rt_hrt_shot() function for src/librt/primitives/hrt/hrt.c | * Started writing rt_hrt_shot() function for src/librt/primitives/hrt/hrt.c | ||
Line 245: | Line 246: | ||
==From July 15th to July 20th == | ==From July 15th to July 20th == | ||
− | July 15 | + | ==July 15== |
* Studying how the quartic equation of the torus is built until the roots of this quartic equation is found by the root finder. | * Studying how the quartic equation of the torus is built until the roots of this quartic equation is found by the root finder. | ||
Line 251: | Line 252: | ||
* Working on int rt_hrt_shot() function whereby a ray intersects with the heart.This yield a sextic polynomial in t with 7 coefficients each with an average of 70 algebraic terms. The coefficient of t^6 has been computed while the coefficient of t^5 is being computed. | * Working on int rt_hrt_shot() function whereby a ray intersects with the heart.This yield a sextic polynomial in t with 7 coefficients each with an average of 70 algebraic terms. The coefficient of t^6 has been computed while the coefficient of t^5 is being computed. | ||
− | July 16 | + | ==July 16== |
+ | |||
* Working on the t^5 and t^4 coefficients of the sextic equation in the int rt_hrt_shot() function whereby a ray intersects with the heart. | * Working on the t^5 and t^4 coefficients of the sextic equation in the int rt_hrt_shot() function whereby a ray intersects with the heart. | ||
− | July 17 | + | ==July 17== |
* Finished working on the coefficients of the sextic equation... Pretty tedious. | * Finished working on the coefficients of the sextic equation... Pretty tedious. | ||
Line 260: | Line 262: | ||
* Discussed today with my former mathematics professor who pointed me to the Rouche's theorem to locate complex roots of a polynomial . Researching on this Theorem to locate roots and solve sextic equation. | * Discussed today with my former mathematics professor who pointed me to the Rouche's theorem to locate complex roots of a polynomial . Researching on this Theorem to locate roots and solve sextic equation. | ||
− | July 18 | + | ==July 18== |
* Following up the letter written to the Vice-Chancellor at the Central Administration. No coding work done today. | * Following up the letter written to the Vice-Chancellor at the Central Administration. No coding work done today. | ||
− | July 19 | + | ==July 19== |
* Finished writing the rt_hrt_shot() function which has to be debugged and tested. | * Finished writing the rt_hrt_shot() function which has to be debugged and tested. | ||
− | July 20 | + | ==July 20== |
* Had a headache today. Did no coding work. Just did some planning and light observation of toroid and superell primitives in src/librt/primitives/. | * Had a headache today. Did no coding work. Just did some planning and light observation of toroid and superell primitives in src/librt/primitives/. | ||
Line 274: | Line 276: | ||
=From July 22th to July 27th= | =From July 22th to July 27th= | ||
− | July 22 | + | ==July 22== |
* Wrote the rt_hrt_parse[] array based on the internal properties of the heart. | * Wrote the rt_hrt_parse[] array based on the internal properties of the heart. | ||
Line 284: | Line 286: | ||
* Making sure that my patches compile, although not yet generated from svn diff -u . | * Making sure that my patches compile, although not yet generated from svn diff -u . | ||
− | July 23 | + | ==July 23== |
− | * Fixed my S.L. 6.2 system today after a crash | + | * Fixed my S.L. 6.2 system today after a crash. |
* Helped install Internet at the laboratory. | * Helped install Internet at the laboratory. | ||
Line 296: | Line 298: | ||
* Checking my patches from A to Z. | * Checking my patches from A to Z. | ||
− | July 24 | + | ==July 24== |
* Generated and tested the [https://sourceforge.net/p/brlcad/patches/203/?page=1 hrt_magic.patch] that it applies cleanly, independently and without any side effects. | * Generated and tested the [https://sourceforge.net/p/brlcad/patches/203/?page=1 hrt_magic.patch] that it applies cleanly, independently and without any side effects. | ||
Line 302: | Line 304: | ||
* Generated and tested the [https://sourceforge.net/p/brlcad/patches/207/ hrt_stub.patch] that it applies cleanly, independently and without any side effects. | * Generated and tested the [https://sourceforge.net/p/brlcad/patches/207/ hrt_stub.patch] that it applies cleanly, independently and without any side effects. | ||
− | July 25 | + | ==July 25== |
− | |||
− | + | ==July 26== | |
− | |||
− | + | ==July 27== | |
− | + | ==Pre-midterm evaluation summary== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | =Pre-midterm evaluation summary= | ||
In order to prepare the BRL-CAD source code for the heart primitive , I hooked the heart primitive into the BRL-CAD source by adding a magic number for the heart in include/magic.h and src/libbu/magic.c, stubbing an empty heart in include/db5.h, include/rtgeom.h, include/raytrace.h, src/librt/db5_types.c and /src/librt/primitives/table.c and adding typing support for the heart in the mged interface in include/wdb.h, src/libwdb/wdb.c and src/libged/typein.c as can be seen [https://docs.google.com/file/d/0B4kEIUMOBbU-ZUpmcXpxZlFzVXc/edit?usp=sharing here]. As regards the ray tracing callback functions in src/librt/primitives/hrt/hrt.c , I have built the hrt_specific structure, written the rt_hrt_shot() and rt_hrt_prep() functions and I am currently testing these.I intend to continue working on other callback functions like rt_hrt_import(), rt_hrt_print(), etc and finally hook the heart primitive to the mged and archer interfaces with associated clean up and documentation. | In order to prepare the BRL-CAD source code for the heart primitive , I hooked the heart primitive into the BRL-CAD source by adding a magic number for the heart in include/magic.h and src/libbu/magic.c, stubbing an empty heart in include/db5.h, include/rtgeom.h, include/raytrace.h, src/librt/db5_types.c and /src/librt/primitives/table.c and adding typing support for the heart in the mged interface in include/wdb.h, src/libwdb/wdb.c and src/libged/typein.c as can be seen [https://docs.google.com/file/d/0B4kEIUMOBbU-ZUpmcXpxZlFzVXc/edit?usp=sharing here]. As regards the ray tracing callback functions in src/librt/primitives/hrt/hrt.c , I have built the hrt_specific structure, written the rt_hrt_shot() and rt_hrt_prep() functions and I am currently testing these.I intend to continue working on other callback functions like rt_hrt_import(), rt_hrt_print(), etc and finally hook the heart primitive to the mged and archer interfaces with associated clean up and documentation. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |