Latest revision |
Your text |
Line 185: |
Line 185: |
| * 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. |
| | | |
− | July 10
| + | 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 197: |
| * 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. |
| | | |
− | July 11
| + | 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 209: |
| * 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. |
| | | |
− | July 12
| + | 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..... |
| | | |
− | July 13
| + | 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 245: |
| ==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 251: |
| * 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 261: |
| * 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 275: |
| =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 285: |
| * 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. Lost the 0rt_hrt_prep() function which I already wrote :(. Not a big deal though. | + | * 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 297: |
| * 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 303: |
| * 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== |
| | | |
− | * My mentor [http://sourceforge.net/p/brlcad/patches/203/?limit=10&page=1#836c accepted] the hrt_magic.patch and [http://sourceforge.net/p/brlcad/patches/203/?limit=10&page=1#a682 applied] it to r56212. :)
| |
| | | |
− | * Doing changes to generate hrt_typein.patch.
| + | ==July 26== |
| | | |
− | July 26
| |
| | | |
− | * Removing errors from the hrt_typein.patch
| + | ==July 27== |
| | | |
− | * My hrt_stub.patch file got [http://sourceforge.net/p/brlcad/patches/207/?limit=10&page=1#99a9 closed-accepted] status and [http://sourceforge.net/p/brlcad/patches/207/?limit=10&page=1#f22c applied] to r56235.
| + | ==Pre-midterm evaluation summary== |
− | | |
− | July 27
| |
− | | |
− | * Working on a test for the [http://sourceforge.net/p/brlcad/patches/191/ rb_delete.c] function.
| |
− | | |
− | =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. |
− |
| |
− | =Mid-term Evaluation week=
| |
− |
| |
− | July 29
| |
− |
| |
− | * Fixed a typo ( V_vec instead of v_vec on line 286 of src/libger/polyclip.cpp ) and generated a [http://sourceforge.net/p/brlcad/patches/218/ patch] which was applied to r56306 by Mohit Daga.
| |
− |
| |
− | * Working on the starting requirements of Google Developer Group (GDG Buea) : Created GDG Buea Google+ page with links to agents' pages , GDG Buea google group,etc
| |
− |
| |
− | July 30
| |
− |
| |
− | * Filled Mid-term evaluation form and submitted to google-melange.com
| |
− |
| |
− | * Compiled and tested the int mk_hrt() routine and p_hrt[] array & the hrt_in( ) function in src/libwdb/wdb.c file and src/libged/typein.c respectively. Generated and uploaded this hrt_typein.[https://sourceforge.net/p/brlcad/patches/220/ patch].
| |
− |
| |
− | * Had an IRC session where I discussed with mentors on the importance of paying attention to detail.
| |
− |
| |
− | July 31
| |
− |
| |
− | * Worked on opening comment, bu_structparse rt_hrt_parse array and hrt_specific structure .
| |
− |
| |
− | * Posed a question to other developers asking for help on writing rt_hrt_bbox() routine and testing callback functions in hrt.c
| |
− |
| |
− | August 1
| |
− |
| |
− | * Presenting the work done to set up the Google Developer group Buea to staff of the Department of Computer Science.
| |
− |
| |
− | * Doing some research on calculating the bounding box volume of an object.
| |
− |
| |
− | * Going through a little irssi-ssh tutorial.
| |
− |
| |
− | August 2
| |
− |
| |
− | * Correcting the rt_hrt_shot() function in src/librt/primitives/hrt/hrt.c
| |
− |
| |
− | * Chatted with my mentor today : giving me recommendations for commit access.
| |
− |
| |
− | * Working on a basic hrt/hrt.c
| |
− |
| |
− | * Just passed the mid-term evaluations
| |
− |
| |
− | =August 5th to August 9th=
| |
− |
| |
− | August 5
| |
− |
| |
− | * Correcting the bare bones [https://sourceforge.net/p/brlcad/patches/228/ patch].
| |
− |
| |
− | * Building rt_hrt_prep() and rt_hrt_shot()
| |
− |
| |
− | August 6
| |
− |
| |
− | * My operating system crashed due to some accidental system file deletes.Fixing my system , created coding environment and did fresh svn checkouts.
| |
− |
| |
− | * Worked on the logo for the [https://plus.google.com/100289274059280359416 GDG Buea] Google+ page.
| |
− |
| |
− | * Did no coding work today.
| |
− |
| |
− | August 7
| |
− |
| |
− | * Wrote the rt_hrt_import() callback function for hrt.c.
| |
− |
| |
− | * Uploaded hrt_import5 [https://sourceforge.net/p/brlcad/patches/230/ patch] to sourceforge.net.
| |
− |
| |
− | * A picture for the rt_hrt_import5 test on mged interface can be viewed [http://brlcad.org/~Izak/Import_test.png here].
| |
− |
| |
− | * Wrote the rt_hrt_export() callback function for hrt.c.
| |
− |
| |
− | * uploaded hrt_export5 [https://sourceforge.net/p/brlcad/patches/229/ patch] to sourceforge.net.
| |
− |
| |
− | * A picture for the rt_hrt_export5 test on archer interface can be viewed [http://brlcad.org/~Izak/Export_test.png here].
| |
− |
| |
− | August 8
| |
− |
| |
− | * Have been granted commit access. :)
| |
− |
| |
− | * Learned how to use svn commit, svn revert, etc.
| |
− |
| |
− | * Ensured consistent bu_log("rt_hrt_xxx: not implemented yet!\n"); in calllbacks functions for hrt.c and committed to [http://sourceforge.net/p/brlcad/code/56694/ r56694].
| |
− |
| |
− | =August 12th to August 17th=
| |
− |
| |
− | August 12th
| |
− |
| |
− | * Added hrt_invsq vector and hrt_invRSSR matrix to the heart structure in [https://sourceforge.net/p/brlcad/code/56745/ r56745].
| |
− |
| |
− | * Added rt_hrt_print() routine and removed rt_hrt_??port4() routines pertaining to version 4 of database in [https://sourceforge.net/p/brlcad/code/56746/ r56745].
| |
− |
| |
− | * Added rt_hrt_import5() routine to import the database format to the internal format in [https://sourceforge.net/p/brlcad/code/56747/ r56747].
| |
− |
| |
− | * Added rt_hrt_export5() routine to export from internal format to database format in [https://sourceforge.net/p/brlcad/code/56751/ r56751]
| |
− |
| |
− | August 13th
| |
− |
| |
− | * Went to the Cameroon GCE Board office to apply for duplicate certificate for my younger sister.
| |
− |
| |
− | * Wrote rt_hrt_describe() routine to present the heart solid in human-readable format and committed changes to [http://sourceforge.net/p/brlcad/code/56791/ r56791].
| |
− |
| |
− | * Pictures to demonstrate the working rt_hrt_describe() function using the l command in the mged and archer interfaces can be viewed [http://brlcad.org/~Izak/rt_hrt_describe_mged.png here] and [http://brlcad.org/~Izak/rt_hrt_describe_archer.png here] respectively.
| |
− |
| |
− | August 14th
| |
− |
| |
− | * Working on rt_hrt_prep() routine but electric blackouts in my area halted work.
| |
− |
| |
− | August 15th
| |
− |
| |
− | * Compiled hrt.c after writing rt_hrt_prep(). This routine calls rt_hrt_bbox() routine (which I am still to work on ) and some testing using the rt command. Will commit [http://paste.kde.org/p20fbe4c6/ rt_hrt_prep()] later.
| |
− |
| |
− | * Worked on rt_hrt_ifree() to free the storage associated with the rt_db_internal version of this solid and commited to [https://sourceforge.net/p/brlcad/code/56876/ r56876].
| |
− |
| |
− | August 16th
| |
− |
| |
− | * Working on rt_hrt_bbox() routine which needs some testing before I commit.
| |
− |
| |
− | August 17th
| |
− |
| |
− | * Finished working on rt_hrt_bbox() routine today. Used the bb command to test this code in the [http://brlcad.org/~Izak/rt_hrt_bbox_mged_test.png mged] and [http://brlcad.org/~Izak/rt_hrt_bbox_archer_test.png archer].
| |
− |
| |
− | * Committed changes in rt_hrt_bbox() and rt_hrt_prep() routines to [http://sourceforge.net/p/brlcad/code/56917/ r56917].Will do more work on rt_hrt_prep() function eventually.
| |
− |
| |
− | =August 19th to August 24th=
| |
− |
| |
− | August 19th
| |
− |
| |
− | * Corrected spelling of polynomial in bn_poly_synthetic_div.c in [http://sourceforge.net/p/brlcad/code/56944 r56944].
| |
− |
| |
− | * Wrote the rt_hrt_free() and rt_hrt_params() functions in [http://sourceforge.net/p/brlcad/code/56947/ r56947].
| |
− |
| |
− | * Still working on rt_hrt_prep().
| |
− |
| |
− | August 20th
| |
− |
| |
− | * Modified rt_hrt_prep() function and commited it to [https://sourceforge.net/p/brlcad/code/57004/ r57004].
| |
− |
| |
− | August 21st
| |
− |
| |
− | * Working on rt_hrt_shot(). Still to commit.
| |
− |
| |
− | * Modified comment to add new constant in rt_hrt_prep() in [http://sourceforge.net/p/brlcad/code/57023/ r57023] and [http://sourceforge.net/p/brlcad/code/57035/ r57035].
| |
− |
| |
− | August 22nd
| |
− |
| |
− | * Modifying a comment by punctuating the word primitive in super ellipsoid primitive and commited to [http://sourceforge.net/p/brlcad/code/57058/ r57058].
| |
− |
| |
− | * Understanding how to write the rt_???_shot() function for primitives.
| |
− |
| |
− | * Adding rt_hrt_shot to intersect a ray with the heart in [http://sourceforge.net/p/brlcad/code/57068/ r57068].
| |
− |
| |
− | * Tests in the mged using the 'rt' command givers this [http://brlcad.org/~Izak/rt_shot_test.png result].
| |
− |
| |
− | August 23rd
| |
− |
| |
− | * Removed unused variable polycurve and fixed function declarations in pc header
| |
− | and committed to [http://sourceforge.net/p/brlcad/code/57097/ r57097].
| |
− |
| |
− | * Added rt_hrt_norm() function which Computes the normal to the heart given a point on the heart in [http://sourceforge.net/p/brlcad/code/57100/ r57100].
| |
− |
| |
− | =August 26th to August 31st=
| |
− |
| |
− | August 26th
| |
− |
| |
− | * Experiencing an infection in my left eye so could not work throughout the weekend until today.Couldn't work with one eye.
| |
− |
| |
− | August 27th
| |
− |
| |
− | * Researching on solving sextic equations. Found an interesting paper by Titus Piezas III.
| |
− |
| |
− | * Correcting sextic equation in comment preceeding rt_hrt_shot() implementation in [http://sourceforge.net/p/brlcad/code/57180/ r57180].
| |
− |
| |
− | August 28th
| |
− |
| |
− | * Reading papers by Piezas and Thomas Hagerdon to come out with algorithm to write bn_poly_sextic_roots.c.
| |
− |
| |
− | August 29th - 30th
| |
− |
| |
− | * Consulting mathematician Titius Piezas for advice on how to solve the sextic equation for rt_hrt_shot() to do ray tracing. Piezas says the equation is solvable using numerical solutions with arbitrary accuracy but is not solvable with respect to radicals in Galois theory.
| |
− |
| |
− | August 31st
| |
− |
| |
− | * Researching on root-finding algorithms which can be used to write bn_poly_sextic_roots.c
| |
− |
| |
− | * Working on rt_hrt_plot to plot the heart.
| |
− |
| |
− | =September 2nd to September 7th=
| |
− |
| |
− | September 5th
| |
− |
| |
− | * Working on roots_example.c to incorporate test for sextic equation.
| |
− |
| |
− |
| |
− | September 6th
| |
− |
| |
− | * Changed 4 to BN_MAX_POLY_DEGREE in roots_example.c to avoid any further confusions in [http://sourceforge.net/p/brlcad/code/57469 r57469]. roots_example.c actually solves a sextic equation now.
| |
− |
| |
− | * Solved the implicit heart equation with x=y=z in order to substitute into the rt_hrt_shot sextic equation and use in roots_example.c
| |
− |
| |
− | * Running rt command on a hrt object. Picture can be viewed [http://brlcad.org/~Izak/heart.png here].
| |
− |
| |
− | September 7th
| |
− |
| |
− | * Produced a [http://brlcad.org/~Izak/Movie.odp slideshow] from images produced after running the 'rt' command on a heart object.
| |
− |
| |
− | =September 9th to September 14th=
| |
− |
| |
− | September 9th
| |
− |
| |
− | * Getting my feet wet with plotting in the mged/archer interface :)
| |
− |
| |
− | September 10th
| |
− |
| |
− | * Fixed the orientation of the heart and invalid implicit equation in rt_hrt_shot() in [http://sourceforge.net/p/brlcad/code/57533/ r57533].
| |
− |
| |
− | * Getting better results from rt_hrt_shot in this [http://brlcad.org/~Izak/Heart.mpg Heart movie].
| |
− |
| |
− | * Observing the rt_ell_plot() functions to see how the rt_hrt_plot() can be written.
| |
− |
| |
− | September 14th
| |
− |
| |
− | * Corrected rt_hrt_bbox() by Stretching the xdir vector to accommodate the heart and rt_hrt_norm() by Correcting Z component of the normal vector (partials of sextic equation) in [http://sourceforge.net/p/brlcad/code/57653/ r57553].
| |
− |
| |
− | =September 16th to September 21st=
| |
− |
| |
− | September 16th
| |
− |
| |
− | * Had an entretien with my University's Vice- Chancellor and dean of Faculty of Engineering today talking about Summer of Code and approaching Doc Camp .
| |
− |
| |
− | * Wrote a private helper function rt_hrt_24pts() for rt_hrt_plot(). Have written code to get 2 iso-contours. Still working on some bugs in archer.
| |
− |
| |
− | September 17th
| |
− |
| |
− | * Following the stack trace which Sean opened my eyes to on IRC.
| |
− |
| |
− | September 18th
| |
− |
| |
− | * Fixed the bumpy areas on the heart by correcting some code in rt_hrt_norm() in [http://sourceforge.net/p/brlcad/code/57728/ r57728].
| |
− |
| |
− | September 20th
| |
− |
| |
− | * Corrected the rt_hrt_norm() function so that the default trace shouldn't be doing from high specular to dark shadows in [http://sourceforge.net/p/brlcad/code/57780/ r57780].
| |
− |
| |
− |
| |
− | =GSoC 2013 summary=
| |
− |
| |
− | For the past quarter, I've been implementing a heart primitive for the BRL-CAD package. This project focused on writing and testing callback functions in the ray tracing library for the aforementioned primitive.You are invited to read my diary on http://brlcad.org/wiki/User:Izak/GSOC_2013_logs.
| |
− |
| |
− | Despite the challenges I encountered such as the lack of Internet connectivity for over 5 weeks before the mid-term evaluation period, 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,src/librt/primitives/table.c and src/librt/primitives/hrt/hrt.c as well as adding typing support for the heart in the mged interface in include/wdb.h,src/libwdb/wdb.c and src/libged/typein.c.
| |
− |
| |
− | After the mid-term evaluations,I implemented ray tracing callback functions for serialization (rt_hrt_??port), textual description (rt_hrt_describe, rt_hrt_print) and ray tracing (rt_hrt_prep, rt_hrt_shot and rt_hrt_norm).I also wrote a test to ensure that BRL-CAD's root solver is stable for sextic equations and after consulting some mathematicians, I learned that the heart's sextic equation cannot be solved in radicals -- A pointer to which method does not work :). Feel free to download a heart animation from http://brlcad.org/~Izak/HeartImages/Heart.mpg. You can also look at images of the heart from 360 different angles using http://brlcad.org/~Izak/HeartImages/
| |
− |
| |
− | As GSoC 2013 comes to an end, my passion to continuously contribute to the open source community grows. I intend to finish the callbacks functions for the heart primitive and hook the heart to the mged and archer interfaces so the heart gets into the next BRL-CAD release :)
| |
− |
| |
− | Feeling Great! :)
| |