Commit Graph

2579 Commits

Author SHA1 Message Date
Vojtech Bubnik
5ccd9d9d9a Fixed previous commit for Linux/OSX 2020-10-29 13:16:32 +01:00
Vojtech Bubnik
2fd7c20a86 Workaround for missing or partially implemented std::from_chars() 2020-10-29 11:37:45 +01:00
Vojtech Bubnik
d2e5be89e3 Fix of Slicer image not good #4992
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.
2020-10-29 10:51:51 +01:00
Vojtech Bubnik
bb74d2da5b Removed the dead code GCode/Analyzer.cpp,hpp to simplify code navigation. 2020-10-28 17:26:08 +01:00
Vojtech Bubnik
7b2aca0159 Removed the legacy GCodeTimeEstimator.cpp,hpp
It was difficult to navigate through the live code with the dead code
still available for full search.
2020-10-28 17:19:43 +01:00
Vojtech Bubnik
502aa42ac0 Removed FillRectilinear3, it was a dead end. 2020-10-28 13:33:22 +01:00
Vojtech Bubnik
afaa7a4cc2 Manual merge of Increased filament stats precision in generated gcode file #780 2020-10-28 10:46:59 +01:00
Vojtech Bubnik
7c571c1d9d Merge of pull request Add support for RepetierServer #4384 by @docbobo
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.
2020-10-28 09:51:05 +01:00
enricoturri1966
0798fa8185 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-10-27 17:21:41 +01:00
enricoturri1966
128e4cff2d #4982 - Load config data when importing gcode produced by Slic3r and Slic3rPE 2020-10-27 17:18:15 +01:00
enricoturri1966
90c69e6bda #4986 - Fixed remaining print time and SD-percentage calculation not correct (replaces e14c122d12) 2020-10-27 15:50:04 +01:00
Vojtech Bubnik
06c16b085d Snapshots extended to capture and restore sla_print, sla_material,
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
2020-10-27 12:48:31 +01:00
Vojtech Bubnik
751ae8e789 Fixed crash in monotonous infill due to some unexpected pinching
of the inner contour at a single vertical infill line without
pinching the outer contour.
2020-10-27 09:38:51 +01:00
tamasmeszaros
969ca98b52 Revert "Require minimum version 5.0 of CGAL"
This reverts commit f3327adf49.
2020-10-26 14:41:23 +01:00
tamasmeszaros
f3327adf49 Require minimum version 5.0 of CGAL 2020-10-26 14:30:44 +01:00
enricoturri1966
e14c122d12 Fixed percentage value exported into gcode M73 lines 2020-10-26 11:44:38 +01:00
Vojtech Bubnik
ce020781d3 Refactored loading of Get/SetThreadDescription() on Windows:
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
2020-10-26 08:09:17 +01:00
Vojtech Bubnik
e1f6bb4a92 Follow up on Add G10 temperature G-code support for the RepRapFirmware flavour.
Reduced copy / paste.
2020-10-24 17:32:30 +02:00
David Kocik
64f6499db5 Fix of empty error string. No testing errors for boost::filesystem::permission. 2020-10-23 18:35:32 +02:00
David Kocik
8b647ab41b fix of copy_file_inner 2020-10-23 15:36:32 +02:00
Lukas Matena
8cd13803ca Updated the G10 RepRapFirmware pull request to current master 2020-10-23 13:27:45 +02:00
Lukas Matena
18f72d82b9 Merge branch 'pa_reprap_g10_temperature_support' of https://github.com/ardenpm/PrusaSlicer into lm_g10 2020-10-23 11:42:35 +02:00
David Kocik
cb2f751aed missing header 2020-10-23 11:19:31 +02:00
David Kocik
115cbd4650 aditional information to FAIL_COPY_FILE error message and changed bools controlling Export finished notification 2020-10-23 10:18:14 +02:00
Lukas Matena
5670f5ffb0 Fix couple of build issues on gcc 2020-10-23 07:51:58 +02:00
Vojtech Bubnik
9a4376ddc6 Fix of previous commit 2020-10-22 17:54:32 +02:00
Vojtech Bubnik
b1b7a5ad1b Fix of ironing invalidation. Fixes
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
2020-10-22 17:36:51 +02:00
YuSanka
0f9faeda98 Fixed conversion from/to imperial units for objects with parts/modifiers 2020-10-22 15:45:17 +02:00
Vojtech Bubnik
d8f45ff1d8 Workarounds and documentation of OSX posix incompatibilities 2020-10-22 14:57:50 +02:00
Vojtech Bubnik
723406dfea Workaround for OSX non-compliant implementation of
pthread_getname_np / pthread_setname_np
2020-10-22 14:45:15 +02:00
Vojtech Bubnik
0d2c31d0e4 and again a fix on Windows 2020-10-22 14:35:20 +02:00
Vojtech Bubnik
6e2a5419cc Fixes of previous commit on Posix platforms 2020-10-22 14:29:40 +02:00
Vojtech Bubnik
81b6883710 Thread names shortened to 15 characters to fit Posix norm.
Added get_current_thread_name()
2020-10-22 14:11:08 +02:00
Vojtech Bubnik
6531061d09 Support for naming slicer own threads for debugging.
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.
2020-10-22 13:54:15 +02:00
enricoturri1966
844ec8447d ENABLE_PAN_ROTATE_SCENE_IN_GIZMOS set as default 2020-10-22 11:01:30 +02:00
Vojtech Bubnik
70e44c3e8e Fixed definition of psSlicingFinished to fix notification updates
after the slicing finishes.
2020-10-21 14:00:56 +02:00
enricoturri1966
68a7e5ce41 Rotating/panning the view, using mouse left/right + CTRL modifier, while any gizmo is active 2020-10-19 15:55:16 +02:00
Lukas Matena
ebcd073fd3 Removed unused include (related to #4912) 2020-10-19 11:16:43 +02:00
Vojtech Bubnik
7896de892b Fix of the "dock" menu on OSX to start a new instance of PrusaSlicer
in case a single instance is disabled.
Make the "single_instance" enabled by default on OSX initially
to match the platform.
2020-10-17 09:23:05 +02:00
Vojtech Bubnik
86ee8e7687 Improved matching of Print and Filament profiles after switching the Printer
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.
2020-10-16 16:03:31 +02:00
Vojtech Bubnik
d49a98f154 When switching Printer profiles, a profile with the same logical name
aka alias is searched for first before activating the default
print / filament profile as configured in the printer settings.
2020-10-16 14:45:54 +02:00
tamasmeszaros
edb8b9f46d Cover various overhang types cumulatively 2020-10-16 11:14:57 +02:00
tamasmeszaros
fb1f3589ed Use rotated bounding box to calculate eccentricity 2020-10-16 11:14:57 +02:00
enricoturri1966
daf1011705 Changed heuristic to clamp toolpaths width 2020-10-16 09:02:37 +02:00
Vojtech Bubnik
a8fda7d2f1 Fixed some more issues in copy / paste of objects and volumes
due to the layer_height_profile, paint on supports and seam
being stored as an object on its own onto the Undo / Redo stack.
2020-10-15 17:29:49 +02:00
YuSanka
00a7799341 UnsavedChangesDialog : improvements
* Added "Remember my choice" checkbox
* Center on the screen and set position in respect to the position of mainframe or settings dialog

Preferences : Added checkboxes for enable/suppress showing of the UnsavedChangeDialog

SearchImGui : close after parameter selection_is_changed_according_to_physical_printers

PhysicalPrinterDialog, SavePresetDialog : Center on the screen
2020-10-15 16:53:14 +02:00
Vojtech Bubnik
90ddffa83c This broke the SLA support point generator test. Why? 2020-10-15 13:35:45 +02:00
Vojtech Bubnik
c388c42055 Fixed assignment of the slicing timestamp to the slicing finished
notification.
2020-10-15 12:02:55 +02:00
enricoturri1966
3fc12fdaaa Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-10-15 10:25:22 +02:00
enricoturri1966
8580ecacca Added option to apply the sequential slider in preview to top layer only or to whole gcode toolpaths 2020-10-15 10:25:13 +02:00
Vojtech Bubnik
19a115260a A little bit cheaper triangle random sampling + documentation. 2020-10-15 07:58:13 +02:00
Vojtech Bubnik
447f4b8303 Polishing of NotificationManager:
Fixed pairing of PrintObjects with slicing warning notifications.
Removed or commented out dead code.
Added documentation.
2020-10-14 16:49:06 +02:00
Vojtech Bubnik
e0c5309bc3 wxEVT_CREATE and wxEVT_ACTIVATE is not being called on the main frame
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.
2020-10-14 12:55:07 +02:00
Vojtech Bubnik
8c0b8f89d0 Updated the command line single-instance processing and help text.
Updated escaping of the command line arguments when passed to the other
instance.
2020-10-12 17:06:03 +02:00
enricoturri1966
5356b72a86 Tech ENABLE_GCODE_DRAG_AND_DROP_GCODE_FILES set as default 2020-10-12 13:09:04 +02:00
enricoturri1966
f04d9c1806 Tech ENABLE_GCODE_APP_CONFIG as default 2020-10-12 12:38:34 +02:00
lukasmatena
89e4a78722
Merge pull request #4747 from wavexx/monospaced_gcode
Use monospaced fonts in gcode sections
2020-10-10 14:01:48 +02:00
enricoturri1966
fe971defcd Disabled tech ENABLE_ENVIRONMENT_MAP 2020-10-10 10:11:27 +02:00
Vojtech Bubnik
95af708171 Removed m_ prefix from public member variables. 2020-10-09 13:09:21 +02:00
Vojtech Bubnik
170fe23b46 Fixing Undo / Redo issues after copy / paste due to not updating
ObjectIDs of support painting / seam painting / layer height profile.
2020-10-09 12:26:28 +02:00
tamasmeszaros
267907e5ba SLA: Fix for crash with only 1 layer
fixes #4836
2020-10-08 10:00:55 +02:00
enricoturri1966
ce0312acbd Fixed gcodeviewer application title on Linux and Mac 2020-10-07 16:02:01 +02:00
Vojtech Bubnik
26b95e3c3c Legacy conversion of "monotonous" to "monotonic" 2020-10-07 09:38:36 +02:00
enricoturri1966
7bee5b5479 Added Preference dialog to standalone gcode viewer 2020-10-06 15:11:08 +02:00
Lukas Matena
b42a12db66 Fixup of 8df0181 (turning off the export of machine limits)
This should solve #1212 for good
2020-10-06 13:31:42 +02:00
Lukáš Hejl
6ed25f6e1c Fixed avoiding of other printed objects
Calling std::move on itself causes that the first polygon is empty, which results in disabling this feature
2020-10-06 13:19:39 +02:00
YuSanka
764565dbc3 Added info message about successfully save of the preset(s) modifications
+ more warnings fixes
2020-10-06 12:32:28 +02:00
Lukas Matena
dbedd3f9b0 Merge branch 'lm_painter_fixes' 2020-10-06 12:09:56 +02:00
Lukas Matena
8bcdbb7a60 Painter gizmos should now work with non-uniformly scaled models 2020-10-06 12:06:39 +02:00
Vojtech Bubnik
e407b79c94 Docker icon on OSX 2020-10-06 12:05:05 +02:00
Vojtech Bubnik
ecade4ac23 Fixed limitation of acceleration values written into G-code
in case the machine limits are disabled.
2020-10-06 10:24:06 +02:00
Vojtech Bubnik
7fbdda9080 Renamed monotonous infill to monotonic. 2020-10-05 16:38:28 +02:00
enricoturri1966
c94fb13369 AppConfig modified to generate a separate config file for the standalone gcodeviewer 2020-10-05 15:42:35 +02:00
Lukas Matena
4d3190f988 Changed cmake minimal version to 3.13 (#4720) 2020-10-05 12:10:19 +02:00
enricoturri1966
04a928b241 Follow-up of 8df01818dd -> GCodeProcessor uses new Machine Limits limitations 2020-10-05 09:15:43 +02:00
bubnikv
8df01818dd Limiting the application of Machine Limits
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.
2020-10-02 17:32:03 +02:00
enricoturri1966
0f44caa99c ENABLE_SLOPE_RENDERING set as default
Slope rendering active only when using Gizmo FDM supports
2020-10-02 15:43:39 +02:00
enricoturri1966
11d8a2ad8e Start PrusaSlicer in gcode viewer mode when dragging and dropping a .gcode file on the application icon 2020-10-02 11:40:21 +02:00
enricoturri1966
1130778d5e Small fix in debug tech ENABLE_GCODE_VIEWER_DATA_CHECKING 2020-10-02 09:14:43 +02:00
YuSanka
2bba0e3131 Physical printers: Implemented import/export to/from the ConfigBundle.
+ fixed a bug : Case sensitivity of printer's name wasn't check during the adding of a new printer,
as a result in printers list was appeared both of printers (ex. "YuSanka" and "yusanka"), but related file was just one.
2020-10-01 22:48:57 +02:00
Lukas Matena
1ca8120398 Sphere selection added as an option for painting gizmos 2020-10-01 00:05:01 +02:00
Lukas Matena
c696e6ec19 Experiment with spherical cursor (painting gizmos) 2020-09-30 17:34:11 +02:00
enricoturri1966
980fe77b32 #4806 - Fixed detection of move type for G1 lines containing Z>0 and E>0 2020-09-30 08:34:29 +02:00
bubnikv
ab0890ed34 Merge remote-tracking branch 'remotes/origin/vb_modelobject' 2020-09-29 16:31:18 +02:00
Lukas Matena
48b0a14c4c Fixup of previous commit 2020-09-25 13:00:43 +02:00
Lukas Matena
b178d0af38 Wipe tower - small refactoring and fix
Collection of data from internal wipe tower gcode generator now uses move semantics.
Part of gcode at the end of priming was erroneously not exported (extruder current reset etc.)
2020-09-25 12:35:20 +02:00
Lukáš Hejl
0b0709b3d8 Fix crash in adaptive infill when an extrusion line width is zero.
When an extrusion line width is set to zero, then an extrusion line width is calculated from nozzle diameter.
2020-09-25 09:54:27 +02:00
Vojtech Bubnik
e0b0a2cdcf Fix of previous commit. 2020-09-24 20:32:52 +02:00
Vojtech Bubnik
7a799be426 DynamicPrintConfig::normalize() renamed to normalize_fdm(),
optimization of Print::apply()
2020-09-24 19:03:33 +02:00
Vojtech Bubnik
94aac4cf97 What MSVC could process I always wonder. 2020-09-24 15:45:04 +02:00
Vojtech Bubnik
54976e29bb New class ModelConfig wrapping DynamicPrintConfig and a timestamp
to help with detecting "not changed" event when taking
Undo/Redo snapshot or synchronizing with the back-end.

Converted layer height profile and supports / seam painted areas
to the same timestamp controlled structure.
2020-09-24 15:34:13 +02:00
Vojtech Bubnik
0d6eb842b0 Merge branch 'vb_undoredo_timestamp' 2020-09-23 13:00:01 +02:00
Vojtech Bubnik
dde64d361b Tiny polishing and documentation. 2020-09-23 12:59:15 +02:00
Vojtech Bubnik
0dad7adfa1 "There is an object with no extrusions on the first layer."
should throw SlicingError, not RuntimeError.
2020-09-23 12:58:58 +02:00
Vojtech Bubnik
056c46d01f Undo/Redo serialization extension:
If an object indicates a valid timestamp, then the timestamp
is relied upon to not serialize the object data if the timestamp
of the same object on the undo/redo stack matches.
2020-09-23 12:18:39 +02:00
Lukas Matena
4bf49d960c Merge branch 'lm_seam_painter_backend' 2020-09-22 21:02:07 +02:00
Lukas Matena
a13fc805d7 Removed obsolete wipe tower related code
Most of the code is already commented out for a long time, it should be safe to remove now.
2020-09-22 15:20:24 +02:00
Lukas Matena
e7ae26fb8a Fix of #2834 (unretracted wipes on wipe tower)
Wiping moves performed before moving away from the wipe tower were replaced by
scheduling a regular wipe that is performed after normal gcode generator regains
control. This makes it consistent with wipes on the model and gets rid of the
unretracted wipes.
2020-09-22 15:20:19 +02:00
Vojtech Bubnik
230dbb7394 Adaptive Cubic infill:
1) Fixed a wrong offset when extracting infill lines from the octree.
2) Added a variant for testing triangle in a bounding sphere
   when buildind the octree. Currently not used as the box test
   is more tight.
3) "Bridging infill" regions are now triangulated and used to densify
   the octree as well to support the bridging infill correctly.
2020-09-22 08:53:45 +02:00
Vojtech Bubnik
6cdb19971f Fixed crash in Adaptive Cubic infill if just a single line was extracted.
New function to chain lines, however not used by the Adaptive Cubic infill.
2020-09-21 11:10:57 +02:00