Difference between revisions of "User:Phoenix/GSoc2013/Reports"

From BRL-CAD
(Community bonding)
(Community bonding)
Line 15: Line 15:
 
** Modified the wiki page of the brep command.
 
** Modified the wiki page of the brep command.
 
** Fix the format of ON_PX_EVENT::Dump(). (Add "\n")
 
** Fix the format of ON_PX_EVENT::Dump(). (Add "\n")
 +
* June 7
 +
** Try to add PS support using get_closest_point().
 +
** Test the functionality of the PS function - it seems that there's a problem when try (0,0,5) on a sphere of radius 5 and centered at the origin (it should be an intersect, but get_closest_point() returns (0,0,-5) resulting in no intersections).
  
 
= Original development timeline =
 
= Original development timeline =

Revision as of 12:08, 7 June 2013

Log

Community bonding

  • May 28
    • Create the log page
    • Things have done:
      • Test program for SSI and a test geometry file
      • Some improvement with SSI and API design
  • June 3
    • As I will have my final exams during the first week that coding begins, so I'd like to move some work ahead.
    • Begin to add P/P, P/C and P/S support. Implement ON_PX_EVENT for reporting the intersections.
    • TODO: Implement P/C, P/S and ON_PX_EVENT::IsValid().
  • June 4
    • Eliminate max_dis in the brep command for SSI.
    • Extended the brep command to handle P/P, P/C, P/S, C/C and C/S.
    • Modified the wiki page of the brep command.
    • Fix the format of ON_PX_EVENT::Dump(). (Add "\n")
  • June 7
    • Try to add PS support using get_closest_point().
    • Test the functionality of the PS function - it seems that there's a problem when try (0,0,5) on a sphere of radius 5 and centered at the origin (it should be an intersect, but get_closest_point() returns (0,0,-5) resulting in no intersections).

Original development timeline

  • - June 17 (~4 weeks)
    • Study the papers on this topic
    • Discuss with other developers
    • Some code clean up in the current SSI routine
    • Write a test program to test SSI
  • June 17 - June 23 (1 week)
    • Lower dimension intersections
      • P/P, P/C, P/S
      • With the support of openNURBS
    • Tests and documentations
  • June 24 - July 7 (2 weeks)
    • Intersections regarding curves
      • C/C, C/S
      • Subdivision - curve trees, surface trees
    • Tests and documentations
  • July 7 - Aug. 4 (4 weeks)
    • TDD on SSI
      • Test the SSI
      • Find the problems
      • Fix the bugs
      • Find more bugs and fix them
      • Degenerated cases
    • Try to get the code faster
      • Fit the curve to a lower order if possible
    • Documentations
      • Comment in code
      • Write some extra document on SSI (algorithms, problems, TODOs...)
    • Mid-term evaluation in July 29 - Aug. 2
  • Aug. 5 - Aug. 18 (2 weeks)
    • Finish the surface partitioning
      • Polygon partitioning
      • Curve-curve intersection
    • Tests
      • Trims may intersect
  • Aug. 19 - Aug. 25 (1 week)
    • Add connectivity graph support
      • Generate connectivity graphs for objects
      • Design proper data structures for the graph
  • Aug. 26 - Sept. 1 (1 week)
    • Inside-outside tests
      • Curve-surface intersection
      • BFS of the graph to determine inside/outside
  • Sept. 2 - Sept. 8 (1 week)
    • Generate valid ON_Brep objects
      • Read code in IsValid() functions
      • Add elements (trim, edge, etc.)
      • Try to pass the validation
    • Extend the brep command in MGED
  • Sept. 9 - Sept. 15
    • Robustness Issues
      • Deal with the degenerated cases
      • All 3 steps should be modified
    • Tests
      • Fix bugs
      • Improve performance
  • Sept. 16 - Sept. 22 (1 week)
    • Pencils down
      • Code clean up
      • Documentation (wiki pages)
  • Sept. 23 - Sept. 27 (1 week)
    • Final evaluation
    • Submit code to Google