Commit Graph

1019 Commits

Author SHA1 Message Date
0ea5a60f93 Wipe tower - fixed a long existent bug that sometimes resulted in inexact feedrate on the loading moves 2019-06-17 12:59:30 +02:00
9e68f19ee8 Fixup of 41164a9
The WipeTowerWriter did not now which tool is being used, so it limited the volumetric flow based on different filament settings
2019-06-17 11:22:17 +02:00
55616340e7 Wipe tower - renaming files (to conclude work from previous commit and not lose history of those files) 2019-06-17 10:26:33 +02:00
426fda26f7 Wipe tower - refactoring (removed the abstract WipeTower class)
- abstract class WipeTower and its descendant WipeTowerPrusaMM were merged into a single (non-abstract) WipeTower class
- all uses of WipeTower::xy struct were replaced by Eigen Vec2f (it is no longer necessary to be independent on libraries that PrusaSlicer uses)
- the WipeTowerPrusaMM.hpp/.cpp will be renamed in the next commit (hopefully it will retain its git history that way)
2019-06-17 10:16:07 +02:00
73615df334 Wipe tower - removed the obsolete material_type enum
no longer necessary because the speed overrides that the enum controlled were recently removed
the comment in gcode is now just about appending the config string
2019-06-14 14:44:22 +02:00
cd1c2e6b91 WipeTowerIntegration class: print_z is not passed around, ToolChangeResult objects are aware of it 2019-06-14 14:43:40 +02:00
cc5a47d96c Changed handling of priming extrusions to allow injection of filament and toolchange custom gcodes
The priming extrusions were handled separately from the rest of the wipe tower toolchanges. In order to be able to use the logic from previous commit for them (custom toolchange gcodes etc), some unpleasant code shuffling was needed
2019-06-14 14:42:07 +02:00
3d39707b8c Multimaterial printing: Changed the way how custom gcodes are inserted
Each toolchange now emits:
- end filament custom gcode
- toolchange custom gcode; if not provided, a standard Tn command is inserted
- start filament gcode

Hopefully it is now consistent for SE/ME printers with/without the wipe tower
The priming line does not work - will be fixed in the next commit
2019-06-14 14:38:58 +02:00
5bd2c66a3e Mostly refactoring of the wipe tower improvements
- setting of the wipe tower parameters based od whether SE MM printer is selected is done in the WipeTowerPrusaMM constructor, so it does not distract in Print.cpp
- WipeTowerPrusaMM.cpp conditions checking for SE MM printer are now using a more descriptive const member variable, not the loading/unloading speeds (hopefully the functionality is the same)
2019-06-14 14:35:50 +02:00
0e31498f43 Enable wipe tower for all multi-extruder configurations 2019-06-14 12:28:52 +02:00
7e530a7859 The wipe tower now respects filament max volumetric flow
The odd commands that lowered the speed override values for PVA, FLEX etc. were removed

Now the wipe tower backups user speed override, sets it to 100%, does what is needed
and restores the old value when finished. There are no special cases - lowering
the speed for certain materials can be achieved by lowering the volumetric flow.
2019-06-14 12:28:52 +02:00
6637574e8a GCode preview shows correct volumetric flow for the wipe tower
The neccessary annotations for the GCodeAnalyzer were missing
2019-06-14 12:28:52 +02:00
ecff6b721d Build fix when boost is not in prefix/boost 2019-06-13 14:19:24 +02:00
bab4611ee7 Future-proof qhull dependency handling 2019-06-05 19:19:49 +02:00
53ada19bc9 Move cstdint to Zipper header.
The declarations already contain specific integers.
2019-06-04 09:26:33 +02:00
c10ba1d870 Add missing header 2019-06-03 17:41:02 +02:00
97e04326a1 Fix for opening issues with archive files. 2019-06-03 15:27:46 +02:00
e598a81dc7 Add new [total_layer_count] placeholder everywhere [layer_num] is avalible.
Missed adding [total_layer_count] to layer_gcode


Revert "Add new [total_layer_count] placeholder everywhere [layer_num] is avalible."

This reverts commit e29e766224a14e1f237908c3e5507ac5586ca5b7.

Revert "Missed adding [total_layer_count] to layer_gcode"

This reverts commit f07907a8acc450e9ae1220c6a9fe4f7c7e6d896c.

Better way to add [total_layer_count]
2019-06-03 14:47:18 +02:00
b4cf356198 Adjust miniz usage to use nowide FILE streams everywhere. 2019-06-02 22:27:35 +02:00
3eea0949a6 Fix unclosed file after export. 2019-06-02 20:02:27 +02:00
4554cf2063 Use nowide fopen in Zipper instead of patching miniz. 2019-06-02 19:10:13 +02:00
a907798534 Merge branch 'tm_minz_update' 2019-05-31 18:34:59 +02:00
6815ca85b7 Build system tweaks to get rid of cmake and boost warnings. 2019-05-30 17:48:32 +02:00
7f98277577 Code cleanup 2019-05-24 15:22:27 +02:00
88d3813997 Fixed conflicts after cherry-picking 844e99f84e 2019-05-24 14:42:46 +02:00
e15ab5a0cc Fix of loading the variable layer height profile and the SLA support
points for projects with instances.

3mf does not support a concept of instances, therefore all the instances
of all objects are indexed in a linear fashion. However, the 3mf files
index the layer height profiles and the SLA support points with
the object ID. The loading was fixed to take the different indexing
into account.
2019-05-24 12:17:54 +02:00
16cbfc8803 Fixed update of the SLA back end object properties, leading to
the "disable supports" and "disable pad" flags being ignored
after the project was loaded.
2019-05-23 15:43:16 +02:00
a1ef85dde6 Replacing old miniz version with new 2.1.0
#2333: The amalgamated library is used from the 'releases' section of the original upstream https://github.com/richgel999/miniz
2019-05-23 11:52:31 +02:00
b8fe1fabf3 Fixed unit tests when run with range checks on std::vector
There was a bug in unit tests that led to generating the wipe tower with non-normalized preset.
This caused out-of-bounds access into max_layer_height vector in fill_wipe_tower_partitions.
The problem surfaced in https://github.com/prusa3d/PrusaSlicer/issues/2288.
I quickly patched additional normalization of the preset to prevent this from happening.

Also, an assert in the same function turned out to trip on one of the tests.
This one was commented out for now and will (hopefully) be looked into later.

Function Print::apply_config was renamed to apply_config_perl_tests_only so everyone
sees its current purpose and does not mistake it for the more important Print::apply.
2019-05-22 16:48:20 +02:00
298ab4df7f Use generic qhull include location
Currently the qhull includes are referenced absolutely, but the compiler
is always called with the src directory in the include path and so it
should be safe to specify a more generic path.
2019-05-22 10:29:54 +02:00
a8ceb971a4 Use the correct expat location
expat.h is (in most Linux distributions, at least) located directly in
/usr/include.  Because the compiler is called with the src directory in
the include path, the include of <expat/expat.h> happens to work but
results in the bundled version of the header being used instead of the
system version.
2019-05-22 10:10:58 +02:00
278f380fe7 Tech ENABLE_NEW_EULER_ANGLES set as default 2019-05-21 10:16:44 +02:00
1340d880db Tech ENABLE_GENERIC_SUBPARTS_PLACEMENT set as default 2019-05-21 10:01:04 +02:00
fcdc8a97cd Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-05-21 09:43:14 +02:00
91fd56429c Tech ENABLE_VOLUMES_CENTERING_FIXES set as default 2019-05-21 09:42:59 +02:00
9b075e8e36 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-05-21 09:41:51 +02:00
243e398cd6 Fix of "PrusaSlicer 2.0.0.-rc+ g-code error when importing #2304" 2019-05-21 09:41:46 +02:00
a4620ffcd8 Removed tech DISABLE_DESELECT_ALL_MENU_ITEM 2019-05-21 09:23:45 +02:00
beaf3c64a4 Eliminate some warnings 2019-05-20 12:29:14 +02:00
4b6383a512 Changed the G-code export and send to OctoPrint GUI code
to store the G-code next to the project file if it exists,
and to process the project name with the PlaceholderParser.
2019-05-17 16:27:00 +02:00
6e09727a98 Fix of
Extend the "filament type" list with PC or allow free form text into the filament type field. #1704
2019-05-17 11:46:46 +02:00
a0fd774985 Changed the default of output_filename_format to "[input_filename_base].gcode"
for FDM, and "[input_filename_base].sl1" for the SLA technology.
This improves the situation of
"Filename creation with variables broken"
https://github.com/prusa3d/PrusaSlicer/issues/1918
where anything after the last dot in the file name is considered
as an extension, therefore the .gcode resp. .sl1 extension is not added.
Now the user gets the output_filename_format filled in with the correct
extension.
Also now if the output_filename_format is empty, the output name
is generated anyway.
2019-05-16 15:55:26 +02:00
61375f0849 Fixed a typo leading to a crash in another then English languages (#2233) 2019-05-15 09:44:38 +02:00
0092e54c95 Changed references to renamed github project
https://github.com/prusa3d/PrusaSlicer
2019-05-14 19:46:01 +02:00
578844c447 Fixed a crash on deleting objects due to the ObjectList accessing
released data before the selection was updated on the GLScene.
2019-05-14 16:37:32 +02:00
1c21bb364c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-05-14 12:35:37 +02:00
972f0960bf Changed the wizard to generate explicit extrusion widths
for the custom profile (not the zeros).
Changed the default values for filament_diameter and nozzle_diameter.
2019-05-14 12:35:19 +02:00
097cd35d17 Set a max extruder's count for the Additional Setting "Extruders".
+ cat sidetext for options from Additional Setting "Extrusion Width".
2019-05-14 12:17:34 +02:00
2193d38d5c Added Esc shortcut and menu item for command deselect all 2019-05-14 11:57:39 +02:00
d284184f62 Updated handling of the SLIC3R_BUILD_ID key 2019-05-13 18:01:00 +02:00