Commit graph

227 commits

Author SHA1 Message Date
bubnikv
26b003073b Renamed the "compatible_printers_condition" and "inherits" vectors
to "compatible_printers_condition_cummulative" and "inherits_cummulative"
when storing to AMF/3MF/Config files.

Improved escaping of strings stored / loaded from config files.
2018-06-28 20:13:01 +02:00
Enrico Turri
7ff22b9413 Time estimate emitted to gcode at requested interval 2018-06-27 15:35:47 +02:00
Lukas Matena
54bd0af905 Infill wiping turned off by default and in some automatic tests 2018-06-27 15:07:37 +02:00
bubnikv
1175dc95f6 Storing and recovering the "compatible_printers_condition"
and "inherits" fields from / to the AMF/3MF/Config files.
The "compatible_printers_condition" are collected over all active profiles
(one print, possibly multiple filament, and one printer profile)
into a single vector.
2018-06-26 10:50:50 +02:00
bubnikv
b5f97baa28 Merge remote-tracking branch 'remotes/origin/machine-limits-config' into add_kinematics 2018-06-22 17:44:12 +02:00
YuSanka
54c90ee948 Updated PrintConfig default values for machine limits
+ fixed incorrect default value setting for the TextCtrl
2018-06-22 16:13:34 +02:00
YuSanka
4454c3437f "Machine limits" page is completed 2018-06-21 16:15:56 +02:00
Lukas Matena
6669357c81 Merge branch 'master' into wipe_tower_improvements 2018-06-21 10:41:01 +02:00
bubnikv
02d4f3e14d Provide a callback to libslic3r to translate texts.
Moved the "translate" functions to namespaces to avoid clashes
between the code in libslic3r and Slic3r GUI projects.
2018-06-20 18:33:46 +02:00
YuSanka
b6ebbdb94a Updated "Machine limits"(Kinematics) page according to the new config 2018-06-20 16:30:55 +02:00
YuSanka
e0bd97ab9c Merge remote-tracking branch 'origin/machine-limits-config' into add_kinematics 2018-06-20 14:26:51 +02:00
YuSanka
fd4feb689e Added prototype for "Kinematics" Page
+ Added enum_labels to localizations
+ Added bold font for the name of Options Groups
2018-06-20 14:20:48 +02:00
bubnikv
6b2b970b9a Added machine evelope configuration parameters
(the MachineEnvelopeConfig class).
Added localization support for libslic3r through a callback
(the callback is not registered yet, so the localization does nothing).
Localized the Print::validate() error messages.
2018-06-20 13:57:37 +02:00
Lukas Matena
b6455b66bd Wiping into infill/objects - invalidation of the wipe tower, bugfixes 2018-06-07 16:19:57 +02:00
Lukas Matena
73452fd79d More progress on 'wipe into dedicated object' feature (e.g. new value in object settings) 2018-06-06 18:24:42 +02:00
YuSanka
16a5029d58 Fixed issue #875 and updated Slic3rPE.pot 2018-06-04 12:13:07 +02:00
Lukas Matena
bfe4350a89 Calculation of wipe tower reduction corrected, new config option (wipe into infill) 2018-05-25 16:11:55 +02:00
Lukas Matena
1d1c69f300 Merge branch 'master' into wipe_tower_improvements 2018-05-23 19:34:33 +02:00
bubnikv
19221b749c Fix of https://github.com/prusa3d/Slic3r/issues/869 2018-05-18 08:21:24 +02:00
bubnikv
35bf4aee7d Fixed loading of configuraton values octoprint_host, support_material_threshold
They were incorrectly handled by the handle_legacy() function, which has been
ported from the upstream Slic3r without inspecting its content.
2018-05-17 14:08:50 +02:00
Lukas Matena
1f62978251 Merge branch 'master' into wipe_tower_improvements 2018-05-15 11:22:58 +02:00
YuSanka
754bfd926b Auto-correction of the input values according to the admissible range 2018-05-10 11:10:44 +02:00
bubnikv
7a8f68cfe6 Merge branch 'new_cooling_logic' 2018-04-26 19:00:49 +02:00
Lukas Matena
650489dd8a New parameters actually connected to the wipe tower generator 2018-04-24 13:43:39 +02:00
Lukas Matena
8c77b9645c Loading, unloading and cooling reworked, new filament parameters regarding cooling were added 2018-04-24 13:02:08 +02:00
Lukas Matena
d7dc04eb57 Removed parameter filament_cooling_time (fixed value of 14s for now) 2018-04-17 08:18:12 +02:00
Vojtech Kral
214ad2925b Merge branch 'master' into updating 2018-04-16 17:32:58 +02:00
Lukas Matena
a154fd34ee Added parameter extra_loading_move, prevented high feedrate moves during loading 2018-04-16 14:26:57 +02:00
Lukas Matena
abe6e8a783 Bugfix: legacy config options were not properly processed 2018-04-13 13:43:53 +02:00
Lukas Matena
52a3f4a2bb Default purging volumes set to more appropriate values 2018-04-12 16:13:59 +02:00
Vojtech Kral
8422cf93c0 ConfigWizard: Finalize custom setup 2018-04-06 13:24:02 +02:00
Lukas Matena
7253028d79 Merge branch 'master' into wipe_tower_improvements 2018-04-06 12:33:12 +02:00
Lukas Matena
1b4dc685f4 Connected filament_ramming_parameters to respective dialog, other minor changes 2018-03-28 15:37:10 +02:00
YuSanka
77f5ed6851 Fixed bugs from SPE-180 2018-03-23 12:52:37 +01:00
Lukas Matena
985b414c64 Removed parameter 'wipe_tower_per_color_wipe' from UI and configuration layer 2018-03-22 13:37:01 +01:00
YuSanka
d7e2305686 "Undo"-buttons work 2018-03-22 10:56:57 +01:00
Lukas Matena
76b280c64c Removed parameter 'wipe_tower_adhesion', it will always be true 2018-03-19 15:53:49 +01:00
Lukas Matena
3d6f6530c0 Merge branch 'master' into wipe_tower_improvements 2018-03-16 14:06:23 +01:00
Lukas Matena
b556cec42d Got rid of wipe_tower_advanced option 2018-03-16 13:58:58 +01:00
Lukas Matena
67009d80fd Ramming parameters reduced to one and connected to the wipe tower generator again 2018-03-15 14:04:12 +01:00
YuSanka
d97a8f5740 Merge remote-tracking branch 'origin/master' into profile_changes_reset 2018-03-15 10:24:54 +01:00
bubnikv
61ae78432c Removed the unsupported "pillars" support pattern. 2018-03-14 20:08:34 +01:00
Lukas Matena
9f18b639a8 Added filament_ramming_parameters and filament_ramming_buttons into configuration layer 2018-03-14 15:48:37 +01:00
Lukas Matena
27ab8ff4e1 Configuration layer changes (cooling_time, bridging, adhesion moved from dedicated dialog to filament/print settings) 2018-03-12 15:41:25 +01:00
bubnikv
f55becd43c Introduced the system profiles.
The Config Wizard now just copies the Vendor's Config Bundle
into user_dir/vendor/ directory and Slic3r uses the configs
from the bundles found in user_dir/vendor directly.
2018-03-09 16:37:33 +01:00
Lukas Matena
1c6fa6660e Merge branch 'master' into wipe_tower_improvements 2018-03-09 15:10:15 +01:00
Enrico Turri
bdd2d725c8 Out of bed detection - 1st installment 2018-03-09 10:40:42 +01:00
Vojtech Kral
7cfc5204c8 WIP: OctoPrint 2018-03-05 18:33:15 +01:00
Lukas Matena
5aca3045b9 (Un)loading speed and delay introduced into wipe tower generator 2018-03-05 10:45:35 +01:00
Lukas Matena
b3e9b82280 (Un)loading speed and time delay parameters introduced into GUI and conf. layer (not yet into wipe tower generator) 2018-03-02 15:52:16 +01:00
Lukas Matena
e1421da5e8 Integrating cooling tube parameters into wipe tower generator 2018-03-02 13:26:16 +01:00
Lukas Matena
d2006c8d8e Cooling tubes parameters added into GUI and configuration layer (not yet into wipe tower generator) 2018-03-01 16:15:00 +01:00
Lukas Matena
a62ad3323f First naive implementation of wipe tower settings dialog 2018-02-28 16:04:56 +01:00
Lukas Matena
3099c32d08 GUI - reenabling rotation angle settings for the wipe tower (was disabled by the merge with master) 2018-02-27 08:56:11 +01:00
bubnikv
69fc99edbb Merge remote-tracking branch 'remotes/origin/gui_translate_to_cpp' 2018-02-23 15:32:13 +01:00
YuSanka
baa5726532 All project is ready to localization.
* Macro _LC is changed to _CHB. [to put translated string into std::string correctly]
* Macro _LS is changed to L.    [to mark string to translation]
* Standard wxWidgets macro _() is used for translation now.
* Updated POfile for EN
2018-02-23 14:25:49 +01:00
Merill
d59bb027eb Gyroid infill type (#733)
Gyroid infill type.
2018-02-22 09:56:05 +01:00
Lukas Matena
de92f45eaf Merge with master 2018-02-21 13:22:51 +01:00
YuSanka
f5ae470e5e Completed translation to Ukrainian.
* Signs of degree are returned to UTF-8 in PrintConfig.
* Changed _LU8 macro. It's translated now like string explicitly specified as a string is already in UTF-8 encoding.
2018-02-19 15:32:22 +01:00
bubnikv
f876946358 Merge remote-tracking branch 'origin/gui_translate_to_cpp' 2018-02-15 18:32:51 +01:00
bubnikv
f1840a52db Merged the C++ port of the GUI Tabs / OptionGroup / Option classes
by @YuSanka, thanks @lordofhyphens for the initial port
of the OptionGroup / Option.
2018-02-15 18:13:37 +01:00
YuSanka
59cee4a3aa Thanks @stelgenhof Corrected units of measure that had exponents displayed with caret. 2018-02-15 18:06:37 +01:00
YuSanka
e0933786e3 Marked string used at localization.
* Correct save changed color
2018-02-15 17:30:33 +01:00
bubnikv
8932055ed5 Fixed spelling of Elephant foot compensation from Elefant to Elephant.
Unfortunately the settings is out in the wild, so we did not fix
the spelling of the config value name.
2018-02-02 11:38:30 +01:00
YuSanka
8e0cd35c23 Merge remote-tracking branch 'origin/master' into gui_translate_to_cpp 2018-01-14 21:58:21 +01:00
YuSanka
59432d50ff To OptionsGroup added "reload_config" to reload configurations after changes in any fields & "get_config_value" to get current option value from config.
In Field extended "set_value" to Choice.
In PrintConfig added default_value to "post_process".
2018-01-09 09:41:07 +01:00
bubnikv
fec1fcdca8 Separated the Marlin G-code flavor from the RepRap G-code flavor
due to the differences in the M203 code
(RepRap firmware has it in mm/min, Marlin in mm/sec).
This difference is important to the G-code time estimator.

Changed the g-code flavor to Marlin for all Prusa3D bundled profiles.
2018-01-06 18:49:28 +01:00
Lukas Matena
4583d62edd Merge branch 'master' into wipe_tower_improvements 2017-12-21 13:47:33 +01:00
bubnikv
6b81f43206 First implementation of the "compatible_printers_condition"
for the print and filament profiles.
Added documentation for building the boost library for Slic3r on Linux.
2017-12-18 15:07:38 +01:00
bubnikv
74cb74f1fc Increased maximum allowed temperature to 1500 centigrades as someone
is seemingly uses Slic3r to print glass :-)
https://github.com/prusa3d/Slic3r/issues/629
2017-12-12 13:43:36 +01:00
Lukas Matena
c34fd10e23 Wipe tower rotation around center point 2017-12-05 11:25:38 +01:00
bubnikv
830da1f8e4 Fixed a regression bug of handling the obsolete config parameters,
causing crashes.
2017-11-30 13:43:02 +01:00
Lukas Matena
2921302fe9 GUI integration of rotation angle setting 2017-11-30 12:08:22 +01:00
bubnikv
672194b475 Ported the between_objects_gcode custom G-code blocks,
thanks @lordofhyphens, https://github.com/alexrj/Slic3r/pull/3275

Improved handling of custom G-code blocks: Slic3r will try to extract
the target extruder and bed temperatures from the custom G-code blocks.
2017-11-28 15:19:57 +01:00
bubnikv
9a0100d6de Initial definition of PresetHints C++ class and Perl binding, ported the cooling logic hints to C++.
Removed Perl Flow::new_from_spacing bindings.
Some Fill C++11 beautification.
Fix of a support_material_1st_layer_flow, brim_flow and skirt_flow logic to use the extrusion_width if both first_layer_extrusion_width and support_material_extrusion_width are undefined.
Documented the extrusion width logic in the config tooltips, including the default values.
2017-11-09 10:48:06 +01:00
bubnikv
5fb54ed1f3 Code beautification: PrintConfig tooltips were split to multiple lines. 2017-11-09 10:06:25 +01:00
bubnikv
95c284c764 Next step of Perl to C++ configuration layer conversion. 2017-11-01 19:30:05 +01:00
bubnikv
2455aee97c Further reduction of Perl Config.pm methods. 2017-10-27 18:52:35 +02:00
bubnikv
3bc79e80d5 Fixed configuration & validate C++ ports. 2017-10-27 16:11:06 +02:00
bubnikv
38aca5047f Fix of the preceding commit for gcc & clang:
Add a class name suffix to the s_cache static members
of the StaticPrintConfig derived classes.
2017-10-17 17:37:03 +02:00
bubnikv
3731820c48 Optimization of the configuration layer:
The values of StaticPrintConfig derived objects were searched by a name
walking through a huge chained if.
Now they are being mapped with a std::map.
Also initialization of StaticPrintConfig classes from their ConfigOptionDef
defaults is done by maintaining a single global definition of each
StaticPrintConfig derived class, and a new instance is initialized
from this static copy.

Also the ConfigOption instances are casted using static_cast
wherever possible, and their types are verified by a virtual type() method.
This approach avoids insiginificant performance penalty of a dynamic_cast.

Also the compare and clone methods were added to ConfigOption,
and the cloning & compare work on binary values, not by serialization.
2017-10-17 16:01:18 +02:00
bubnikv
e16f827223 Ported PrintConfigBase::_handle_legacy from Perl to C++,
merged from upstream Slic3r, thanks to @alexrj.
2017-09-18 09:56:48 +02:00
bubnikv
3b54b68b59 Merged new methods for handling menus with icons,
merged "Use submenus for listing options in dropdown menu." #3905
thanks @alexrj
Adapted the "Use submenus" code to sort the menus in the same order
as they appear in the parameter tabs.
2017-08-04 16:28:01 +02:00
bubnikv
777023c7a8 Ported PrintObject::prepare_infill & combine_infill from Perl to C++. 2017-08-02 14:24:32 +02:00
bubnikv
71f99423c5 New feature: Bridging angle override through a bridge_angle config
variable. When set to zero, the usual automatic bridge detection applies.
The bridging angle override may be set at the Infill->Advanced settings,
or through a modifier mesh.
2017-07-31 16:23:52 +02:00
bubnikv
969e3f4a80 Fixed "Fill angle of any number other than an Integer does not work"
https://github.com/prusa3d/Slic3r/issues/427
Also enabled floating point rotation angle for supports.
2017-07-20 13:38:10 +02:00
bubnikv
aaefb76888 Fixed test cases after change of the "sane" extrusion widths.
Changed the default perimeter / infill overlap to 25%.
2017-07-20 11:03:54 +02:00
bubnikv
c7d16699a4 When setting an override extruder in the Object Settings dialog,
don't apply this extruder to supports. This did not make sense
as the new "don't change tool (0)" extruder choice fits well for non-soluble
and the soluble supports should not be overriden as well.
2017-07-11 11:41:23 +02:00
bubnikv
8160db23cc Implementation of "XY size Compensation for first layer"
https://github.com/prusa3d/Slic3r/issues/190
2017-06-26 16:28:10 +02:00
bubnikv
f0325575c2 Slic3r has been modified to propagate the following filament specific
values to GCode generator, one per active extruder:

bed_temperature
bridge_fan_speed
cooling
disable_fan_first_layers
fan_always_on
fan_below_layer_time
first_layer_bed_temperature
max_fan_speed
min_fan_speed
min_print_speed
slowdown_below_layer_time

Now it remains to extend Slic3r to correctly apply these values.
2017-06-21 16:15:39 +02:00
bubnikv
f7831240e1 Fixed compilation on OSX 2017-06-13 12:09:49 +02:00
bubnikv
ad3be1a69e Implemented filament start / g-codes.
https://github.com/prusa3d/Slic3r/issues/265
https://github.com/prusa3d/Slic3r/issues/319
Based on the implementation by @lordofhyphens
19eea19d91
2017-06-05 11:30:57 +02:00
bubnikv
7d64c465c0 New config field extruder_color for preview of extruder assignment. 2017-05-24 15:20:20 +02:00
bubnikv
a99b006b98 Implemented https://github.com/prusa3d/Slic3r/issues/199
by merging the work by @lordofhyphens done on https://github.com/alexrj/Slic3r/issues/3268
2017-05-20 15:29:25 +02:00
bubnikv
70db88dd90 Improved retract handling on bowden extruders:
Separated deretract speed from a retract speed,
allowed a partial retract before wipe.
2017-05-19 19:24:21 +02:00
bubnikv
c22b6edeeb Initial integration of the Prusa MultiMatrial Wipe Tower. 2017-05-16 13:45:28 +02:00
bubnikv
18bb3c3244 Added Notes Tab to Printer Settings #210 2017-05-05 11:59:51 +02:00
bubnikv
72ae3585e4 Removed a broken Arc Fitting feature.
Removed the questionable Pressure Advance feature. It is better to use the Pressure Advance implemented into a firmware.
Added a C++ implementation of GCodeReader and SpiralVase, thanks to @alexrj
Added a C++ implementation of GCodeTimeEstimator, thanks to @lordofhyphens
2017-04-26 14:24:31 +02:00
bubnikv
f7acb20e23 Changed defaults for the perimeter/infill overlap (15-55%)
and for the infill pattern (honeycomb->stars)
2017-02-22 16:06:35 +01:00
bubnikv
420e387055 new feature: Clip multi-part objects one by the other.
This works the same way as if the XY compensation was set to a tiny value
before, but without the overhead of an offset.
2017-02-14 12:36:04 +01:00