fel88 / DeepNestPort

DeepNest C# Port
MIT License
78 stars 34 forks source link

What work is still remaining? #7

Closed theveloped closed 3 years ago

theveloped commented 5 years ago

Hi @fel88 thank you for the great project! In the readme you mention you are 80% finished with the project. Could you give us some insight on what still needs to be done and if there is any way we can contribute?

fel88 commented 5 years ago

Hello, svg import is incorrect, merged length and sheets with holes are not implemented at the moment, there are also probably some other hidden bugs that need to be found. I also planned to rewrite graphic part. I want to replace GDI with OpenGL. There are free DXF libraries that can also be integrated into this project. I don't have enough time to work on this project, so yes, sure , i'll be glad if someone can take a part and contribute to this project.

theveloped commented 5 years ago

Thank you for the quick reply! Seems like all the nesting itself is already fully working 👍

Are there any reasons for making the switch on the graphics part?

fel88 commented 5 years ago

Render is very slow now (if you have hundreds or thousands of shapes). GDI rendering is not implemented in an optimal way at the moment, because it recalculates each point in real time. It should be replaced with pre-rendered bitmaps of whole sheets (as in the original project). but i planned some kind of interaction with parts after nesting via gui. that's why i thought about OpenGL. Opengl is much more faster because it uses GPU, so it allows to render thousands of parts without any slowdown.

There are also some others things that can be improved in general: for example, I belive that identical shapes should be combined into one shape before nesting. but this is more about the original DeepNest project.

dsn27 commented 5 years ago

Hi. Thanks again for the great project. I was always hoping that someone would a project like this with C#. I want to try and help here too. This is my first Github expierence, so please bear with me if I'm doing something wrong.

I did try to complete the translation of the mergedLength function in the Background.cs. What do you think? Does this help you?

fel88 commented 5 years ago

Hello, it looks nice. I've commented your commit. Anyway try to test your code with real parts and compare results with original DeepNest project.