Ghostkeeper
88a84f60e0
Make estimated_exec_time_in_ms just public
...
We're all adults here.
We need to modify this property in the fifth pass of move commands.
Contributes to issue CURA-5561.
2018-09-05 16:08:51 +02:00
Ghostkeeper
9a43ee4629
Fix kernel parameters
...
We did one the wrong way around and weren't safe enough with the other.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
2cc3a593ef
Store current feedrate when encountering it
...
Otherwise the feedrate is zero and we get divisions by zero.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
df8ee1928d
Fix parsing from value_dict
...
These are strings, not float. We must convert them.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
169b59a6b4
Remove superfluous _distance_in_mm property
...
It was only used for printing and not set correctly any more.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
b95ad2f926
Remove unused function
...
It was empty and unused. I don't know what or why.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
9d6b184cff
Leave out all commands which do nothing to time estimates
...
Just skip over them.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
cf5f66db9f
Align expected time of auxillary commands to what CuraEngine estimates
...
CuraEngine doesn't take most of these into its time estimate at all so they can just be 0.
Contributes to issue CURA-5561.
2018-09-05 16:08:50 +02:00
Ghostkeeper
bddfe44f2c
Make G10 and G11 behave just like actual retractions
...
That's what CuraEngine does anyway.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
4e7f8a268f
Implement calculating final time of movement commands
...
This includes accelerations, jerks, proper joints, all that sort of thing.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
515b286230
Implement recalculation of trapezoid if entry speed had changed
...
The fourth pass. It's a lot of work.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
944bf70eb5
Implement forward kernel pass
...
Copied from CuraEngine's C++ implementation.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
0ad644386e
Actually execute the reverse pass in reverse
...
As it should.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
5e85af30de
Implement reverse kernel
...
Taken from CuraEngine's implementation.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
dcbe832d9f
Implement the rest of the initial time estimation
...
This doesn't complete this task yet because we are still not outputting a correct time estimation for these commands. We're not outputting anything at all actually. We now need to implement the second pass (but only for G1 and G0).
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
1037b09188
Implement M203, setting maximum Z feedrate
...
It's important.
Contributes to issue CURA-5561.
2018-09-05 16:08:49 +02:00
Ghostkeeper
5d292e1a79
Remove state class usage
...
This is an effort to synchronize the working of this script with how CuraEngine's time estimation works. This includes tracking only one value for acceleration and multiple Jerk stuff, that sort of thing. We need to ensure it's exactly the same.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
c559763c88
Partially implement acceleration and jerk estimation algorithm
...
This stuff is complex and I hardly understand it. It's basically just a translation of the C++ code in the engine.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
5bf90df6be
Rename process() to parse()
...
Because we need to execute several other processing steps as well.
This parse function for G0 and G1 now needs to initialise the state in the same way as how Block is initialised in CuraEngine.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
594e3c986d
Add function to calculate trapezoid for block
...
Also copied from CuraEngine's implementation.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
582f06dfff
Add fields from CuraEngine
...
The idea of this issue is to mimic the implementation of CuraEngine. So let's transform its entire algorithm into Python.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
842ee7c00e
Reinstate the argument input
...
Otherwise I can't use it without creating a user 'lfei' or something.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Ghostkeeper
43a8894c64
Convert to Doxygen style comments
...
As per our code style.
Contributes to issue CURA-5561.
2018-09-05 16:08:48 +02:00
Lipu Fei
f4fe5784a7
Add script to analyze gcode
2018-09-05 16:08:47 +02:00