New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A3.7 & A3.8 from The Nurbs Book #33
Conversation
Codecov Report
@@ Coverage Diff @@
## master #33 +/- ##
==========================================
+ Coverage 76.78% 77.44% +0.66%
==========================================
Files 12 12
Lines 3088 3174 +86
Branches 668 686 +18
==========================================
+ Hits 2371 2458 +87
+ Misses 578 576 -2
- Partials 139 140 +1
Continue to review full report at Codecov.
|
I think you have deleted CONTRIBUTING.md by mistake :) That would be a good idea to undo it using Regarding to your suggestions:
I guess this is also possible. However, this kind of change will require a little bit more than you may anticipate, for instance dealing the with the abstract methods. Let me explain what I was thinking while working on the evaluators: An evaluator should provide the basic evaluation functionality, such as single and multiple knot point and derivative evaluation (you may consider checking out For the derivatives of the control points case, what I would recommend is first adding the method (e.g. After these implementations, a wrapper method may be added to It looks like a lot of work to do but written explanation takes more time than doing it. If it is too confusing for you, I can take care of this part pretty quickly, since we have all the algorithms right now.
I think this is acceptable. If it really works in that way with the default values you are providing, then I would not be against the change. Making the things a little bit easier is always accepted. For the default values, I would suggest putting them inside the wrapper function of the |
This reverts commit 7130a29.
By the way, I forgot to say thanks in my previous message @Nodl. This is an awesome job, I appreciate your time and efforts. Please let me know about your decision on adding |
Thanks for your comments. I am doing an internship to implement a nurbs library in C++ and i can't release it as free software, so i am happy to help on this project of yours. |
That's perfectly okay for me. Please take your time and let me know if I could do any help.
Don't worry on these. It happens nearly all the time in my other projects. As I explained before, you don't need to fetch all changes to your project before the merge.
Thank you very much @Nodli. I appreciate your help. |
I guess you have nothing to add to this PR @Nodli. Merging it now. Thanks! |
Actually i was implementing tests for the NURBS module but I think I found a bug in the computation of weights in derivative_ctrlpts for NURBS Curves and Surfaces. |
Anyway, I have already merged it. I will open a new issue for this problem. |
Hi,
I implemented both algorithms in SurfaceEvaluator2. Both deriv_ctrlpts and derivatives_single have tests in test_BSpline_Surface.py. derivatives_single is compared with its equivalent in SurfaceEvaluator1.
I added tests for deriv_ctrlpts for Curve in test_BSpline_Curve2D.py and test_BSpline_Curve3D.py.
Everything was tested with pytest for Python 2 and Python 3.
I ran prospector for Python 2 on what I added and left only the warnings related to super() and the number of variables in the functions. I tried the Python 3 version in case there are differences but could not make it work.
I have two suggestions related to these functions :
Let me know your thoughts on these, I can implement them if you agree.