Commit Graph

4759 Commits

Author SHA1 Message Date
fredizzimo
ad5fcce6e4 Fix environment variable setting on Windows (#674)
The previous way of checking that _putenv_s is defined does not work,
because _putenv_s is a function and not a define. This is a partial
application of commit 31115e0369747b1e1c45cbe3f2a90f6dff66666a from
alexrj/Slic3r.

I tried cherry picking the whole commit, but unicode is already handled
diffrently here, so that would have been a lot of work.
2018-01-07 22:20:02 +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
bubnikv
60a6e7ba8e Included the velocity, acceleration and jerk settings into the Prusa3D
printer profiles.
2018-01-06 15:23:02 +01:00
bubnikv
7012c04005 Updated the printer profiles. 2018-01-06 15:06:21 +01:00
bubnikv
40a6125d73 Updated printer profiles. 2018-01-06 15:06:11 +01:00
bubnikv
eaac587467 Merge remote-tracking branch 'origin/time_estimate' 2018-01-06 15:04:57 +01:00
Enrico Turri
ae0688f351 GCodeTimeEstimator - added processing of commands M221 (Set extrude factor override percentage) 2018-01-05 10:35:04 +01:00
Enrico Turri
69e3ea6581 GCodeTimeEstimator - simulate firmware st_synchronize() for commands G4, G92, M1 2018-01-05 09:46:09 +01:00
bubnikv
696d420dc8 New feature: Recommended object thin wall thickness hint. 2018-01-04 15:38:06 +01:00
Enrico Turri
3f57e20235 GCodeTimeEstimator: refactoring of forward and reverse passes on blocks 2018-01-04 13:00:34 +01:00
bubnikv
011281df86 Fix of the Spiral Vase after the GCodeReader rework.
A patch of the GCodeTimeEstimator to avoid crashes. This is not a final fix though.
2018-01-03 21:55:32 +01:00
bubnikv
998157fc9b Fixed an issue with vsprintf and on demand buffer allocation.
Improved the GCodeReader to support spaces before the G-code.
2018-01-03 20:53:39 +01:00
bubnikv
9d98a27b98 Fix of compilation on OSX and Linux. By the standard, a temporary
value cannot be passed to a reference.
2018-01-03 17:57:37 +01:00
bubnikv
b292554fd8 Optimized the GCodeReader.
Fixed the profiling build.
2018-01-03 17:29:49 +01:00
bubnikv
0e4ecfaf56 Fix of time estimator (int abs used instead of float abs) 2018-01-02 13:29:40 +01:00
bubnikv
fec05d430b Fixed a typo in fprintf 2018-01-02 11:14:22 +01:00
bubnikv
02256e900f Merged the branch time_estimate 2018-01-02 10:57:30 +01:00
bubnikv
c6bc55e4f9 Added a comment on disabling ICU integration when compiling Boost on Linux. 2018-01-02 10:36:45 +01:00
bubnikv
0de0e4ff41 Bumped up the version number. 2018-01-02 10:34:32 +01:00
bubnikv
d7998870c7 Bumped up the minimum firmware version of the MK3 printers to 3.1.1-RC4 2017-12-29 21:39:55 +01:00
bubnikv
4c35d98d7d Bumped up the version number. 2017-12-29 21:21:26 +01:00
bubnikv
f58d66fe5e Disabled the object auto centering by default. 2017-12-29 21:17:30 +01:00
bubnikv
a056eadc1e Changed perimeter-infill overlap of the bundled Prusa i3 MK3 printer
profiles from 35% to 25%.
2017-12-29 21:15:20 +01:00
bubnikv
5cf9cd5395 Bumped up the build version. 2017-12-21 21:07:43 +01:00
bubnikv
d9985c0575 Updated the initial presets for the MK3. 2017-12-21 20:15:51 +01:00
bubnikv
472946be32 Removed Original Prusa i3 MK3, MK2S, MK2 and MK2S-MMU.ini 2017-12-21 20:13:16 +01:00
bubnikv
48ba7e5f73 Removed dependency on Perl Encode::encode_utf8. 2017-12-21 20:11:19 +01:00
bubnikv
e71b021b6e Updated the bundled presets for the Prusa3D printers. 2017-12-21 19:26:29 +01:00
bubnikv
3addeb57b4 Fix of "Program crashes when [Suppress "- default -" presets:] is DISABLED"
https://github.com/prusa3d/Slic3r/issues/643
2017-12-21 19:19:07 +01:00
bubnikv
9d3ade81fa Fixed placeholder parser tests. 2017-12-21 17:27:24 +01:00
bubnikv
1eef6d3552 Improved error reporting of the PlaceholderParser. 2017-12-21 17:07:57 +01:00
bubnikv
f5160b7a72 Fixed "Slic3r crashes when sending STLs with special characters to the printer"
https://github.com/prusa3d/Slic3r/issues/597
The "Send to OctoPrint" function will now send the file name encoded
in UTF-8, so the file name will not get mangled.

The C++ Slic3r::encode_path() function was returning a string to Perl,
which was marked as UTF-8. This has been fixed, now encode_path() returns
a plain Perl string.

Added path_to_filename, path_to_stem, path_to_extension, path_to_parent_path
Perl wrappers to boost::filesystem::path splitting functionality
to be able to split UTF-8 encoded files on Windows correctly.
2017-12-21 16:56:33 +01:00
bubnikv
1bf67b4b62 Added boost::regex to cmakelists. 2017-12-20 22:13:19 +01:00
bubnikv
fed5128b7f Reverted regex to boost::regex as the C++11 regex seems to be broken
on Linux/gcc 4.9.
2017-12-20 21:54:47 +01:00
bubnikv
8acd51fc62 Replaced boost::regex with std::regex. 2017-12-20 18:25:53 +01:00
bubnikv
b2ba4ee34c Fixes volumetric speed "Hint-Text" ignores "First Layer Speed"
and "Extrusion multiplier" #641
Implements first layer speed adjustments.
2017-12-20 14:51:18 +01:00
bubnikv
4572fe69de Fix of a regression update issue of the "modified" flag
at the active profile, specific to OSX.
https://github.com/prusa3d/Slic3r/issues/632
2017-12-20 13:46:43 +01:00
bubnikv
7142126609 Grey out the compatible_printers_condition edit field in case
the compatible_printers list is non empty.
Changed the precendence of compatible_printers_condition over
compatible_printers. Now compatible_printers has precedence.
2017-12-20 13:32:02 +01:00
bubnikv
c8d14fb617 The wipe tower generator does not call start_filament_gcode when
returning from a wipe tower and the particular wipe tower layer
is only sparsely filled without a tool change.
https://github.com/prusa3d/Slic3r/issues/642
2017-12-20 12:03:54 +01:00
bubnikv
558a0753c1 Improved loading of the config wizard results.
Fixed some updates of the "compatible with printer" flags
at the print and filament presets.
2017-12-20 11:28:16 +01:00
bubnikv
c49d6a3ec7 Try to fix the config wizard initialization on OSX.
There is an issue when the config wizard is started from the help
menu and the "other" workflow is followed without clearing
the user profile directory.
2017-12-19 21:43:24 +01:00
bubnikv
67c6823dde Fixed a regression bug in the display of a filament name on the print
controller tab.
2017-12-19 21:12:24 +01:00
bubnikv
c3468f2ad9 Fix of preset selection. 2017-12-19 20:58:16 +01:00
bubnikv
0b6bd3cbde Implemented a "Reset user profile" on the first page of the configuration
wizard if the wizard is opened from the menu. This allows one
to reinstall the bundled printer profile cleanly.

Fixed a bug when loading a config bundle as a config: The config bundle
should not be unpacked into the user profile directory.
2017-12-19 19:51:22 +01:00
bubnikv
5a768ddd7b Updated the bundled config profile with the new compatible_printers_condition. 2017-12-19 17:10:28 +01:00
bubnikv
a402b1b83d Implemented <,>,<=,>=,or,and,||,&& operators. 2017-12-19 16:48:14 +01:00
Enrico Turri
b2eb522f55 GCodeTimeEstimator - clean up unused code 2017-12-19 09:29:04 +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
bb61de8379 Fixed a regression error: The "current_extruder" identifier was not set
at the placeholder parser.
Implemented a new PlaceholderParser::evaluate_boolean_expression()
functionality to evaluate just a boolean expression using the full
expressive power of the macro processing syntax. This function
will now be used for deciding, which print or filament preset
is compatible with which printer preset.
2017-12-18 12:14:09 +01:00
bubnikv
bbfb9a4190 Added regex matching operators to the conditional G-code processor
in a form similar to Perl:

Following expression returns true, if the variable matches the regex:
	variable =~ /regex/
Following expression returns true, if the variable does not match the regex:
	variable !~ /regex/
2017-12-15 17:14:24 +01:00