Latest revision |
Your text |
Line 1: |
Line 1: |
− | =Deliverables=
| |
− |
| |
− | Now I have committed 3 pull requests for the **Brep Editing Support in BRL-CAD** project. The final report, which summarizes the features and provides a vision for the future, is also attached at the following link.
| |
− |
| |
− | [https://github.com/BRL-CAD/brlcad/pull/80 Nurbs editing Milestone 1: Curve operations]
| |
− |
| |
− | [https://github.com/BRL-CAD/brlcad/pull/92 Nurbs editing Milestone 2: Surface operations]
| |
− |
| |
− | [https://github.com/BRL-CAD/brlcad/pull/97 Nurbs editing Milestone 3: topology operations]
| |
− |
| |
− | [https://brlcad.org/wiki/User:GregoryLi/GSoC2023/FinalReport Final Report for NURBS Editing]
| |
− |
| |
| =Development Logs= | | =Development Logs= |
| | | |
Line 124: |
Line 112: |
| ==Thursday, June 29th, 2023== | | ==Thursday, June 29th, 2023== |
| * Implement local cubic spline curve interpolation in BRL-CAD. | | * Implement local cubic spline curve interpolation in BRL-CAD. |
− |
| |
− | ==Saturday, July 1st, 2023==
| |
− | * Try to implement local cubic spline curve with variable number of points and last point coordinates.
| |
− | * Fix errors in PR.
| |
− |
| |
− | ==Monday, July 3rd, 2023==
| |
− | * Add ''curve remove'' function.
| |
− | * Add ''surface remove'' function.
| |
− | * Add ''curve split'' function.
| |
− | * Add ''surface split'' function.
| |
− |
| |
− | ==Tuesday, July 4th, 2023==
| |
− | * Want to implement curve interporation like Rhino. Reconsider about data Structures and functions.
| |
− | * Read ''typein'' about asking more arguments. ''GED_MORE'' is not supported in ''brep'' cmd yet.
| |
− |
| |
− | ==Saturday, July 8th, 2023==
| |
− | * Learn about ''surface interporation'' in ''The NURBS book''.
| |
− |
| |
− | ==Sunday, July 9th, 2023==
| |
− | * Learn about tensor product surface, as well as implemention in OpenNURBS.
| |
− | * Add ''brep .. surface tensor ..'' function.
| |
− |
| |
− | ==Monday, July 11th-18th, 2023==
| |
− | * One week away for meeting.
| |
− | * Update wiki about NURBS editing operations.
| |
− |
| |
− | ==Friday, July 21th, 2023==
| |
− | * Add ''surface revolution''function to create a NURBS surface by rotating a curve around an axis by an angle.
| |
− |
| |
− | ==Saturday, July 22th, 2023==
| |
− | * Learn about ''surface interporation'' in ''The NURBS book''.
| |
− |
| |
− | ==Tuesday, July 25th, 2023==
| |
− | * Learn about the relationship between curve/surface continuity and knot multiplicity.
| |
− | * Learn about knot vector of cubic curve, check previous curve interpolation functions.
| |
− |
| |
− | ==Wensday, July 26th, 2023==
| |
− | * Implement u/v knot vector caculation of surface interpolation.
| |
− |
| |
− | ==Friday, July 28th, 2023==
| |
− | * Caculate du/dv of each given vertices.
| |
− | * Read math formula about Duv, edge span. They are really confusing.
| |
− |
| |
− | ==Saturday, July 29th, 2023==
| |
− | * Read math formula about global curve interpolation. It can achieve C2 continuity between knots.
| |
− | * Read math formula about global surface interpolation.
| |
− |
| |
− | ==Sunday, July 30th, 2023==
| |
− | * Implement global cubic curve interpolation.
| |
− | * Read math formula about global surface interpolation.
| |
− |
| |
− | ==Monday, July 31th, 2023==
| |
− | * Caculate knot vector while interpolating bicubic surface.
| |
− | * Implement some functions of global surface interpolation.
| |
− |
| |
− | ==Tuesday, Augest 1st, 2023==
| |
− | * Implement global surface interpolation with C2 continuity.
| |
− | * fix get_nurbs_surf.
| |
− |
| |
− | ==Wensday, Augest 2nd, 2023==
| |
− | * Write two shell script to test new features of milestone 2.
| |
− | * submit PR of milestone 2.
| |
− |
| |
− | ==Thursday, Augest 3rd, 2023==
| |
− | * Check code format according to HACKING.
| |
− |
| |
− | ==Monday, Augest 7th, 2023==
| |
− | * Run and check source codes of Ayma about NURBS operations.
| |
− |
| |
− | ==Thursday, Auguest 10th, 2023==
| |
− | * Check code logic about running "kill" after NURBS operations.
| |
− | * Configuring the environment on a new computer.
| |
− |
| |
− | ==Friday, Auguest 11th, 2023==
| |
− | * fix bugs, remove "kill" after NURBS operations. Do some tests.
| |
− | * fix bugs, fix memory management.
| |
− |
| |
− | ==Sunday, Auguest 13th, 2023==
| |
− | * Check topology cmds to be implemented and examples.
| |
− | * Add topology editing module.
| |
− | * Add create vertex cmd. (is a geometric operation, but is temporarily in the topology subcommand)
| |
− |
| |
− | ==Monday, Auguest 14th, 2023==
| |
− | * Fix error in curve id judgement.
| |
− | * Add create topology edge cmd.
| |
− |
| |
− | ==Tuesday, Auguest 16th, 2023==
| |
− | * Read codes about creating loops.
| |
− | * Write test code about triangular prism
| |
− |
| |
− | ==Wensday, Auguest 17th, 2023==
| |
− | * Create topo faces
| |
− | * Implement 'create loop' function
| |
− | * Write test code about triangular prism
| |
− |
| |
− | ==Thursday, Auguest 18th, 2023==
| |
− | * Add 'brep .. surface extract_curve ..' function
| |
− | * Add 'brep .. surface ext_v ..' function
| |
− | * Add 'brep .. topo create_l ..' function
| |
− | * Some code refactor
| |
− |
| |
− | ==Saturday, Auguest 20th, 2023==
| |
− | * Try to understand operations in parameter space.
| |
− | * Add 'brep .. curve make_2dline ..' cmd.
| |
− |
| |
− | ==Sunday, Auguest 21th, 2023==
| |
− | * Add 'brep .. topo create_l ..' function
| |
− | * Add 'brep .. topo create_t ..' function
| |
− | * Write test code about cube with a piece cut out
| |
− |
| |
− | ==Monday, Auguest 22th, 2023==
| |
− | * Reclassify nurbs editing operations into geometric and topological operations
| |
− | * Create 'brep .. geo' subcmd
| |
− | * Move 'create_v' cmd to geo subcmd
| |
− | * Write test code about cube with a piece cut out
| |
− |
| |
− | ==Tuesday, Auguest 23th, 2023==
| |
− | * Move all geometry commands to 'brep .. geo ..'
| |
− | * Move all topology commands to 'brep .. topo ..'
| |
− | * Add remove functions for curve2d,vertex
| |
− | * Some code refactor
| |
− | * Write test code about cube with a piece cut out
| |