3D Surface: 4th-axis Integration and more...

Here's the place for discussion related to CAM/CNC and the development of the Path module.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
Russ4262
Posts: 953
Joined: Sat Jun 30, 2018 3:22 pm
Location: Oklahoma
Contact:

Re: 3D Surface: 4th-axis Integration and more...

Post by Russ4262 »

Afternoon All.
I have updated the Properties section of the Path_3DSurface wiki page. It will add some support to those who make use of it. The 'Usage' section is still lacking. Perhaps we can work together on that.

Russ
Russ4262
Posts: 953
Joined: Sat Jun 30, 2018 3:22 pm
Location: Oklahoma
Contact:

Re: 3D Surface: 4th-axis Integration and more...

Post by Russ4262 »

Evening, Sir.
Sorry I missed this post.
RatonLaveur wrote: Fri Jun 14, 2019 11:00 am When I activate the Rotational option, then my memory usage goes to the brim and stays there, computer frozen of course. After a while, the path is generated but the memory usage does not abate! Which mean my computer is extremely slow until it musters the energy (and time) to kill the FreeCAD process.

Is that expected even after the computation is completed? or is that a memory dump issue that could be resolved?
I will address a couple points here.

1.) Rotational scans are many times more intense and demanding than the planar 3D surface scan. Therefore, more time and computer resources are required for the end result.

2.) I cannot say that the current version of 3D Surface is the most efficient piece of code I have developed here with FreeCAD. 3D Surface was my first big project to work on. I learned a lot in the many hours and days I spent developing and troubleshooting and testing and recoding the operation to arrive at the current version. That said, the operation would benefit from me going back with my improved coding skill set and look at how the set of sub-processes are implemented and pieced together. When I submitted the PR with the current version I knew it was not as efficient and clean as it should or could be, and that it had some bugs. It was mostly functional and I was really excited.

3.) Continuing from #2, I think there may be some memory issues caused by poor coding in the operation. I know there are some long `for` loops and functions/methods that I would like to break into smaller pieces in an attempt to simplify the code and make it more memory friendly. I think I could rework the structure a little to make better use of cycles and functions to allow for better garbage collection and efficiency. So, there might be a memory issue related to the code. I have bounced around to various projects over the past few months and have not sat down lately to invest more time in the 3D Surface op.

I would like to say thanks for all your support, testing, feedback, and prayers (that I get it right on the seventh time). I'm trying to bring some of my other contributions here on FC down to a more manageable pace of development so I can address some of these other issues I have caused that need some polishing and improvement.

Working on FC is quite fun. I hope to continue at a healthy pace and level of involvement so as to see this through for the long term. And, eventually, I hope to relocate my machine to my house and power it up for some dust-slinging, chip-flying, stepper-hummin', multi-layer cuttin', part designing, iso viewing, depth correcting, path producing, plain old computer aided power tool fun.

Sincerely,
Russell
RatonLaveur
Posts: 991
Joined: Wed Mar 27, 2019 10:45 am

Re: 3D Surface: 4th-axis Integration and more...

Post by RatonLaveur »

Awesome answer. You make cool stuff. To be honest the journey is just as exciting as the perspectives. All i can do is bitch and moan in the most polite and constructive way possible. As another one of my running posts may end up revealing, there seems to be an interesting endeavor for optimizing other parts of Freecad code. So don't worry. Keep having fun.
User avatar
sliptonic
Veteran
Posts: 3459
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: 3D Surface: 4th-axis Integration and more...

Post by sliptonic »

BTW. There's a memory leak that affects python 3 users. It's not related to this functionality or even Path specific but it's particularly noticeable here.

If you have path open with a moderately large model. It will consume 15 GB over night. Be warned!(issue #3993)
Last edited by Kunda1 on Thu Jun 20, 2019 1:15 pm, edited 1 time in total.
Reason: tagged the bug ;)
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: 3D Surface: 4th-axis Integration and more...

Post by freman »

link in top post with filename for 3w has this in its header:

Code: Select all

# *   Version: Rev. 3t Usable   
Is this the correct version for 3w for which the version in the header missed the version bump?

thx
Russ4262
Posts: 953
Joined: Sat Jun 30, 2018 3:22 pm
Location: Oklahoma
Contact:

Re: 3D Surface: 4th-axis Integration and more...

Post by Russ4262 »

freman wrote: Sun Jun 23, 2019 7:50 am link in top post with filename for 3w has this in its header:

Code: Select all

# *   Version: Rev. 3t Usable   
Is this the correct version for 3w for which the version in the header missed the version bump?

thx
Yes, this is the most recent version I have uploaded. It has a few fixes and improvements over what is available in the master with nightly builds.

The quoted code you included is around line 27 in the script. If you scroll down to around line 77 you will see additional version info. I need to delete the first statement of version info in the commented section you quoted so as to avoid conflicting messages.

Enjoy the usage. I need to work on the usage section in the wiki for 3D Surface, Path_3DSurface, but the properties section should be up to date so as to provide a little assistance. This tool does have some bugs still, but works well enough. It is not a finished product, and I appreciate any feedback for feature improvements or bugs.

If you have questions for usage, please post here in this topic. FYI, the task window editor settings do not include all additional settings available. Once you get the initial operation created, use the properties list in the Data tab of the Combo View to change additional settings for the operation, like rotation or waste. I'll try to get some more detailed usage information into the wiki in the next few days - considering the long list of properties and features available in this operation.

Thanks Freeman,
Russ
User avatar
freman
Veteran
Posts: 2214
Joined: Tue Nov 27, 2018 10:30 pm

Re: 3D Surface: 4th-axis Integration and more...

Post by freman »

OK, I just wanted to make sure there wasn't a glitch on the uploads. I went to check the header to make sure when I was renaming the version in master ( double checking what I was doing ) , at first I thought I'd messed up . I grabbed the down load again and then wasn't sure whether this was the intended copy. Obviously, having found the information I was looking for I did not look any further. Deleting the version comment line would be a good solution.

Thanks for the clarification, and thanks for coding this, it is a great addition to the straight up and down 2.5D moves currently available.

Your wiki page is already fairly detailed, I'll check back in a few days for the full picture.

I'll try to give this some more testing and give you feedback on anything relevant. This will be a big plus to FreeCAD. ( As will 4th axis: the next stage I hope to add to my hardware ).
Russ4262
Posts: 953
Joined: Sat Jun 30, 2018 3:22 pm
Location: Oklahoma
Contact:

Re: 3D Surface: 4th-axis Integration and more...

Post by Russ4262 »

Evening fellow FC enthusiasts,

This evening I updated the Usage section of the Path_3DSurface wiki page for this operation. It could use some imagery to tie the textual instructions to the results. It is a great step forward for helping FC users that look to the wiki.

Russ
Erich Schulz
Posts: 141
Joined: Tue May 07, 2019 10:50 pm
Location: Brisbane, Australia

Re: 3D Surface: 4th-axis Integration and more...

Post by Erich Schulz »

Heya Russ,

I'm finally running with a working FC 19 and path (and for what it is worth OCL)

I'm just checking - there seem to be some rotational parameters in the 3D surface operation - does this mean your scripts are in the current build?

or do I still need to manuallly download them and install?

am keen to help test this stuff :-) maybe even play with code if I can understand where to start
Erich Schulz
Posts: 141
Joined: Tue May 07, 2019 10:50 pm
Location: Brisbane, Australia

Re: 3D Surface: 4th-axis Integration and more...

Post by Erich Schulz »

actually - n'e mind I'm going to take that as a "yes, FC 19 daily can do 4th axis"

woooohooo!!
Screenshot from 2019-06-27 22-20-35.png
Screenshot from 2019-06-27 22-20-35.png (131.51 KiB) Viewed 1180 times
Post Reply