LinuxCNC Features - a kind of NGCGUI
Need some help in converting strings manipulating functions to support unicode.
I was thinking of including fonts with Features, because people normally dont have cxf fonts installed on machine controllers.Since we can not know what fonts someone has on his computer, we can not use a combo unless including all the font files in a specific directory.
still, great idea on file chooser dialog. I am thinking about dwg2gcode and image2gcode feature, were this will be useful.
There is an idea in my head for a GUI based around Features as the default programming mode, so it would in run mode show the progress trough the tree list of Features instead of G-Code. Something similar to Shopmill cycles on Sinumerik, but better.Features integrates very well with gmoccapy now.
Please Log in or Create an account to join the conversation.
Would that help?
Norbert
Please Log in or Create an account to join the conversation.
Don't you think that image2gcode is a bit slow for realtime preview?I am thinking about dwg2gcode and image2gcode feature, were this will be useful.
But still it can be included with turning off auto-refresh.
Please Log in or Create an account to join the conversation.
Cycle input - parameters names are strange at first, but it changes pictures when you list trough them, so it is very intuitive
The program then looks like that. Cycles are just a normal subprogram call, but when you put cursor on that line and press a button you instantly get back to cycle input screen so you can change parameters.
I would do something similar with integrating Features in gmoccapy.
It doesn't need to call program everytime - it should save the returned code and call the program only when user changes parameter in that feature, and normally refreshing preview with cached G-code. This could easily be done, right?Don't you think that image2gcode is a bit slow for realtime preview?
Please Log in or Create an account to join the conversation.
Thanks for your proposal. The gcode window does not take much space and I like to see what happens when I debug. In Features preference dialog, we can specify the width we need. On my 24" screen, it is pretty good but maybe many shops use a smaller touch screen and could appreciate some re-organization.I could add a user tab place, to gmoccapy, hidding the gcode if the special features tree would be placed there.
Would that help?
Norbert
I personnaly do not think the way it is now is a handicap
Regards
Fern
Please Log in or Create an account to join the conversation.
I downloaded your files and used them. You work is quite impressive. However, I made a few changes to the ini file trying to make it easier to use and take advantages of the latest mods to Features. I think a few more changes could be done because you have many, many parameters possible and it could easily be confusing.
I also noticed a few glitch that should be adressed before adding in Features package
- Some fonts generate exceptions like GreekC, GreekCS, GreekP, GreekS, SansNS, Symbol_Astro, Symbol_Misc2 and Unicode
There are 2 type of errors and I do not know if it is the cxf font or is there a bug in the application
Until it is fixed, we should exclude them from the combo box - Mirror option acts on a char by char instead of mirroring the whole line. If engraved on the back of plexiglass, LinuxCNC would read CNCxuniL when returned
- Flip has a similar problem. I found a work around by setting line spacing to a negative value but IMHO it should flip the whole lines
- Not an error or bug but if we use it with Features it should not add a Pre- or post-amble. Features does this already but it is OK to use in a command line, Leave it there but I think it should be excluded from the ini file
About ttt, I edited the file and I am satisfied enough to include it. Not as many options as you added, but it should do the job for someone wanting TrueType Font
Lastly, for your information, ALL basic shapes (circle, rectangle, slots, ellipse and polygon) have the option of creating a pocket without voiding any of their other options.
It is on my task list of revisiting the ngc files after I uploaded latest version because pocketing does not spiral but start with the smallest size, mill it then enlarge until the pocket is created at the full size. I think it could work with smaller, less powerfull milling. I will add the option to spiral.
There are some gcode generators that could be adapted to include in Features like Facing Software and Grill Drilling Software and everything for a lathe
I allready have Counterboring done and I am almost finished with a polyline that could have up to 170 segments/arcs.
All the ngc files I create use tool diameter compensation except TTEngraving
Regards
Fern
Please Log in or Create an account to join the conversation.
Maybe you could add dynamic user tab, that would open from the right side and cover complete right half of display (axes, program, spindle,..) like a dynamic toolbars that we are used on some windows programs. So one could just hide it when not needed. On 15 inch toucshcreen it is indeed hard to work with embedded tab. I personaly use features standalone on top of gmocapy, but I have to constantly ALT+TAB it, because I dont have a mouse on machine, only TS and keyboard, and I want to get rid of the keyboard too.
Fernand,
New version looks GREAT!
Thanks for testing and the comments about my engrave. I wil try to fix mirror and flip bugs as soon as i find the time. Get rid of pre- and postamble, just put a string containing one space ' ' in INI instead of #param_.... .
about those fonts, they are not following the QCAD3 standard, so they dont work. I forgot to exclude them. If someone has the time, it should be easy to translate to qcad3 format, just open fonts in text editor and you will see the difference. Until then, we should just exclude them, there are enough fonts anyway.
Pockets could really be reworked a bit. Circles and similar shapes could be easily done with spiral moves, but for squares and rectangles, I would go in an alternating arc moves, so you could achieve some kind of constant cutter engagement in material. Sharp edges and direction changes should be avoided as much as possible, or at least feed lowered there. I would do something like that:
-1. spiral plunge to per-pass-depth
-2. spiral or some other kind of pocket rough with some stock left for finishing
-3. finishing inside the pocket cutting leftover from roughing on the walls of a pocket.
-4 repeat 1-2-3 until #_depth
Maybe I will try to do something there ^^....
I will also make a thread milling feature, I will need it in a near future...
Please Log in or Create an account to join the conversation.
I just tested/debugged engrave-feature and here is what I found.
GreekP_xxx.cxf identifies a character as '[A]' while all other font files that work identifies it as '[0041] A'
If I change '[A]' with '[0041] A', it works.
I can not edit engrave-feature because of idents, look what I get
and trying to reformat does not do it simply, I would have to do it manually and understand all your coding.
I suggest you change something in parse function in the 'for text in file:' loop to identify when it starts a new character in both format '[A]' or '[0041] A' and add it to the dictionnary. I also noticed that these are the only lines that start with '['
Presently ALL 'L' lines are added but no ID. That is why these lines raise an exception
font_line_height = font['A'].get_ymax() # using letter A as base for calculating text size
font_word_space = font['A'].get_xmax() * WSpaceP
font_char_space = font_word_space * CSpaceP
I also noticed that Unicode.cxf was not in the fonts directory but worked after I downloaded.
Symbol_Astro and Symbol_Misc2 return a different error code 'list index out of range'. Last char for Astro is 'F' and for Misc2 it is 'K' but even trying Astro with ABCDEF, it throws an exception until I added a new line at the end. Same happened with Misc2 and 'K'.
My conclusion is that these 2 font files are OK but limited in their rendering.
Fern
Please Log in or Create an account to join the conversation.
I will do something about that later.Symbol_Astro and Symbol_Misc2 return a different error code 'list index out of range'. Last char for Astro is 'F' and for Misc2 it is 'K' but even trying Astro with ABCDEF, it throws an exception until I added a new line at the end. Same happened with Misc2 and 'K'.
We should focus more on unicode bug fix. There are fonts that have unicode chars included, but are not interpreted ok when parsing. Try some russian or japan, chineese character, you will see. I need some help with this issue.
EDIT: made a simple script for converting fonts that didnt work, converted fonts attached.
Please Log in or Create an account to join the conversation.
Greek fonts should work now.
Something I found in TrueType Tracer did not make much sense to me. When using flipped+mirrored together, the result was the same as rotating 180°. I edited to use a 'mode' with 3 combo options : Normal, Mirrored, Flipped
Now only one option can be selected
Do you know that more than 500 TT fonts can be engraved, including unicode ? I was not aware of so many fonts.
Regards
Fern
Please Log in or Create an account to join the conversation.