limited anchors, while before a full perimeter segment was always
taken if possible.
2) Adapted the line infills (grid, stars, triangles, cubic) to 1).
This also solves a long standing issue of these infills producing
anchors for each sweep direction independently, thus possibly
overlapping and overextruding, which was quite detrimental
in narrow areas.
3) Refactored cubic adaptive infill anchroing algorithm
for performance and clarity.
Tighter parsing of PrusaSlicer's own G-code annotations
to avoid clashes with comments inside user G-codes.
Also the GCodeReader was extended to return string_views instead
of copying a substring, and the GCodeProcessor was partially adapted
to string_views.
with the following refactorings:
1) Removed the "printhost_slug" config from the Printer config
and from all the Printer config related spots.
2) "printhost_slug" renamed to "printhost_port". Slug sounds nasty.
3) Improved error reporting of RepetierHost class.
4) Refactored for the new "Physical Printers"
Following refactorings were done independently of the Repetier pull request:
1) Removed PrintHost static print config.
2) Clean-up after conversion of print host configuration
from Printer config to Physical Printer config.
3) Fixed some issues, where the Printer config was still queried for
host configuration. Vojtech believes that this should not happen
after the host configuration is converted to physical printers.
Vojtech still feels that more refactoring is needed in regard to porting
the host configuration from Printer profile to the new Physical Printer
profile.
physical_printers.
Updated the snapshots dialog to display sla_print and sla_material.
Updated the snapshots dialog to display physical_printer instead of
printer if the physical_printer key is nonempty.
The "physical_printer" key was moved from [extras] to [presets] section
of PrusaSlicer.ini
These new API functions are not available on Windows 7 and on older Windows 10,
thus they are newly loaded dynamically and the functions using it retur
a bool indicating whether the functionality is supported or not.
Also the OSX variants that are not supported newly return false instead
of throwing an exception.
Fixes#4972#4974
Use https in config update URLs
http://files.prusa3d.com/* always redirects to HTTPS so use https scheme
directly.
The pull request broke updates to those who installed configs with
http://, not https:// prefix.
Ironing flag ignored on infill rotate #4937
Ironing does not take effect when you change Top Fill Pattern. #4900
Ironing layer not shown in preview when settings are changed #4510
Implemented try/catch blocks for Slic3r exceptions and std::exceptions
with GUI error reporting. This is extremely important to report
corruption of PrusaSlicer.ini.
The following threads are named with this commit:
slic3r_main, slic3r_BackgroundSlicingProcess,
slic3r_tbbpool_xx_yy where xx is a one based index of the TTB thread
and yy is the platform thread ID.
profile. The matching has the following priority:
1) Compatible Print profile with the same logical name aka alias.
2) Prefered Print profile with the same layer height.
3) Compatible Print profile with the same layer height.
4) Prefered Print profile.
5) Any compatible profile.
The same logic applies to the selection of Filament profile, only
a filament_type is compared, not the layer height.
on application start-up, at least not on Windows.
wxEVT_CREATE was called for some control deep in the Plater, however
the event was delivered to the main frame and only for slicer, not
for G-code viewer. Thus the callbacks for 3D Mouse were not registered
for and the 3D mouse did not work on Windows.
Fixed by calling the callback registration from the first execution
of the Idle function.
https://github.com/prusa3d/PrusaSlicer/issues/1212
WIP: The hints do not rescale when switching the "usage" combo box.
The new g-code time estimator needs to be updated to not read
the machine limits if not enabled.
over excessively long tree control items, stealing the window focus.
In case the Tab was reparented from the MainFrame to the floating dialog,
the tooltip created by the Tree Control before reparenting is not reparented,
but it still points to the MainFrame. If the tooltip pops up, the MainFrame
is incorrectly focussed, stealing focus from the floating dialog.
The workaround is to delete the tooltip control.
Vojtech tried to reparent the tooltip control, but it did not work,
and if the Tab was later reparented back to MainFrame, the tooltip was displayed
at an incorrect position, therefore it is safer to just discard the tooltip control
altogether.