Commit graph

16749 commits

Author SHA1 Message Date
Ghostkeeper
de43711226
All times in seconds instead of milliseconds
Everything in our tool chain works in seconds. Let's do that here too. Also, the algorithm from CuraEngine works in seconds as well.

Contributes to issue CURA-5561.
2018-09-05 16:08:51 +02:00
Ghostkeeper
f93a82041d
Fix typo
Contributes to issue CURA-5561.
2018-09-05 16:08:51 +02:00
Ghostkeeper
df435a4cf9
Don't recalculate last trapezoid if last command is not a move
I think we're just missing the last trapezoid then sometimes. Let's see what the effect of that is.

Contributes to issue CURA-5561.
2018-09-05 16:08:51 +02:00
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
Mark
68a62f1a66 Merge branch 'master' into fix_layer_number_width 2018-09-05 14:50:12 +02:00
Mark
f18d9fed97
Merge pull request #4316 from stelgenhof/master
Add Creality Ender-3 machine definition
2018-09-05 14:46:37 +02:00
Jaime van Kessel
57a7c3bcd2 Decrease margin for "manage queue" label
CL-896
2018-09-05 14:26:11 +02:00
Jaime van Kessel
534e60d8e1 Added pausing text for pausing state
CL-896
2018-09-05 14:22:41 +02:00
Jaime van Kessel
8e66686d6f Change "waiting" lable to "available"
Cl-896
2018-09-05 14:06:18 +02:00
Jaime van Kessel
23cd46824f Ensure that printer icon has disabled color if the printer is disabled
CL-896
2018-09-05 13:52:41 +02:00
Jaime van Kessel
5be65688a0 Change label to action required
In some cases it's not a configuration change that's required, so this is a more correct label

CL-896
2018-09-05 13:48:47 +02:00
Jaime van Kessel
7096c7382b Add width to labels in printcore qml object.
This ensures that the elide works correctly

CL-896
2018-09-05 13:43:24 +02:00
Jaime van Kessel
cd6832544b Fix for compatible_machine_families breaking for older firmwares
Older firmwares didn't have the compatible_machine_families field yet.

Cl-894
2018-09-05 13:17:33 +02:00
Jaime van Kessel
882cc000ac Move to top is now disabled for the first job
CL-896
2018-09-05 13:15:09 +02:00
Lipu Fei
ef5107e025 Update modified setting keys 2018-09-05 11:42:49 +02:00
Lipu Fei
082b9a4076 Merge remote-tracking branch 'origin/master' into CURA-5095_collect_user_modified_settings 2018-09-05 11:31:21 +02:00
Jaime van Kessel
1b9deb2790 Add unreachable label if a printer can not be reached inside a cluster
CL-896
2018-09-05 10:25:20 +02:00
Jaime van Kessel
7ad2e67074 Fix margins for active print job name in printer tile for cluster
CL-896
2018-09-05 10:09:44 +02:00
Jaime van Kessel
a0302684d6 Add handling for cluster print jobs that are in error state
CL-896
2018-09-05 10:06:37 +02:00
Ghostkeeper
b02769912f
Don't print slower than 1mm/s
If you set the wall printing speed to 10, it would through inheritance result in an outer wall printing speed of 0. No longer.
2018-09-05 09:42:20 +02:00
Jaime van Kessel
be4357c635 Show different state when printer is disabled
CL-896
2018-09-04 13:45:16 +02:00
Jaime van Kessel
132366fa61 Revert "Add enabled state to printer, so that it can be displayed."
This reverts commit dd778f0450.
2018-09-04 13:42:24 +02:00
Jaime van Kessel
dd778f0450 Add enabled state to printer, so that it can be displayed.
This ensures that if a printer is set to "Not available", that the interface can correctly show it

CL-896
2018-09-04 13:27:17 +02:00
Diego Prado Gesto
4098d4d289
Merge pull request #4313 from Ultimaker/CURA-5670_use_tags_to_define_showcase
Build models using reserved tags
2018-09-03 16:11:05 +02:00
Diego Prado Gesto
b638b2274a Count only the material packages by author, not all packages.
Contributes to CURA-5670.
2018-09-03 15:12:52 +02:00
Diego Prado Gesto
bf1d3b964f Skip loading a reply if it's not later handled.
Contributes to CURA-5670.
2018-09-03 14:30:05 +02:00
Lipu Fei
ab572e9de2 SettingFunction evaluation needs a stack to provide values
Note that this is still not correct. When the value gets evaluated, we
need to evaluate it with that container in the stack(s), but this case,
the stack may have other containers, so the evaluation can give
incorrect values because its context is simply not correct. This change
only prevents it from breaking because it's missing a provider.
2018-09-03 14:03:46 +02:00