Latest revision |
Your text |
Line 57: |
Line 57: |
| ==Wednesday, June 29, 2022== | | ==Wednesday, June 29, 2022== |
| * Reorganize and test ''brep_arbintersection'' project | | * 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
| |
− |
| |
− | ==Monday, August 15, 2022==
| |
− | * Sleuthing on the math about Casteljau algorithm and nurbs of source code.
| |
− | for Casteljau algorithm: https://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/spline/de-casteljau.html
| |
− | for nurbs of order 2 with weight,the answer is correct if we multiply the original coordinates of control point 2 by the factor 1/w2.
| |
− | * Debug rhc bottom drawing by changing the weight of second control point.
| |
− |
| |
− | ==Tuesday, August 16, 2022==
| |
− | Begin debugging epa primitive brep converting.
| |
− | * Test to convert epa into brep format in different position and rotation, find the upper part stay still at the origin point.
| |
− | * Look into math expression and algorithm of nurbs surface.
| |
− |
| |
− | ==Wednesday, August 17, 2022==
| |
− | * Try to pan all the control points according to epa primitive position, the nurbs surface git into chaos.
| |
− | * Guess the reason is similar to the nurbs curve, look into math expression and drawing algorithm of nurbs surface.
| |
− |
| |
− | ==Thursday, August 18, 2022==
| |
− | * Look into rotating NURBS surfaces by transforming controls points.
| |
− | * Try to write a transform function of NURBS surface.
| |
− |
| |
− | ==Friday, August 19, 2022==
| |
− | * Read nurbs surface source codes, find the function already done in OpenNURBS.
| |
− | * Fix pan transform by caculating a pan matrix of 4x4.
| |
− | * Study usage and caculation of transform matrix according to [https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_03.pdf ppt1] and [https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_04.pdf ppt2].
| |
− |
| |
− | ==Saturday, August 20, 2022==
| |
− | * Try to caculate the rotation matrix by rotate axis and degree according to page 10 of [https://sites.cs.ucsb.edu/~lingqi/teaching/resources/GAMES101_Lecture_04.pdf ppt2], failed.
| |
− | * Find the transform can be divided into one pan and two rotation(the 1st is axis rotation, the 2rd is rotation around axis). Sleuth math expression and code. Result failed.
| |
− |
| |
− | ==Sunday, August 21, 2022==
| |
− | * Find the transform is related to coordinate systems transform, study it according to [https://stackoverflow.com/questions/34391968/how-to-find-the-rotation-matrix-between-two-coordinate-systems forum]
| |
− | * Caculate and combine rotation matrix. origin shift rotation matix and pan vector, solve the epa brep converting problem.
| |
− |
| |
− | ==Tuesday, August 23, 2022==
| |
− | * sleuth the formula about hyperbola according to [https://pages.mtu.edu/~shene/COURSES/cs3621/NOTES/spline/NURBS/RB-conics.html Rational Bézier Curves]
| |
− | * sleuth the formula of drawing rhc primitive codes.(rhc.c rt_rhc_plot())
| |
− | * sleuth the formula of caculating control points and weights of NURBS of hyperbola.(rhc_brep.cpp rt_rhc_brep)
| |
− |
| |
− | ==Wednesday, August 24, 2022==
| |
− | * Caculate control points and weights of hyperbola, debug hyperbola curve.[https://www.desmos.com/calculator/adbpzvkbjf reference link]
| |
− | * Fix and test drawing bottom face of rhc by modify control points and weights of NURBS.
| |
− |
| |
− | ==Thursday, August 25, 2022==
| |
− | * write a shell script to test rhc primitive brep converting.
| |
− | * test rhc primitive brep converting.
| |
− |
| |
− | ==Monday, August 29, 2022==
| |
− | * add a rotation for every primitive in sh/brep_primitive.sh and check whether the brep result are correct or not. --correct
| |
− | * Sleuthing on the math about getting points of hyperbola.(src/librt/primitives/rhc/rhc.c rt_mk_hyperbola())
| |
− |
| |
− | ==Tuesday, August 30, 2022==
| |
− | * reorganize brep_arbintersection function.
| |
− | * add a function creating sph boolean and brep matrix.
| |
− |
| |
− | ==Wednesday, August 31, 2022==
| |
− | * solve pull request conflicts with main.
| |
− | * add a function creating rcc boolean and brep matrix.
| |
− | * sort out my develop branches to create pull requests. [https://github.com/BRL-CAD/brlcad/pull/56 PR56][https://github.com/BRL-CAD/brlcad/pull/57 PR57]
| |
− |
| |
− | ==Thursday, September 1, 2022==
| |
− | * add command line argument to specific primitive.
| |
− | * reread ''bool_eval_development'' document.
| |
− |
| |
− | ==Friday, September 2, 2022==
| |
− | * optimize ON_Brep function (ON:Begin and ON:End) call positions.
| |
− | * run dplot, brep, overlay cmds to test which commands are still available and how to debug boolean function.
| |
− |
| |
− | ==Monday, September 5, 2022==
| |
− | * locating boolean error codes. --get_face_intersection_curves function return empty while testing, it's irregular.
| |
− | * config ''docbook'' to compile ''bool_eval_development''.
| |
− |
| |
− | ==Tuesday, September 13, 2022==
| |
− | * Look into and debug dplot.c.
| |
− | * read ''bool_eval_development'' about dplot usage.
| |
− |
| |
− | ==Wednesday, September 14, 2022==
| |
− | * Look into and track calling stack of every sub cmd of dplot cmd.
| |
− | * Use overlay function to plot boolean files, some files can't be plotted. Current version of the code can't introduce trim event.
| |
− |
| |
− | ==Thursday, September 15, 2022==
| |
− | * fix ''dplot_overlay'' function in dplot.c about passing parameters and calling overlay cmd.
| |
− |
| |
− | ==Friday, September 16, 2022==
| |
− | * erase all faces plot in the end of ''dplot * faces''.
| |
− | * test overlay cmd to plot faces of one cube. Overlay can't display multiple faces of one cube at the same time.
| |
− |
| |
− | ==September 19 to September 23==
| |
− | * leave for school things and COVID-19 policy
| |
− |
| |
− | ==Monday, September 26, 2022==
| |
− | * switch the origin commit to a previous version, make sure the brep cmd will introduce face trim operation to help debug dplot cmd.
| |
− | * display bool*_brep*_surface*.plot3 files instead of curves in dplot * faces
| |
− |
| |
− | ==Tuesday, September 27, 2022==
| |
− | * fix overlay all faces in ''dplot * ssx'' by using globbing.
| |
− | * dplot ssx event using bool*_highlight_brep*_surface*.plot3 files instead of ssx_event*.plot3, because some ssx_event*.plot3 and clipped_curve can't be plotted using overlay cmd.
| |
− |
| |
− | ==Wednesday, September 28, 2022==
| |
− | * test to overlay bool* files created by different cases and different commits.
| |
− |
| |
− | ==Thursday, September 29, 2022==
| |
− | * Configure the docbook compilation environment on windows.
| |
− | * update ''NURBS Boolean Evaluation Development Guide'' about dplot usage.
| |
− |
| |
− | ==Friday, September 30, 2022==
| |
− | * optimize files to be overlayed in dplot command.
| |
− | * plot faces and bool*_ssx*_event*.plot3 using "dplot * ssx *"
| |
− |
| |
− | ==Monday, October 3, 2022==
| |
− | * Read codes about how to get trimmed face before *8a508c8f* commit.
| |
− | * find why plot files can't be plotted using the overlay command. Reading codes creating and plotting them.
| |