svenhb / GRBL-Plotter

A GCode sender (not only for lasers or plotters) for up to two GRBL controller. SVG, DXF, HPGL import. 6 axis DRO.
https://grbl-plotter.de/
GNU General Public License v3.0
674 stars 176 forks source link

Improve graphic visualization (specifically with tiling) #217

Closed amoineau closed 2 years ago

amoineau commented 3 years ago

Hi, I have two suggestions I would really like to see implemented to improve QoL :

Don't superpose tiles when using the tiling feature

Currently, when using the tiling feature every tile is displayed on top of each others, which makes the graph completely unreadable. Would it be possible to have the graph to be displayed "as is"?

Form color

Would it be possible for the forms to be drawn using the layer / tool color? This would allow for a much better understanding of what is going to happen and immediately notice if a form is not matched with the correct tool.

svenhb commented 3 years ago

Currently, when using the tiling feature every tile is displayed on top of each others, which makes the graph completely unreadable. Would it be possible to have the graph to be displayed "as is"?

Because all XY coordinates of all tiles are in the same range... No idea at the moment how to improove that.

Would it be possible for the forms to be drawn using the layer / tool color?

Should be possible - will check

amoineau commented 3 years ago

Because all XY coordinates of all tiles are in the same range... No idea at the moment how to improove that.

I see :/ Do you think you will have time to look into it in a near future or does it fall in the "not worth the effort" category ? ^^'

Should be possible - will check

That would be a nice addition, thank you !

amoineau commented 3 years ago

I just wanted to specify that hiding the shapes that are not on the current tile could be a solution too. If it's simpler to achieve.

svenhb commented 3 years ago

I just wanted to specify that hiding the shapes that are not on the current tile could be a solution too. If it's simpler to achieve.

I need a good reason / context / switch: why to hide figures in the 2D view that are programmed in G-code. What is your command to move to next tile - maybe that's a starting point to seperate the tiles.

amoineau commented 3 years ago

I see, the command I run between tiles is (^3 $CP1000). It tells the conveyor to move forward 1000 mm. But maybe to avoid depending on a specific, per person, command, you could add your own 'empty' command that just mark the end of a tile ? It's really just an idea thrown like that.

svenhb commented 3 years ago

I added the suggested features: https://github.com/svenhb/GRBL-Plotter/releases Note new option: image

amoineau commented 3 years ago

Wow thank you, I'll try that today !

amoineau commented 3 years ago

Once again, it's some really nice work :

image

(Here I chose a very hollow file with only two tiles just to keep the readability, but imagine 6 very busy tiles ^^).

It would be amazing if the green tracing happened on the "real shape" plan. Do you think it would be remotely possible ? That way we would have every possible information with complete readability !

I'm sorry to ask so much of you, I would understand if you wanted to keep it there. I just feel like the tile feature would be so neat and complete with that. (I hope I am not the only one using it because it would be a shame)

svenhb commented 3 years ago

It would be amazing if the green tracing happened on the "real shape" plan. Do you think it would be remotely possible ? That way we would have every possible information with complete readability !

I understand the problem, but not your suggested solution. Perhaps: Within the working area you want only to see the figures of the actually proccessed tile?

amoineau commented 3 years ago

I made the worst paint edit in hope that it would be clearer than words x) :

image

I wished the green tracing that overwrites the processed shapes, would actually overwrite the shapes (even after the first tile). Right now the green lines are all stacked on the "machine" plan.

I don't know if this is any clearer, don't hesitate to ask again ! ^^

amoineau commented 3 years ago

The drawback would be that the black cursor would be moving alone in the machine plan, but hey, you can't have it all ;)

svenhb commented 3 years ago

Like this? https://github.com/svenhb/GRBL-Plotter/blob/master/GRBL-Plotter_Setup_1611_20190906.exe

amoineau commented 3 years ago

I got this :

image

(The exterior of all sails has been processed on both tiles)

The green tracing doesn't stack on the machine plan but it doesn't seem to appear elsewhere either :( And in the areas I circled there are some artefacts, but maybe it is not related to the changes.

svenhb commented 3 years ago

Can you try to hide the limit area? I think it's a problem with the red grid.

amoineau commented 3 years ago

I got a similar result (with a bonus glitch) :

image

Is that what you wanted me to try ?

svenhb commented 3 years ago

How does it look, if you simulate the path?

amoineau commented 3 years ago

It's much better but it tends to draw green lines where they shouldn't be :

image

This time it seems to have done it only once (Edit : twice actually), but the first time I tried I had lot of green lines linking shapes between them. (didn't get a capture because I didn't know everything disappeared when done ^^')

svenhb commented 3 years ago

This means:

Is this correct?

amoineau commented 3 years ago

Yes, I will try with a file more than two tiles long just to make sure. Edit : I tried on a 12 tiles file and it worked well in simulation, same problem with real process.

svenhb commented 3 years ago

Good to know, will try to fix it

amoineau commented 3 years ago

Thank you ! Good luck ^^'

svenhb commented 3 years ago

Try https://github.com/svenhb/GRBL-Plotter/blob/master/GRBL-Plotter_Setup_1611_20210907.exe

amoineau commented 3 years ago

I'm running the tests but for now the thing I noticed is that the dark green lines representing the pen path are slightly broken :/

image

amoineau commented 3 years ago

It worked on that file !

image

Edit : I tried other files and it worked as well. Apart from the pen up path being weird they are also some intense glitches with the light green tracing. The worst of the glitches seem to disappear at the end though ^^

svenhb commented 3 years ago

Little improovement with pen-up path: https://github.com/svenhb/GRBL-Plotter/blob/master/GRBL-Plotter_Setup_1611_20210908.exe

amoineau commented 3 years ago

Hi, sorry I am on a business trip since yesterday, I'll check it next week. Thank you again :)

amoineau commented 3 years ago

Hi ! I finally got time to test it and it seems to be working well, thank you :)

I showed the previous version to the people who are going to use the machine and they found it confusing that the graphic doesn't shift left into the machine limit when moving to the next tile... I know we are straying further and further from the original purpose of your software but do you think it would be hard to offset the visual after each tile ?

What they want would be to always have the current tile inside the machine limit (and that way the black cursor would stay on the graphic). I'm really hoping they will be satisfied after that so you can close this issue :/

amoineau commented 3 years ago

Hello, did you consider my request ? I would understand if it was a no ^^'

svenhb commented 3 years ago

What they want would be to always have the current tile inside the machine limit (and that way the black cursor would stay on the graphic).

I tried to implement, but you have to live with strange behavior of the progress path. You need to wait until the next release - perhaps next weekend.

amoineau commented 3 years ago

Ok sure, It's really not a pressing matter ! I simply wasn't sure you saw my last messages considering I took quite some time to answer yours last time, you might have moved on ^^ Thank you.

svenhb commented 3 years ago

Improoved behavior of progressed path display: https://github.com/svenhb/GRBL-Plotter/blob/master/GRBL-Plotter_Setup_1_6_2_1.exe

amoineau commented 3 years ago

Hello, I tried it this morning and the shifting of the shape is working but the "pen up path" tracing doesn't follow and the pink cursor seems to get stuck : image

A more minor problem, the "interactive shapes" keep their original position :

image

When I click on a shape it selects the shape that was originally there, as you can see in yellow.

svenhb commented 3 years ago

Too much work to change it, perhaps I disable pen-up path and selections during streaming

amoineau commented 3 years ago

understandable

amoineau commented 2 years ago

Hello sven, would it be possible to have the option to toggle the shifting feature made in 1.6.2.1 ? Considering that it comes with some considerable drawbacks for now it would be great if the operators could choose between shifting and no shifting.

svenhb commented 2 years ago

Check new release: https://github.com/svenhb/GRBL-Plotter/releases Perhaps a bit improovement of behavior if "Move the tiles" is enabled. image

amoineau commented 2 years ago

Ok, I'll try that as soon as I can, thank you.

amoineau commented 2 years ago

I tried it and it seems to have two problems (which might be the same) :

image

Here we can see the green light tracing for the first tile is missing and is currently being drawn on the current position of the first tile.

Apart from that, having the option to switch between both mode is really great and everything else seems to be working very well !

svenhb commented 2 years ago

Hard to understand, perhaps you can make a short video? With my test data it looks as expected.

amoineau commented 2 years ago

Short video will be hard, the files are rather long to process and i'm really not well versed in video capture with what I have at work. But I will try to make step by step captures to explain better. In the meantime here is the file if you want to try it and see if you get a different result than my previous screenshots :

dxf-sample-amoineau.zip

Maybe some settings are interfering with each other, in my config and not yours...

Here is my config if it can help : GRBL-Plotter_amoineau.zip

amoineau commented 2 years ago

When I start, the first tile is processed normally : processing-first-tile

When the first tile is finished, the green tracing is perfect : first-tile-processed

Then the graph is shifted to the left, as expected, but the green tracing drawn until then disappears : just-after-shifting

Now we are processing the second tile, and the green tracing is being drawn correctly, albeit one tile to the left : processing-second-tile

At the end of the second tile we have this : second-tile-processed

amoineau commented 2 years ago

Does this help you understand ?

svenhb commented 2 years ago

Does this help you understand ?

Yes

Then the graph is shifted to the left, as expected, but the green tracing drawn until then disappears :

that is intentional, otherwise each tile needs to get a seperate "processed" path.

Now we are processing the second tile, and the green tracing is being drawn correctly, albeit one tile to the left :

this looks wrong and is different to my intention and tests - the green path should appear in the work area of the current tile...

svenhb commented 2 years ago

Perhaps you can also show your tool-table "laser_pen_default.csv"?

svenhb commented 2 years ago

I edited the last release: https://github.com/svenhb/GRBL-Plotter/releases

1.6.2.3

amoineau commented 2 years ago

Then the graph is shifted to the left, as expected, but the green tracing drawn until then disappears :

that is intentional, otherwise each tile needs to get a seperate "processed" path.

That's understandable, and really not a problem indeed, considering we already know on which tile we are when using this mode.

amoineau commented 2 years ago

Perhaps you can also show your tool-table "laser_pen_default.csv"?

Sure : image

amoineau commented 2 years ago

I edited the last release: https://github.com/svenhb/GRBL-Plotter/releases

Thank you ! I will try to test it today.

Edit : I can't test it today because I have no board available, and after today I'm on sick leave until the 15th...

svenhb commented 2 years ago

Here is my config if it can help :

BTW,, to reduce G-Code size and communication load, I would use just 2 decimals image

and enable "Remove very short moves" with perhaps 0.5? Should be accurate enough in this dimensions. image

amoineau commented 2 years ago

Thanks for the advice !