That's what make sense to me.We absolutely need to build a rotation/translation tool to establish a 'work coordinate system' for the job but the operations will still operate in the XY plane with Z+ as 'up'.
How selection planes work ?
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
Re: How selection planes work ?
Re: How selection planes work ?
Hi All
I am using a hot wire cutter on my cnc mill and would like to produce gcode in the YZ plane using G19 can it be done, the method I have been using is to change all the X to Ys and Y to Zs which is a bit cumbersome is there a easier way.
https://youtu.be/UIS5F95u8u4
OS: Windows 10 (10.0)
Word size of FreeCAD: 64-bit
Version: 0.20.25844 (Git)
Build type: Release
Branch: master
Hash: 1b20118dfa3fb9f127f0e4fb122701f7fcdaa9fc
Python version: 3.8.12
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.5.2
Locale: English/United Kingdom (en_GB)
I am using a hot wire cutter on my cnc mill and would like to produce gcode in the YZ plane using G19 can it be done, the method I have been using is to change all the X to Ys and Y to Zs which is a bit cumbersome is there a easier way.
https://youtu.be/UIS5F95u8u4
OS: Windows 10 (10.0)
Word size of FreeCAD: 64-bit
Version: 0.20.25844 (Git)
Build type: Release
Branch: master
Hash: 1b20118dfa3fb9f127f0e4fb122701f7fcdaa9fc
Python version: 3.8.12
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.5.2
Locale: English/United Kingdom (en_GB)
- sliptonic
- Veteran
- Posts: 3459
- Joined: Tue Oct 25, 2011 10:46 pm
- Location: Columbia, Missouri
- Contact:
Re: How selection planes work ?
If you really want to work that way, it should be pretty easy to write a custom postprocessor to do the axis substitution for you. It won't be ideal.
Path really can't do this kind of toolpath yet. You might go looking for dedicated 4 axis foam cutting software. This is one. https://www.jedicut.com/en/
Path really can't do this kind of toolpath yet. You might go looking for dedicated 4 axis foam cutting software. This is one. https://www.jedicut.com/en/
Re: How selection planes work ?
Thankyou Sliptonic for your reply, I didn't really want to learn another program I've been using freecad since .14 and only use foam cutting very occasionally.
I looked at writing a new post processor but couldn't really understand how to go about it, so with the help of python tutorials on youtube and google I wrote a script to do the job. I must say mainly out of interest.
If it is of any use to anyone its at https://github.com/joneb1/GCode-Axis-changer-XY-to-YZ
This is my first time writing a python script and using Git hub so bare with me any coments gratefully received
Regards
John
I looked at writing a new post processor but couldn't really understand how to go about it, so with the help of python tutorials on youtube and google I wrote a script to do the job. I must say mainly out of interest.
If it is of any use to anyone its at https://github.com/joneb1/GCode-Axis-changer-XY-to-YZ
This is my first time writing a python script and using Git hub so bare with me any coments gratefully received
Regards
John
- sliptonic
- Veteran
- Posts: 3459
- Joined: Tue Oct 25, 2011 10:46 pm
- Location: Columbia, Missouri
- Contact:
Re: How selection planes work ?
Awesome! There's no better way to learn than to jump in.Joneb wrote: ↑Sun Jul 10, 2022 9:39 am I looked at writing a new post processor but couldn't really understand how to go about it, so with the help of python tutorials on youtube and google I wrote a script to do the job. I must say mainly out of interest.
If it is of any use to anyone its at https://github.com/joneb1/GCode-Axis-changer-XY-to-YZ
This is my first time writing a python script and using Git hub so bare with me any coments gratefully received
I haven't done a thorough review of the script but I can offer a couple comments:
Rather than explicitly opening and closing files, use the 'with' context manager.
As you have it written, there's logic between when the file is opened and when it's explicitly closed. If something unexpected happens, the file will be left open. Also, if someone works on the code later, they could change the flow and cause the same problem. Using the 'with' means the file is automatically closed when it goes out of scope.
You're doing a lot of work to read and write to disk. Probably not necessary. Reading/writing to disk is orders of magnitude slower than RAM and RAM is slower than cache. Unless you KNOW you're going to be processing really big files, I would error on the side of working in memory. By 'big' I mean more than one million lines.
I see this pattern in a few places
Code: Select all
file = ["preamble.txt", "gcode_mod.txt","postamble.txt"]
for index in file:
Code: Select all
files = ["preamble.txt", "gcode_mod.txt","postamble.txt"]
for file in files:
Code: Select all
files = ["preamble.txt", "gcode_mod.txt","postamble.txt"]
for index, file in enumerate(files):
print( f"the index is {index} and the file is {file}")
>>>the index is 0 and the file is preamble.txt
>>>the index is 1 and the file is gcode_mod.txt
>>>the index is 2 and the file is postamble.txt
- sliptonic
- Veteran
- Posts: 3459
- Joined: Tue Oct 25, 2011 10:46 pm
- Location: Columbia, Missouri
- Contact:
Re: How selection planes work ?
Related to speed, there's this analogy:
L1 cache - There is a sandwich in front of you.
L2 cache - Walk to the kitchen and make a sandwich
RAM - Drive to the store, purchase sandwich fixings, drive home and make sandwich
HD - Drive to the store. Purchase seeds. Grow seeds..... .... ... Harvest lettuce, wheat, etc. Make sandwich.
L1 cache - There is a sandwich in front of you.
L2 cache - Walk to the kitchen and make a sandwich
RAM - Drive to the store, purchase sandwich fixings, drive home and make sandwich
HD - Drive to the store. Purchase seeds. Grow seeds..... .... ... Harvest lettuce, wheat, etc. Make sandwich.