Difference between revisions of "User:GregoryLi/GSoC2022/DevLog"
From BRL-CAD
(17 intermediate revisions by the same user not shown) | |||
Line 39: | Line 39: | ||
* Learn about ''nurb surface'' usage.(face_g_snurb) | * Learn about ''nurb surface'' usage.(face_g_snurb) | ||
* Write one project about testing brep simple cases. -- about 65% completion | * Write one project about testing brep simple cases. -- about 65% completion | ||
+ | |||
+ | ==Thursday, June 23, 2022== | ||
+ | * Write one project about testing brep simple cases. -- complete | ||
+ | * Reading docs and codes about brep. | ||
+ | |||
+ | ==Friday, June 24, 2022== | ||
+ | * Test surface interesct cases. | ||
+ | * Reading docs and codes about brep. | ||
+ | |||
+ | ==Monday, June 27, 2022== | ||
+ | * Read ''surfaceinteresct'' project and try to debug | ||
+ | * Read codes related to brep(''rt_comb_brep'' ''ON_Boolean'' etc) | ||
+ | |||
+ | ==Tuesday, June 28, 2022== | ||
+ | * Read codes related to brep and try debugging | ||
+ | |||
+ | ==Wednesday, June 29, 2022== | ||
+ | * Reorganize and test ''brep_arbintersection'' project | ||
+ | |||
+ | ==Thursday, June 30, 2022== | ||
+ | * Compare the code stack difference between archer and my test case about ''_brep_cmd_brep'' | ||
+ | |||
+ | ==Friday, July 1, 2022== | ||
+ | * Compare the code stack difference between archer and my test case about ''_brep_cmd_brep'' | ||
+ | * Rewrite brep test case | ||
+ | |||
+ | ==Monday, July 4, 2022== | ||
+ | * Solve build errors after git pull. | ||
+ | * ebug brep using file output system. | ||
+ | |||
+ | ==Tuesday, July 5, 2022== | ||
+ | * Debug brep using file output system. | ||
+ | |||
+ | ==Wednesday, July 6, 2022== | ||
+ | * Ditto | ||
+ | |||
+ | ==Thursday, July 7, 2022== | ||
+ | * Solve the inconsistent problem about converting brep in test case and Archer | ||
+ | * Debug brep using file output system. | ||
+ | |||
+ | ==Monday, July 11, 2022== | ||
+ | * Reread NURBS Development Guide | ||
+ | |||
+ | ==Tuesday, July 12, 2022== | ||
+ | * Debug: tracking and call stack from test_UNION into ON_Boolean | ||
+ | * Find multiple outputs with the same operation among three BRL-CAD versions: | ||
+ | - current main branch -- missing faces | ||
+ | - BRL-CAD 7.32.6 release package -- correct | ||
+ | - project build with BRL-CAD 7.32.6 source code -- crashed | ||
+ | |||
+ | ==Wednesday, July 13, 2022== | ||
+ | * Compare differences between different branch and commits | ||
+ | - project build with BRL-CAD 7.32.6 source code in RELEASE mode - correct for arb_4.r test case, error for arb_3.r | ||
+ | - project build with BRL-CAD 7.32.6 source code in DEBUG mode - crash | ||
+ | - current main branch -- error for arb_3.r/arb_4.r | ||
+ | - initial commit of RELEASE branch -- correct for arb_4.r test case, error for arb_3.r | ||
+ | |||
+ | ==Thursday, July 14, 2022== | ||
+ | * Find where introduced the error in main branch. | ||
+ | * Test and compare different brep cases cross different code versions. | ||
+ | |||
+ | ==Friday, July 15, 2022== | ||
+ | * Find where introduced the error in main branch using bisect. --around *1583360* commit | ||
+ | * Read codes about primitives convert to brep. | ||
+ | |||
+ | ==Saturday, July 16, 2022== | ||
+ | * Check map from old dplot command to brep. | ||
+ | |||
+ | ==Monday, July 18, 2022== | ||
+ | * generate 125 arb union cases then convert them to brep. | ||
+ | |||
+ | ==Tuesday, July 19, 2022== | ||
+ | * append intersection and subtraction test cases (125 * 2). | ||
+ | |||
+ | ==Wednesday, July 20, 2022== | ||
+ | * Test intersection and subtraction test cases using commands. | ||
+ | * learn to use nirt command. | ||
+ | |||
+ | ==Thursday, July 21, 2022== | ||
+ | * Reposition test cases to a grid. | ||
+ | * Formal objects' names. | ||
+ | |||
+ | ==Friday, July 22, 2022== | ||
+ | * Test to convert primitives to brep, record issues. | ||
+ | |||
+ | ==Monday, July 25, 2022== | ||
+ | * Create a new project to convert primitives to brep format. --abandoned later | ||
+ | |||
+ | ==Tuesday, July 26, 2022== | ||
+ | * Use shell to convert primitives to brep format. | ||
+ | * Shot the primitives and breps using nirt. | ||
+ | |||
+ | ==Wednesday, July 27, 2022== | ||
+ | * Try to evaluate brep obj using nirt. | ||
+ | |||
+ | ==Thursday, July 28, 2022== | ||
+ | * Try to evaluate brep obj using nirt. | ||
+ | * Test and understand rhc primitive. | ||
+ | |||
+ | ==Friday, July 29, 2022== | ||
+ | * Ask for leave | ||
+ | |||
+ | ==Monday, August 1, 2022== | ||
+ | * Solve conficts between main and my dev branch. --error in generating, can't debug. rollback | ||
+ | * Investigate the call stack of rhc brep. | ||
+ | - error 1: the bottom of rhc in brep format is larger than rhc in primitive format | ||
+ | - error 2: the orient of the bottom is not correspond to it's wireframe | ||
+ | |||
+ | ==Tuesday, August 2, 2022== | ||
+ | * Look into code call stack while converting rhc to brep and curve drawing. | ||
+ | * Read and understand formula of bezier curve. | ||
+ | |||
+ | ==Wednesday, August 3, 2022== | ||
+ | * sleuth source code on the math. | ||
+ | * Look into memory changes while plotting bezier curve. | ||
+ | |||
+ | ==Thursday, August 4, 2022== | ||
+ | * Test with using relative coordinates while scaling the position of a vertex on the curve. | ||
+ | |||
+ | ==Friday, August 5, 2022== | ||
+ | * Test reshape the bottom by changing source code according to formula. | ||
+ | |||
+ | ==Monday, August 8, 2022== | ||
+ | * Sleuth the formula by openNURBS source code. | ||
+ | * Monitor variables change while drawing curcve of rhc_brep. | ||
+ | |||
+ | ==Tuesday, August 9, 2022== | ||
+ | * Solve the problem by changing the codes of openNURBS: mourning Casteljau, just caculate using NURBS. | ||
+ | [[File:rhc_brep_bottom_v0.png|300px]] | ||
+ | |||
+ | ==Wednesday, August 10, 2022== | ||
+ | * sleuth source code on the math. | ||
+ | * Look into memory changes while plotting bezier curve. | ||
+ | |||
+ | ==Thursday, August 11, 2022== | ||
+ | * debug creating rhc_brep's side face and top face. | ||
+ | |||
+ | ==Friday, August 12, 2022== | ||
+ | * Look into Casteljau algorithm for NURBS.(It's used for openNURBS drawing curve) | ||
+ | [[File:rhc_brep_bottom_v1.png|300px]] | ||
+ | [[File:rhc_brep_bottom_v1_rt.png|300px]] | ||
+ | |||
+ | for picture 1, the left obj is rhc primitive, the right is rhc_brep |
Revision as of 00:06, 16 August 2022
Contents
- 1 Development Logs
- 2 Community Bonding Period
- 3 Work Period
- 3.1 Wednesday, June 15, 2022
- 3.2 Thursday, June 16, 2022
- 3.3 Friday, June 17, 2022
- 3.4 Saturday, June 18, 2022
- 3.5 Monday, June 20, 2022
- 3.6 Tuesday, June 21, 2022
- 3.7 Wednesday, June 22, 2022
- 3.8 Thursday, June 23, 2022
- 3.9 Friday, June 24, 2022
- 3.10 Monday, June 27, 2022
- 3.11 Tuesday, June 28, 2022
- 3.12 Wednesday, June 29, 2022
- 3.13 Thursday, June 30, 2022
- 3.14 Friday, July 1, 2022
- 3.15 Monday, July 4, 2022
- 3.16 Tuesday, July 5, 2022
- 3.17 Wednesday, July 6, 2022
- 3.18 Thursday, July 7, 2022
- 3.19 Monday, July 11, 2022
- 3.20 Tuesday, July 12, 2022
- 3.21 Wednesday, July 13, 2022
- 3.22 Thursday, July 14, 2022
- 3.23 Friday, July 15, 2022
- 3.24 Saturday, July 16, 2022
- 3.25 Monday, July 18, 2022
- 3.26 Tuesday, July 19, 2022
- 3.27 Wednesday, July 20, 2022
- 3.28 Thursday, July 21, 2022
- 3.29 Friday, July 22, 2022
- 3.30 Monday, July 25, 2022
- 3.31 Tuesday, July 26, 2022
- 3.32 Wednesday, July 27, 2022
- 3.33 Thursday, July 28, 2022
- 3.34 Friday, July 29, 2022
- 3.35 Monday, August 1, 2022
- 3.36 Tuesday, August 2, 2022
- 3.37 Wednesday, August 3, 2022
- 3.38 Thursday, August 4, 2022
- 3.39 Friday, August 5, 2022
- 3.40 Monday, August 8, 2022
- 3.41 Tuesday, August 9, 2022
- 3.42 Wednesday, August 10, 2022
- 3.43 Thursday, August 11, 2022
- 3.44 Friday, August 12, 2022
Development Logs
Community Bonding Period
- familiar with arb8 convert to brep code
- Read BRL-CAD NURBS Boolean Evaluation Development Guide.
- Look into arb8_brep and brep_simple.
- Test converting arb8 to brep.
Work Period
Wednesday, June 15, 2022
- Test converting arb8 into brep format with non-planar faces. -- get the differences of the output of them, but the result of brep_simple.cpp seems confusing.
- Compare codes of brep_simple.cpp and arb8_brep.cpp. -- mastered brep_simple
- Replace the input data in brep_simple with arb8. -- a beginning
Thursday, June 16, 2022
- Run and analyze the result of examples about brep, record errors found.
- Write one example about converting arb8 into brep. -- about 75% completion
Friday, June 17, 2022
- Write one example about converting arb8 into brep. -- accomplish
- Read code of current examples about creating and processing object.
Saturday, June 18, 2022
- Read code of OpenNURBS.
- Read code and docs about brep.
Monday, June 20, 2022
- Test simple cases of boolean then brep(arb intersection).
- Read code of OpenNURBS.
- Reorganize code about example.
Tuesday, June 21, 2022
- Test simple cases of boolean then brep(face intersection).
- Read docs about previous Brep work.
Wednesday, June 22, 2022
- Learn about nurb surface usage.(face_g_snurb)
- Write one project about testing brep simple cases. -- about 65% completion
Thursday, June 23, 2022
- Write one project about testing brep simple cases. -- complete
- Reading docs and codes about brep.
Friday, June 24, 2022
- Test surface interesct cases.
- Reading docs and codes about brep.
Monday, June 27, 2022
- Read surfaceinteresct project and try to debug
- Read codes related to brep(rt_comb_brep ON_Boolean etc)
Tuesday, June 28, 2022
- Read codes related to brep and try debugging
Wednesday, June 29, 2022
- Reorganize and test brep_arbintersection project
Thursday, June 30, 2022
- Compare the code stack difference between archer and my test case about _brep_cmd_brep
Friday, July 1, 2022
- Compare the code stack difference between archer and my test case about _brep_cmd_brep
- Rewrite brep test case
Monday, July 4, 2022
- Solve build errors after git pull.
- ebug brep using file output system.
Tuesday, July 5, 2022
- Debug brep using file output system.
Wednesday, July 6, 2022
- Ditto
Thursday, July 7, 2022
- Solve the inconsistent problem about converting brep in test case and Archer
- Debug brep using file output system.
Monday, July 11, 2022
- Reread NURBS Development Guide
Tuesday, July 12, 2022
- Debug: tracking and call stack from test_UNION into ON_Boolean
- Find multiple outputs with the same operation among three BRL-CAD versions:
- current main branch -- missing faces - BRL-CAD 7.32.6 release package -- correct - project build with BRL-CAD 7.32.6 source code -- crashed
Wednesday, July 13, 2022
- Compare differences between different branch and commits
- project build with BRL-CAD 7.32.6 source code in RELEASE mode - correct for arb_4.r test case, error for arb_3.r - project build with BRL-CAD 7.32.6 source code in DEBUG mode - crash - current main branch -- error for arb_3.r/arb_4.r - initial commit of RELEASE branch -- correct for arb_4.r test case, error for arb_3.r
Thursday, July 14, 2022
- Find where introduced the error in main branch.
- Test and compare different brep cases cross different code versions.
Friday, July 15, 2022
- Find where introduced the error in main branch using bisect. --around *1583360* commit
- Read codes about primitives convert to brep.
Saturday, July 16, 2022
- Check map from old dplot command to brep.
Monday, July 18, 2022
- generate 125 arb union cases then convert them to brep.
Tuesday, July 19, 2022
- append intersection and subtraction test cases (125 * 2).
Wednesday, July 20, 2022
- Test intersection and subtraction test cases using commands.
- learn to use nirt command.
Thursday, July 21, 2022
- Reposition test cases to a grid.
- Formal objects' names.
Friday, July 22, 2022
- Test to convert primitives to brep, record issues.
Monday, July 25, 2022
- Create a new project to convert primitives to brep format. --abandoned later
Tuesday, July 26, 2022
- Use shell to convert primitives to brep format.
- Shot the primitives and breps using nirt.
Wednesday, July 27, 2022
- Try to evaluate brep obj using nirt.
Thursday, July 28, 2022
- Try to evaluate brep obj using nirt.
- Test and understand rhc primitive.
Friday, July 29, 2022
- Ask for leave
Monday, August 1, 2022
- Solve conficts between main and my dev branch. --error in generating, can't debug. rollback
- Investigate the call stack of rhc brep.
- error 1: the bottom of rhc in brep format is larger than rhc in primitive format - error 2: the orient of the bottom is not correspond to it's wireframe
Tuesday, August 2, 2022
- Look into code call stack while converting rhc to brep and curve drawing.
- Read and understand formula of bezier curve.
Wednesday, August 3, 2022
- sleuth source code on the math.
- Look into memory changes while plotting bezier curve.
Thursday, August 4, 2022
- Test with using relative coordinates while scaling the position of a vertex on the curve.
Friday, August 5, 2022
- Test reshape the bottom by changing source code according to formula.
Monday, August 8, 2022
- Sleuth the formula by openNURBS source code.
- Monitor variables change while drawing curcve of rhc_brep.
Tuesday, August 9, 2022
- Solve the problem by changing the codes of openNURBS: mourning Casteljau, just caculate using NURBS.
Wednesday, August 10, 2022
- sleuth source code on the math.
- Look into memory changes while plotting bezier curve.
Thursday, August 11, 2022
- debug creating rhc_brep's side face and top face.
Friday, August 12, 2022
- Look into Casteljau algorithm for NURBS.(It's used for openNURBS drawing curve)
for picture 1, the left obj is rhc primitive, the right is rhc_brep