363 Commits

Author SHA1 Message Date
n8bot
3f0bdb5816
Fix ConfigOptionEnum for interface pattern (#7316)
Caused some intermittent issues with profiles warning about "rectilinear grid" interface pattern not existing.
2021-11-29 11:21:21 +01:00
Sergey Kovalev
5fe529ffbc Add missing mapping 2021-11-24 00:49:53 +07:00
Sergey Kovalev
4917f3b811 Initial implementation, mostly proof of concept 2021-11-23 23:41:25 +07:00
Vojtech Bubnik
55a555c848 Tooltip for the new SLA material parameter "material_print_speed" 2021-11-19 16:30:37 +01:00
tamasmeszaros
a7260e7257 Add material print speed parameter for sla printers except sl1 2021-11-19 15:08:53 +01:00
tamasmeszaros
c6de3e84eb Trying to solve forward compatibility for SLA relative_corrections 2021-11-19 09:47:57 +01:00
YuSanka
1aaa4845c5 Partially ported https://github.com/supermerill/SuperSlicer/commit/ff195fc9(Add max_literal to setting def, to set the threshold for popup warning for float% fields) from @SuperSlicer
(related to https://github.com/prusa3d/PrusaSlicer/issues/2829#issuecomment-955606863)
2021-11-16 13:44:48 +01:00
YuSanka
a6863961f7 Localization + new POT
+ added hyperlinks for Ironing parameters
2021-11-15 08:32:40 +01:00
YuSanka
8bfa132a1b Localization fixes + new POT 2021-11-12 09:21:41 +01:00
YuSanka
e8be7b2ecd Implemented possibility to show resin colors from the Plater (Bottles with resin are colored now in preset combobox)
+ Added nsvgParseFromFileWithReplace() to replace some colors before parsing from SVG file
+ Thumbnails are saved with selected resin color in SL1 or SL1S files
+ "white" folder is deleted from "icons" now. THere is no needed anymore.
2021-11-09 17:01:50 +01:00
YuSanka
2fcab52f86 Added "Color" parameter for SLA material 2021-11-05 17:22:37 +01:00
Lukas Matena
3f1fc8329b Follow-up to 482841b, see also #6743:
The validation is now counterproductive, both the backend and the UI can
handle the situation well enough.
2021-10-21 11:38:10 +02:00
Niall Sheridan
69721123db [fuzzy skin] Use "walls" instead of "perimeters" in option
"Perimeters" has a specific meaning within Prusa Slicer, but fuzzy skin
uses "perimeters" to mean "walls" which can be confusing
2021-10-21 10:30:58 +02:00
Vojtech Bubnik
bec140b4bc "only_retract_when_crossing_perimeters" disabled by default
to reduce stringing for "custom" printers based on "defaults".
2021-10-15 16:35:16 +02:00
Vojtech Bubnik
b29c0ead7d Implemented configurable speed and acceleration settings for the first
object layer over raft interface:
"first_layer_speed_over_raft", "first_layer_acceleration_over_raft".
Fixes I have a question about the speed of the first layer after the raft. #6623
Fixes Layer After Raft Is Not Considered First Layer! #6166
2021-08-31 16:03:14 +02:00
Vojtech Bubnik
5f26bfd397 Brim separation from object, follow up to 82373334bcdaaaf10ed860fd2887b635f815d81f
1) Changed the name of the variable "brim_offset" to "brim_separation"
   for clarity.
2) Added legacy conversion after loading an old 3MF that does not define
   then new "brim_separation" variable: The "brim_separation" is being
   filled in with the "elefant_foot_compensation" value to produce
   equal brim separation to the old PrusaSlicer that saved that 3MF file.
2021-08-31 12:22:44 +02:00
Vojtech Bubnik
d3f11a6ab7 Follow-up to OctoPrint upload: ignore certificate revocation checks
6b03b66167dd17bc6c804f58b9af124082e80287

Renamed the new "printhost_ignore_check" option to "printhost_ssl_ignore_revoke"

Improved the Physical Printers dialog in regard to the new option checkbox
(added tooltip to the checkbox, moved it to the end of options).

Disabled the host_xxx options at the command line interface, they no
more work after these options were separated to Physical Printers profiles.

Little refactoring of Http.cpp/hpp, OctoPrint.cpp/hpp
Private local variables prefixed with m_, some renaming for clarity.
2021-08-24 13:57:52 +02:00
Lukas Matena
16562a2e77 Do not print brim when object has raft, it is not supported and makes no sense 2021-08-24 12:43:56 +02:00
Vojtech Bubnik
6b03b66167 OctoPrint upload: ignore certificate revocation checks
Fixes Hostname incorrect While test is positive (Bonjour discovery not
supported for the address field) #1781
(partial fix of #1781)
2021-08-24 11:24:48 +02:00
Lukas Matena
86c1e5c50f Default values for brim_offset anf elefant_foot_compensation set to zero 2021-08-17 15:09:34 +02:00
Lukas Matena
82373334bc Merge remote-tracking branch 'origin/lh_brim_offset' 2021-08-17 15:02:41 +02:00
Vojtech Bubnik
a25d2d1de4 Support for SL1S printer:
Where SL1 is mentioned, mention it as SL1 / SL1S.
Support loading / saving of SL1S files in addition to SL1.
2021-08-13 13:40:13 +02:00
Lukas Matena
c44715f9e0 Moved 'brim_offset' option into Advanced mode (same as EFC) 2021-08-12 13:38:53 +02:00
Lukáš Hejl
58f83b5e6a The offset is applied after the elephant food compensation. The value of the brim offset is now also measured from the object after the elephant foot compensation. Thus, the brim offset set to zero means that the brim will touch the object even if elephant foot compensation is enabled. 2021-08-10 09:44:39 +02:00
Lukas Matena
e76b54b770 Follow-up of bc81c22e (renamed the new CLI option --dont-ensure-on-bed to avoid double negatives) 2021-08-04 15:44:35 +02:00
Lukas Matena
bc81c22ea9 CLI: Ensure that objects are on bed by default, new CLI config option:
'dont-ensure-on-bed' (which allows to override). This was the original
behaviour in Slic3r and Sli3rPE, probably broken long ago when CLI
was ported from  Perl.
Also, --scale-to-fit should now work again (#5772)
2021-08-04 12:15:37 +02:00
Vojtech Bubnik
654cd753e2 Changed the label of "Marlin Firmware" to "Marlin 2" 2021-07-29 16:21:09 +02:00
Lukáš Hejl
6d0e5d3b9c Enabled to set "Maximum width of a segmented region" per object. 2021-07-29 11:45:02 +02:00
YuSanka
bf981ae049 Temporary workaround for compatibility with older Slicer:
To the "physical_printer" added "preset_name" option as a duplicate of the "preset_names" but like one string.
Note: It will works just for printer preset names without ";" (see #5503)
2021-07-20 10:18:59 +02:00
Lukas Matena
8c23678fa0 Limited brim width to 200 mm (larger values make slicer hang or crash due to arithmetic overflow) 2021-07-15 09:55:25 +02:00
Lukas Matena
49ae885834 Correctly convert legacy bool 'draft_shield' to enum 2021-07-14 16:02:04 +02:00
Lukas Matena
b466f18326 Draft shield option is now an enum (Disabled/Limited/Enabled) 2021-07-14 16:02:04 +02:00
YuSanka
fea3d9f383 Localization : update for Ukr
fixed some phrases
2021-06-30 16:49:44 +02:00
Vojtech Bubnik
f02821a82d Renamed the "marlinfirmware" firmware flavor to "marlin2". 2021-06-29 17:55:26 +02:00
Vojtech Bubnik
d6d52e6091 Support for SL1S printer:
Where SL1 is mentioned, mention it as SL1 / SL1S.
Support loading / saving of SL1S files in addition to SL1.
2021-06-29 17:29:21 +02:00
David Kocik
b14345012d PrusaLink - cherrypick pick from stable branch
Added to config enums, visible in Physical Printer Dialog and class derived from Octoprint
2021-06-28 12:36:01 +02:00
Vojtech Bubnik
0f3cabb5d9 Support for forward compatibility of configurations, user and system
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.

When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.

Substitute enums and bools only.  Allow booleans to be parsed as
    true: "1", "enabled", "on" case insensitive
    false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".

Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.

WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
Vojtech Bubnik
84b28a25e8 Support for forward compatibility of configurations, user and system
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.

As a preparation for PrusaSlicer 2.4.0, the new firmware_flavor
"marlinfirmware" (signifying Marlin 2.0 and newer) that is not
supported by 2.3.2 yet will default to "marlin" (signifying legacy
Marlin).

When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.

Substitute enums and bools only.  Allow booleans to be parsed as
    true: "1", "enabled", "on" case insensitive
    false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".

Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.

WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:14:16 +02:00
David Kocik
246c559916 prusalink: bug fixes of physical printer dialog, start print after upload, accept both OctoPrint and PrusaLink as validation string 2021-06-17 10:50:34 +02:00
David Kocik
725e60d006 PrusaLink class 2021-06-17 10:50:34 +02:00
Vojtech Bubnik
73e0099c55 Merge remote-tracking branch 'remotes/origin/master' into vb_print_regions 2021-06-01 11:19:53 +02:00
Vojtech Bubnik
20ba7c0a1f New parameter "Slicing Mode" for supporting 3DLabPrint airplane models.
S3D's strategy for merging self intersecting models is "Even / Odd"
which PrusaSlicer now supports as an alternative to "Positive" rule.
Also added a "Close Holes" option to fill in all internal structures.
3D-Labprint Models aren't sliceable (till years) #3062 #3708
2021-06-01 11:10:12 +02:00
Lukas Matena
4657e0d670 Improvement related to 'separate z travel speed':
default to zero = use good old travel speed. This is to
ensure backwards compatibility with existing profiles
2021-05-31 21:21:53 +02:00
Martin Budden
bd6badf123 Added option to independently set z axis travel speed 2021-05-31 21:20:43 +02:00
Vojtech Bubnik
980ca195f5 Merge remote-tracking branch 'remotes/origin/lh_multi_material_segmentation' into vb_print_regions 2021-05-26 15:23:35 +02:00
Vojtech Bubnik
5cc6dc59dc Fixed compilation with GCC 2021-05-04 11:22:38 +02:00
Vojtech Bubnik
a7368b9deb Fixing thread-safe StaticConfig creations #6477
fix un-threadsafe code for creating config enum hashtable. #6475
2021-05-04 11:03:26 +02:00
Vojtech Bubnik
d1cfdcb49e Refactoring of StaticPrintConfig & derived classes:
1) Using boost::preprocessor to reduce code duplicities when defining
   new configuration values.
2) Implemented static hash() and operator== on StaticPrintConfig derived
   classes to support hash tables of instances thereof.
2021-04-26 18:37:10 +02:00
Vojtech Bubnik
d9ed9149ae 1) Moved first_layer_heigth frrom PrintObjectConfig to PrintConfig.
Thus the first_layer_height is no more object specific. That makes
   a lot of sense due to the brim calculation being performed over
   all layers at once and due to future merging of supports of
   different objects at first layer.
2) Because now first_layer_height is print specific, the relative
   first layer height derived from the object layer height was partially
   disabled: First the relative first layer height is converted to
   an absolute value when importing config, second the side text
   was changed from "mm or %" to "mm". Still the UI allows entering %.

Both changes may be controversial, let's wait for user feedback.
2021-04-21 12:09:43 +02:00
Lukáš Hejl
368b48b0a0 WIP: Allows regions of MMU segmentation to be trimmed by chosen width. 2021-04-19 07:12:42 +02:00