User:Phoenix/GSoc2012/Reports

From BRL-CAD
< User:Phoenix
Revision as of 10:33, 27 May 2012 by Phoenix (talk | contribs) (Week 1)

Log

Community Bonding

  • May 2
    • Downloaded the source code of the latest revision from svn checkout and got more familiar with subversion.
    • Compiled and built the source both in Ubuntu and Windows (Visual Studio 2010) successfully.
  • May 13
    • Found and fixed a small bug in eto_brep (the rotation axis of eto is wrong), and submitted a patch on sourceforge.net.
  • May 15
    • Modified the eto_brep patch with the test case provided by Cliff.
  • May 16
    • Continued working on the conversion of eto.
    • Tested the brep conversion of hyp, but found the raytrace result of implicit CSG hyp quite strange.
  • May 17
    • The raytrace of implicit hyp is wrong when H is not perpendicular to A.
    • Fixed the conversion to brep of hyp (havn't commited yet).
  • May 18
    • My first SVN Commit: fixed the shearing direction of hyp.

Week 1

  • May 21
    • Fixed the bug of wrong id & od for pipe b-rep, by changing some prevp to curp.
    • Dealt with duplicated points by deleting them from the linklist.
  • May 22
    • Added some control to deal with special cases in pipe_brep.cpp and add a few comments.
  • May 23
    • Read and tried to understood the code in revolve_brep.cpp, but got confused by the implicit definition.
    • Changed the revolution axis and origin of the sketch plane of revolve_brep.
  • May 24
    • Changed the position of the sketch in extrude_brep according to the parameters.
    • Fixed the plane direction of circle arcs in sketch_brep as well as in revolve_brep.
  • May 25
    • Dealt with non-full revolution of revolve_brep. It took a long time to get the expected result, but I got more familiar to NURBS/BREP during that procedure.
  • May 27
    • Tested and examined the implemented brep conversions. Checked the current status of my work.

Original development timeline

  • - May 21 (~4 weeks)
    • Study materials on NURBS/BREP etc
    • Read the codes in librt/primitives
    • Get familiar to OpenNURBS
    • Fix some bugs and make patches
    • Implement a method for convenient testing (finished)
  • May 21 - June 10 (~3 weeks)
    • Modify implemented conversions if not finished
      • pipe
      • sph, ell, tor, hyp
      • eto, extrude, revolve, etc.
  • June 11 - June 18 (~1 week)
    • Final examination week in our school
  • June 19 - July 1 (~2 weeks)
    • Still work on existing conversions
    • Work on non-origin primitives
      • Deduce transformation matrices
      • Apply the transformation
      • Test the results and write documents
  • July 1 - July 29 (~4 weeks)
    • Add new conversions to missing primitives
      • Test whether it works well
      • Write clear documents
      • From easy ones to hard ones
    • July 1 - July 8 (1 week)
      • rec
      • ars
      • half
      • ell1
    • July 8 - July 15 (1 week)
      • metaball
      • pnts
      • part
      • grip
    • July 15 - July 22 (1 week)
      • superell
      • cline
    • July 22 - July 29 (1 week)
      • hf
      • other missing primitives
  • July 29 - August 13 (~2 week)
    • Write a convert for whole
      • Write a function to walk the tree
      • Add a command to MGED
      • Discussions and documents
    • Test the work and fix bugs
  • August 13 - August 20 (~1 week)
    • Pencil down data
      • Improve documentation
      • Evaluations
  • Post-GSoc
    • Further involvement with BRL-CAD :)