Vojtech Bubnik
b5573f959b
Refactoring for code clarity: Replaced this->m_xxx with m_xxx
...
as the m_ prefix already signifies a class local variable.
2021-05-06 14:43:36 +02:00
Vojtech Bubnik
f16d4953be
Removing offset2 from Perl bindings and other minor cleanup.
2021-05-06 14:29:20 +02:00
enricoturri1966
ff632a9ff2
Tech ENABLE_ALLOW_NEGATIVE_Z-> Disable sinking objects for SLA printer
2021-05-06 14:04:07 +02:00
Vojtech Bubnik
0ca6b12da1
Print/PrintObject/PrintRegion refactoring:
...
Newly the PrintObjects own PrintRegions and Print contains references
to PrintRegions owned by PrintObjects, so that a PrintRegion of the same
content is referenced by Print only once.
The refactoring is a WIP to support multi-material painting.
2021-05-06 13:01:09 +02:00
enricoturri1966
123c5af347
#6473 - Update titlebar when opening a project file by double-clicking the file icon
2021-05-06 10:11:53 +02:00
Vojtech Bubnik
ee15f00574
FDM backend refactoring: Return PrintRegion by reference, not by pointer.
...
Added PrintRegion hashing.
2021-05-05 18:13:58 +02:00
Vojtech Bubnik
714149dab2
WIP: Moving ownership of PrintRegions to PrintObjects.
2021-05-05 16:21:55 +02:00
Vojtech Bubnik
a7c67415c7
Another try of fixing compilation on gcc.
2021-05-05 14:34:54 +02:00
Vojtech Bubnik
18001fbb4e
Fixing compilation on gcc
2021-05-05 14:32:19 +02:00
Vojtech Bubnik
d6c5961eb0
Factored out the Print::apply() method and its dependending free functions
...
into PrintApply.cpp module.
2021-05-05 14:30:09 +02:00
Vojtech Bubnik
72ce8cb28d
PrintRegion refactoring: Getting rid of the Print pointer.
2021-05-05 14:17:36 +02:00
Vojtech Bubnik
a2de09e11e
Fixing unit tests.
2021-05-05 13:19:01 +02:00
enricoturri1966
a91306032c
Project dirty state manager -> Fixed crash when loading/saving a 3mf file
2021-05-05 13:17:20 +02:00
Vojtech Bubnik
7d4b3f2992
Fix of safety_offset() after ClipperUtils refactoring.
...
Fixes Solid infill where there should be none #6482
Also the safety offsetting was revised to be enabled only where needed,
the "do safety offset" is now easy to discover by
a new ApplySafetyOffset::Yes enum, and safety offset over union, which
is better done by offset() / offset_ex() has been replaced with
new union_safety_offset() / union_safety_offset_ex() functions, which
better convey their meaning and which could be better optimized than
union() with the safety offset applied.
2021-05-05 12:16:47 +02:00
enricoturri1966
bb18edde0a
Tech ENABLE_ALLOW_NEGATIVE_Z-> Synchronize sinking instances
2021-05-05 11:53:24 +02:00
enricoturri1966
3f6123e653
Tech ENABLE_ALLOW_NEGATIVE_Z-> Added button in object manipulator to drop to bed a sinking object
2021-05-05 09:15:33 +02:00
Vojtech Bubnik
fd3dd1611c
Fixed alignment of sparse infill over multiple layers of the same region,
...
which was broken with 68666de521b1cb15e41ac6728c0e8d3b4b0d4ed0
"Reworked the "new" bridging to respect the bridge_flow_ratio
by maintaining extrusion spacing, but modifying the extrusion width
and / or height."
2021-05-04 18:27:53 +02:00
Vojtech Bubnik
00835c7367
Fixing compilation on clang in debug mode.
2021-05-04 16:13:40 +02:00
Vojtech Bubnik
1aef86f650
Implemented generic mechanism for executing tasks on UI thread synchronously
...
from the background slicing thread, that supports cancellation.
The generic mechanism is used for generating thumbnails into G-code and
Fixes Fix deadlock when canceling the slicing while gcode is creating thumbnails #6476
Thanks @supermerill for pointing out the issue.
2021-05-04 16:07:32 +02:00
enricoturri1966
67572fad3f
Tech ENABLE_ALLOW_NEGATIVE_Z-> Keep sinking objects and instances as sinking after copy/paste or add instance commands
2021-05-04 14:48:30 +02:00
YuSanka
4fe6f726de
ObjectList: Fixed update of the selection, when some gizmo in 3D-Scene is activated
2021-05-04 14:20:19 +02:00
enricoturri1966
cb294e0b3e
Follow-up of 15c32d636d
-> Small refactoring
2021-05-04 13:31:07 +02:00
enricoturri1966
15c32d636d
Seams detection for gcode saved with other slicers
2021-05-04 12:45:51 +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
Lukáš Hejl
46a14abbaa
Added default object color in MMU segmentation according to the default extruder color for printing the object.
2021-05-04 08:13:04 +02:00
Lukáš Hejl
781e6607c8
Fixed updating of extruders list in MMU segmentation gizmo after adding extruders and reloading 3MF with different extruder count and colors.
2021-05-04 07:59:16 +02:00
Lukáš Hejl
71c60a5187
Follow-up of 168b4afbc2
: Replaced forgotten lslices in the top and bottom layer propagation in MMU segmentation.
2021-05-03 22:11:04 +02:00
Lukáš Hejl
cd5fea8b42
Fixed compiler warnings
2021-05-03 21:50:40 +02:00
Lukáš Hejl
2d3eef4e84
Fixed possible warnings
2021-05-03 21:13:13 +02:00
Lukáš Hejl
fa8c319721
Fixed MMU segmentation for cases when a contour was whole colored by one color and a hole was whole colored by a different color.
2021-05-03 21:06:46 +02:00
Lukáš Hejl
5bfdaa7ac8
Parallelization of regions merging for MMU segmentation.
2021-05-03 21:01:52 +02:00
Lukáš Hejl
2e9f0d6eaf
Fixed a few cases of missing colored segments in MMU segmentation.
...
Occasionally, some input polygons contained self-intersections that caused problems with Voronoi diagrams and consequently with the extraction of colored segments by function extract_colored_segments.
Also, occasionally input polygons contained several points very close together (distance between points is 1 or so). Such close points sometimes caused that the Voronoi diagram has self-intersecting edges around these vertices. This consequently leads to issues with the extraction of colored segments by function extract_colored_segments.
2021-05-03 20:56:39 +02:00
Lukáš Hejl
168b4afbc2
Fixed MMU segmentation for multi-volume objects.
...
MMU segmentation no longer works directly on lslices, instead of it works on custom merged regions. So lslices in PrintObject are no longer overwritten because of MMU segmentation.
All regions are scaled by SCALED_EPSILON before merging and shrunk back by SCALED_EPSILON after merging. That fixed issues with multi-volume objects when very close regions weren't merged.
Also, small expolygons and holes are filtered out that fixed missing segmentation at the boundary of two volumes in the case of multi-volume objects.
2021-05-03 20:37:14 +02:00
enricoturri1966
ede14251b1
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_project_dirty_state
2021-05-03 16:05:22 +02:00
enricoturri1966
164af0255a
Tech ENABLE_ALLOW_NEGATIVE_Z -> Keep sinking objects as sinking after reload from disk
2021-05-03 16:02:06 +02:00
enricoturri1966
57199b4116
Tech ENABLE_ALLOW_NEGATIVE_Z-> Fixed build on non-Windows OS
2021-05-03 15:47:16 +02:00
Vojtech Bubnik
ab74ea5c90
One more fix after merge.
2021-05-03 15:30:10 +02:00
Vojtech Bubnik
2aadc1cefa
Fixing after merge.
2021-05-03 15:28:03 +02:00
Vojtech Bubnik
eb66111eda
Merge branch 'vb_clipper_optimization'
2021-05-03 15:24:04 +02:00
Vojtech Bubnik
ef07644bf2
Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer
2021-05-03 15:23:57 +02:00
Vojtech Bubnik
7563c885a1
Fixing compiler warnings
2021-05-03 15:00:23 +02:00
enricoturri1966
1c3090b11f
Tech ENABLE_ALLOW_NEGATIVE_Z-> Layers height editing related fixes
2021-05-03 14:28:55 +02:00
Vojtech Bubnik
96f8744e05
Another fix for C++ conformant compilers
2021-05-03 11:55:23 +02:00
Vojtech Bubnik
c7c7983e77
Fixing compilation on C++ conforming compilers
2021-05-03 11:50:05 +02:00
Vojtech Bubnik
09a80d954c
Further rework of ClipperUtils: Replaced many to_polygons() /
...
to_expolygons() calls with templated ClipperUtils variants to avoid
memory allocation and copying.
2021-05-03 11:39:53 +02:00
Lukáš Hejl
62592cab48
Added missing include (GCC 11.1)
2021-05-01 22:33:59 +02:00
YuSanka
c414f932d4
Fixed a bug with selection from the 3D-scene when ObjectSettings item is selected in ObjectList
...
Steps to repro:
1. Add 2 objects, add Settings for some of object -> Object Settings item is selected
2. In the 3D-scene select another object -> BUG: no changes in the ObjectList
2021-04-30 16:56:18 +02:00
YuSanka
4ffbd027d0
OSX specific: Fixed scale of the frequently settings, when extra display is connected
2021-04-30 16:49:13 +02:00
Lukáš Hejl
0a8a3f6d8c
Fixed build on Windows.
2021-04-30 15:40:27 +02:00
Lukáš Hejl
d11d15aa1e
Rework of MMU segmentation gizmo to support more than three colors.
2021-04-30 15:58:25 +02:00
enricoturri1966
395164c7a1
Fixed conflicts after merge with master
2021-04-30 14:54:58 +02:00
Lukas Matena
95f5b82d6a
Improved MM priming lines placement on circular beds ( #6459 )
2021-04-30 13:11:33 +02:00
Vojtech Bubnik
9fbba855ef
Clipper optimization:
...
1) Removed the already commented-out scaling / unscaling when doing
"safe offsetting"
2) Removed some of the "safe offsetting" at calls where it never was used.
3) Reworked Clipper & ClipperUtils to pass Polygons / ExPolygons / Surfaces
as input parameters without conversion to ClipperLib::Paths. This
should save a lot of memory allocation and copying.
4) Reworked conversions from ClipperLib::Paths & PolyTree to Polygons /
ExPolygons to use the move operator to avoid many unnecessary allocations.
5) Reworked some "union with safe ofsetting" to "offset_ex", which should
be cheaper.
2021-04-30 11:49:57 +02:00
enricoturri1966
28d01542ed
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_gcode_detection
2021-04-29 11:07:47 +02:00
Vojtech Bubnik
b327314b02
Layer::make_perimeters() - when merging regions, use OffsetEx instead
...
of safety offset of UnionEx, which may not be robust.
2021-04-29 11:05:11 +02:00
enricoturri1966
3a28fe62b5
Fixed missing ending cap for toolpaths having a single segment
2021-04-29 09:09:49 +02:00
enricoturri1966
9086542a08
Follow-up of 2c6472ebc3
-> Ensure backward compatibility
2021-04-28 16:06:49 +02:00
enricoturri1966
a3f03ac188
Tech ENABLE_ALLOW_NEGATIVE_Z->Keep as sinking objects saved in project files
2021-04-28 16:02:51 +02:00
enricoturri1966
1863d622b5
Changed order of rendering of sidebar hints to avoid artifacts due to depth buffer cleanup made by gizmo renderers
2021-04-28 13:58:16 +02:00
enricoturri1966
c58572deaa
Tech ENABLE_ALLOW_NEGATIVE_Z->Fixed object popping up after editing layer range fields
2021-04-28 11:07:15 +02:00
enricoturri1966
a83cd647da
Small refactoring in GLCanvas3D::LayersEditing
2021-04-28 08:49:32 +02:00
enricoturri1966
7ae77c06d0
Tech ENABLE_SEAMS_VISUALIZATION -> Added threshold to place seams
2021-04-27 15:12:45 +02:00
enricoturri1966
15f376e468
Tech ENABLE_SEAMS_VISUALIZATION -> Fixed build on Mac
2021-04-27 11:11:21 +02:00
enricoturri1966
2c6472ebc3
Replace label Skirt with Skirt/Brim in preview legend
2021-04-27 10:46:42 +02:00
enricoturri1966
076fdc90c0
Tech ENABLE_SEAMS_VISUALIZATION -> 1st installment of seams visualization in preview
2021-04-27 09:45:15 +02:00
Lukáš Hejl
576c5b78e9
Added seed fill for MMU segmentation
2021-04-27 06:48:09 +02:00
Lukáš Hejl
be1b4ce18c
Fixed compiler warnings
2021-04-27 00:41:20 +02:00
Lukáš Hejl
8a19cf9d64
Extended support of MMU segmentation backed for more than three colors.
...
Serialization and deserialization in TriangleSelector were extended to support up to 16 materials (3 unused states left for possible later extension). These changes also affect the encoding of data from custom supports and seams, but it is backward compatible with the previous encoding. And for custom supports and seams, it is produced exactly the same data encoding as before.
2021-04-27 00:37:49 +02:00
Lukáš Hejl
db55bd706e
Fixed case in MMU segmentation when the infinity-edge in the Voronoi diagram has vertex0(), and vertex1() equals nullptr.
2021-04-27 00:36:22 +02:00
Lukáš Hejl
1b144e80bd
Added hiding of MMU segmentation gizmo when it is selected printer with only one extruder.
2021-04-27 00:35:43 +02:00
Lukas Matena
da702ab135
Fixed a memory leak when repairing an external stl
2021-04-26 20:45:43 +02:00
Lukas Matena
978b359492
Fix normal direction when exporting STL ( #6406 )
...
The export function does not depend on Model/ModelObject::mesh() family of functions,
changing them might break the already too brittle code.
2021-04-26 19:58:08 +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
Lukas Matena
5783cc62fb
Wipe tower priming lines are placed at origin with custom bed shapes
...
Custom shapes were previously detected as circular and the lines were placed off the bed
2021-04-26 09:21:18 +02:00
Vojtech Bubnik
9f4e9da5c6
Merge branch 'tm_vb_clipper_eigen'
2021-04-23 11:44:25 +02:00
enricoturri1966
b600540411
Tech ENABLE_ALLOW_NEGATIVE_Z -> Keep sinking instances as sinking after applying scale gizmo
2021-04-23 09:11:55 +02:00
enricoturri1966
d4695827ce
Tech ENABLE_ALLOW_NEGATIVE_Z -> Keep sinking instances as sinking after applying rotate gizmo
2021-04-23 08:29:29 +02:00
enricoturri1966
70ec034281
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_gcode_detection
2021-04-22 15:30:27 +02:00
enricoturri1966
52583bbe30
Extrusions in custom start g-code forced to be at first layer height level
2021-04-22 15:15:19 +02:00
enricoturri1966
8f385aac44
Tech ENABLE_ALLOW_NEGATIVE_Z -> Shading of sinking instances
2021-04-22 13:18:36 +02:00
Vojtech Bubnik
38bb7d2950
1) New methods PrintObject::num_regions() and ::has_region() to make
...
the code more readable and to highlight where PrintObject::region_volumes
are actually set and consumed.
2) Replaced Slic3r::clamp() with std::clamp(). They differ in the order
of their parameters, thus hopefully no new bugs were introduced.
3) Some refactoring of MultiMaterialSegmentation for efficiency.
2021-04-22 11:41:26 +02:00
tamasmeszaros
ea26581959
Move iterator stuff from polygon to multipoint
2021-04-22 09:44:08 +02:00
Vojtech Bubnik
3b86cb3a3c
Added missing files
2021-04-22 09:26:07 +02:00
Vojtech Bubnik
8d0950ce12
Convincing ClipperLib to use Slic3r's own Point type internally.
2021-04-21 20:15:49 +02:00
tamasmeszaros
a15c16d40d
Use new libnest backend for MinAreaBoundingBox wrapper
2021-04-21 17:21:43 +02:00
tamasmeszaros
657d19482b
Minor code refinements
2021-04-21 16:49:11 +02:00
tamasmeszaros
d069591514
Write hollow flag to SL1 files if any object is hollowed.
2021-04-21 16:29:12 +02:00
tamasmeszaros
dca67822d1
Eliminate warnings caused by changes to aid new libslic3r backend
2021-04-21 16:02:31 +02:00
tamasmeszaros
ad19ab219d
New custom backend for libnest2d using libslic3r types
...
Adapted to new clipper->eigen mod
2021-04-21 16:02:25 +02:00
enricoturri1966
82d577645e
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_gcode_detection
2021-04-21 14:52:52 +02:00
Vojtech Bubnik
0c1953a929
Further fixes of the first_layer_height refactoring.
2021-04-21 14:34:49 +02:00
YuSanka
4ce7ea40f0
Updated splashscreen images
2021-04-21 13:49:24 +02:00
enricoturri1966
c8b83ae011
Tech ENABLE_ALLOW_NEGATIVE_Z -> Allow move gizmo to place an object under the printbed
2021-04-21 12:41:43 +02:00
enricoturri1966
c7771a576b
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_custom_gcode_detection
2021-04-21 12:32:17 +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
49928e131c
Added missing include (GCC 9.3)
2021-04-21 06:08:46 +02:00
enricoturri1966
9cd5ba13f2
Some refactoring into ProjectDirtyStateManager
2021-04-20 16:07:39 +02:00
Vojtech Bubnik
4f950343c8
MMU segmentation refactoring: Most of the MMU segmentation code
...
was extracted to its own file.
2021-04-20 15:07:05 +02:00
Lukas Matena
bf1fc7d436
Info in ObjectList: Added variable layer height
2021-04-20 15:07:05 +02:00
Lukas Matena
e48bc7a5e8
Info in ObjectList: Settings should be above the new info items, info items are selectable
2021-04-20 15:07:05 +02:00
Lukas Matena
61528cbdc8
Show info about custom supports and seam in ObjectList
...
Slight refactoring in GLGizmosManager so it is easier to open a gizmo from the ObjectList
2021-04-20 15:07:05 +02:00
enricoturri1966
6be2a1be2c
Removed mutable members from class GLVolume
2021-04-20 12:55:23 +02:00
enricoturri1966
0e3090fb28
Removed mutable members from class GLCanvas3D
2021-04-20 12:16:55 +02:00
enricoturri1966
b0bb1e7b1d
Removed mutable members from class OpenGLManager::GLInfo
2021-04-20 11:42:34 +02:00
enricoturri1966
f486dedb52
Disabled tech ENABLE_PROJECT_DIRTY_STATE_DEBUG_WINDOW
2021-04-20 10:41:38 +02:00
David Kocik
453884f908
Check of correct suffix during PrintHostSend dialog.
2021-04-20 09:18:50 +02:00
David Kocik
429675db2d
Error appearance of upload notification and dividing lines with lesser impotance of spaces
2021-04-20 09:18:50 +02:00
David Kocik
d7b385f144
compare upload notification by id and not show id in text
2021-04-20 09:18:50 +02:00
David Kocik
fb645c6394
two line text for upload progress bar notification
2021-04-20 09:18:50 +02:00
David Kocik
c140974bf4
Changed ToolpathOuside error notification from plater to slicing error notification type so it is grayed out correctly
2021-04-20 09:18:50 +02:00
David Kocik
9118de4e3c
Upload notification text fix
2021-04-20 09:18:50 +02:00
David Kocik
78e61eddf8
typo fix
2021-04-20 09:18:50 +02:00
David Kocik
441cf62ad3
fix of notification states and upload progress bar notification fadeout
2021-04-20 09:18:50 +02:00
enricoturri1966
c691464659
Project dirty state manager -> Improvements update of plater dirty state after save commands
2021-04-20 09:09:06 +02:00
enricoturri1966
3e09334162
Removed mutable members from class Bed3D
2021-04-20 08:53:56 +02:00
Lukáš Hejl
40d9e51b5e
WIP: Added support for top and bottom layers for MMU segmentation.
2021-04-19 19:21:06 +02:00
Lukas Matena
dfe926ef63
Info in ObjectList: Added variable layer height
2021-04-19 16:10:40 +02:00
Lukas Matena
df3fb31268
Info in ObjectList: Settings should be above the new info items, info items are selectable
2021-04-19 16:10:40 +02:00
Lukas Matena
548ceb7acc
Show info about custom supports and seam in ObjectList
...
Slight refactoring in GLGizmosManager so it is easier to open a gizmo from the ObjectList
2021-04-19 16:10:40 +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
Lukáš Hejl
f49ceb1e0f
WIP: MMU segmentation without top and bottom layers
2021-04-19 07:04:50 +02:00
Lukáš Hejl
e3c33844d5
WIP: Duplicated the FDM support gizmo for the MMU segmentation
2021-04-19 07:01:11 +02:00
enricoturri1966
4da8de5f49
Removed mutable members from class GLToolbar
2021-04-16 15:49:37 +02:00
enricoturri1966
4c464b35f9
Removed mutable members from class Selection
2021-04-16 15:25:03 +02:00
enricoturri1966
a393df59d7
Further refactoring into struct Camera
2021-04-16 14:05:55 +02:00
enricoturri1966
074a44833e
Removed mutable members from struct Camera
2021-04-16 13:44:01 +02:00
enricoturri1966
dabac92755
Fixed flickering of 3D scene GUI when the scene's bounding box gets very big
2021-04-16 12:49:57 +02:00
enricoturri1966
66f6c8c786
Fixed conversion to utf8 of strings entered using Custom G-code dialog
2021-04-16 09:48:22 +02:00
enricoturri1966
ce73671f47
Project dirty state manager -> Improvements to management of gizmos dirty state
2021-04-16 09:36:19 +02:00
Vojtech Bubnik
48a93e40fb
After issuing the color change custom G-code, which is most likely
...
just M600, reset the internal retract counter, so that a retract
will happen after the firmware returns from M600 to the initial position.
Fixes "Blobs on print after manual color change #6362 "
2021-04-15 16:29:30 +02:00
enricoturri1966
8c3d098ff6
Project dirty state manager -> management of gizmos dirty state WIP
2021-04-15 15:19:03 +02:00
Vojtech Bubnik
eb428d48fc
Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer
2021-04-15 13:48:29 +02:00
Vojtech Bubnik
d5ddf8b00e
RemovableManager on OSX: Testing for dictionary values for nullness.
...
Hopefully it fixes Can not start slicer on mac Bigsur #5719
2021-04-15 13:48:20 +02:00
tamasmeszaros
64ec319017
Fix for arrange crash when geometry has zero length segments
...
fixes #5749
2021-04-15 13:23:35 +02:00
enricoturri1966
1e69e6def1
Follow-up of 526233ca47
-> Take in account original instances scale factor
2021-04-15 08:41:20 +02:00
enricoturri1966
526233ca47
Modified version of automatic downscale on load of objects too big
2021-04-14 14:46:49 +02:00
Vojtech Bubnik
0625788583
Fixed obvious bug in move operator, discovered by clang lint ran by Tamas.
2021-04-14 14:25:30 +02:00
Vojtech Bubnik
7112ac61b6
Replacing ClipperLib::IntPoint with Eigen point as a first step to
...
make the ClipperLib paths and polygons compatible with Slic3r paths
and polygons without conversions and memory allocations.
2021-04-14 09:22:51 +02:00
Lukas Matena
8845b0245a
Fixed build against wxWidgets 3.0
2021-04-14 07:05:12 +02:00
Vojtech Bubnik
29cd8aac26
WIP: Fix of arrangement after reducing ClipperLib::cInt
...
from int64_t to int32_t
2021-04-13 16:35:46 +02:00
Vojtech Bubnik
c1179fc2c7
Marked the unsafe ClipperUtils offset functions with CLIPPERUTILS_UNSAFE_OFFSET
...
Replaced some of the unsafe offset functions with safe variants.
Please test the
1) print bed from STL function
2) concentric infill
2021-04-13 13:28:37 +02:00
Vojtech Bubnik
e8643125d8
Clipper / ClipperUtils:
...
1) Let Clipper use int32_t for representing its coordinates. This
reduces memory and allows to skip conversion between Slic3r Polygon
and Clipper polygon.
2) Disable additional offset before executing the Clipper Offset algorithm.
We don't see any reason for that and it required 64bit Clipper coordinates,
which were disabled with 1).
2021-04-13 11:31:54 +02:00
Vojtech Bubnik
dbd1c09523
FDM snug supports: New parameter "closing radius", inspired by Cura's
...
support_join_distance
2021-04-12 14:56:36 +02:00
Lukas Matena
e1619e2ff1
Fixed a typo in an error message (--sw_renderer -> --sw-renderer)
2021-04-12 09:15:28 +02:00
enricoturri1966
94b28f9b8d
Do not use custom gcode in out of bed detection
2021-04-10 11:07:08 +02:00
enricoturri1966
fbde7de98a
Do not convert custom gcode extrusion to travel
2021-04-09 12:52:11 +02:00
enricoturri1966
e89a14c8a7
Project dirty state manager -> current gizmo dirty state
2021-04-09 08:26:48 +02:00
Vojtech Bubnik
558deca789
Configs should point to PrusaSlicer-alpha, not beta in alpha stage.
2021-04-09 08:11:40 +02:00
Vojtech Bubnik
ef6ce8792d
Fix of brim under supports
2021-04-08 16:36:52 +02:00
Vojtech Bubnik
8fd731f7a0
New FDM support sparse infill zig-zag algorithm.
...
Fixed some old support and infill issues.
Fixes support problem #4295
Fixes Parts of interface layer extends beyond supports and cannot be printed
Fixes support missing under horizontal overhang #6058
Fixes Slicer double-traces small sections of Rectilinear Supports, causes
Fixes plastic buildup and nozzle crashes #4951
Fixes Add "Angle Interface layers" #2969
2021-04-08 15:29:40 +02:00
tamasmeszaros
08ca5b29f0
Fix slow cancellation of rasterization step
...
fixes #6253
2021-04-08 14:36:37 +02:00
enricoturri1966
bfbc683a59
Follow-up of 926ecd0585
-> Improved management of plater dirty state
2021-04-07 14:26:04 +02:00
tamasmeszaros
e8af080346
Merge remote-tracking branch 'origin/tm_sl1_import_fix'
2021-04-07 13:56:14 +02:00
enricoturri1966
926ecd0585
Project dirty state manager -> plater dirty state
2021-04-07 12:58:14 +02:00
tamasmeszaros
9b47fb512e
Remove right click menu item for "optimize orientation"
2021-04-07 12:51:02 +02:00
tamasmeszaros
bed3321324
Small improvement to "least supports" method
2021-04-07 12:51:02 +02:00
tamasmeszaros
1663787b96
Better naming of gui controls
2021-04-07 12:51:02 +02:00
tamasmeszaros
649dfca8d6
Allow rotation of multiple selected items. Disable auto positioning
2021-04-07 12:51:02 +02:00
tamasmeszaros
804758dfed
Remove accuracy slicer
...
No practical use
2021-04-07 12:51:02 +02:00
tamasmeszaros
773116b777
Allow auto-rotation of objects not completely inside bed.
...
Don't use SLAPrintObject as the input for optimization. Use ModelObject and pass the print config to the optimization in RotoptimizeJob::prepare()
2021-04-07 12:51:02 +02:00
tamasmeszaros
5443f77489
Increase performance of "best misalignment" method
2021-04-07 12:51:02 +02:00
tamasmeszaros
4a9768cc7f
Change configuration bank name for SLA auto rotation
2021-04-07 12:51:02 +02:00
tamasmeszaros
33eec05f02
Tolerate corrupted appconfig settings for auto rotation
2021-04-07 12:51:02 +02:00
tamasmeszaros
e7f5c61bb8
Remove leftover debug message
2021-04-07 12:51:02 +02:00
tamasmeszaros
f3e3aabec7
Least supports optimization revived.
...
Fix missing include on Win32
Cleanup benchmarking code
2021-04-07 12:51:02 +02:00
tamasmeszaros
0194094afa
Method selection implemented
2021-04-07 12:51:02 +02:00
tamasmeszaros
4eb13a407f
Extend execution framework with convenience functions
2021-04-07 12:51:02 +02:00
tamasmeszaros
46fd722f3c
Unite cancel callback and status function
2021-04-07 12:51:02 +02:00
tamasmeszaros
de8bb00fa9
Speed up rotation optimizer
...
- No float to double conversion
- Solving issue of random (very similar) results due to the parallel summation of floats
2021-04-07 12:51:02 +02:00
tamasmeszaros
7760d3fbc4
Add new execution framework
...
Inspired by std::execution
2021-04-07 12:51:02 +02:00
tamasmeszaros
4293a68aaa
Reverting to old rotation optimizer object-function.
...
Keep the performance optimizations though
2021-04-07 12:51:02 +02:00
tamasmeszaros
3135e47180
Fix duplicated error message dialog from GUI jobs.
2021-04-07 12:41:52 +02:00
tamasmeszaros
9aac1b6fa5
Fix issue with importing sl1 files with non-ascii filenames.
2021-04-07 12:41:38 +02:00
YuSanka
effad844e2
MSW specific: Fixed update of the UI after system color change.
...
Note: the wxEVT_SYS_COLOUR_CHANGED event works only for high contrast settings under MSW.
+ ConfigSnapshotDialog: Fixed UI colors for dark mode on all platforms
2021-04-06 22:25:35 +02:00
enricoturri1966
edbb1d0f69
Project dirty state manager -> presets dirty state
2021-04-06 16:29:05 +02:00
Lukas Matena
9660d35f8c
An attempt to fix time estimates for 'Marlin (legacy)' flavor
...
Old M204 S sets both printing and travel accelerations, which must be
accounted for now when the latter was separated.
2021-04-06 15:45:49 +02:00
enricoturri1966
9b2d9fb01a
GCodeProcessor added travel acceleration
2021-04-06 15:45:49 +02:00
enricoturri1966
52af90ed8f
GCodeProcessor use new flavor gcfMarlinFirmware
2021-04-06 15:45:49 +02:00
Lukas Matena
8c89bf748b
Implemented new acceleration control behaviour for the new Marlin firmware flavor:
...
- show extra travel acceleration settings in 'Machine limits' page in Printer Settings
when the new firmware flavor is selected
- updated tooltips on the config values (they were basically wrong even in the current version)
- 'Marlin (legacy)' firmware flavor behaviour should not change: it exports M204 Pa Rb Ta
(where a, b are the values from machine limits) at the beginning of gcode and it uses
M204 S... for feature type dependent acceleration settings (legacy variant of M204 P.. T..)
- new Marlin Firmware exports M204 Pa Rb Tc (where a,b,c are the values from machine limits).
Feature type dependent acceleration is set using M204 P..., not overriding the travel acceleration.
2021-04-06 15:45:49 +02:00
Lukas Matena
f0e9ad46ec
Renamed the gcfMarlin enum value to gcfMarlinLegacy so we never mistake it for the new one
...
There should be no functional change.
2021-04-06 15:45:49 +02:00
Lukas Matena
151a76ee92
Duplicated Marlin firmware flavor to 'Marlin (legacy)' and 'Marlin Firmware'
...
The two flavors should be identical after this commit, except that GCodeProcessor.cpp was not updated. This shall be done in a later step.
2021-04-06 15:45:49 +02:00
Lukas Matena
58a811a638
Wipe tower: correctly detect first layer even with 'No sparse layers' option enabled
2021-04-06 15:37:39 +02:00
Lukas Matena
43d9e38325
Wipe tower: reorder extruders so first layer starts with soluble if possible
...
That way it will not be wiped on first layer
2021-04-06 15:37:39 +02:00
Lukas Matena
5d636ab853
Wipe tower: respect first_layer_speed
2021-04-06 15:37:39 +02:00
enricoturri1966
5d4b7c03b6
Extended interface of project dirty state manager
2021-04-06 13:17:29 +02:00
enricoturri1966
144e37c274
1st installment of project dirty state manager
2021-04-06 10:00:17 +02:00
Lukas Matena
3459231111
Wipe tower: set travel feedrate for a move from custom toolchange position to the wipe tower ( #5483 )
2021-04-05 23:39:27 +02:00
Lukas Matena
67bc2e472f
Wipe tower: fix wipe moves after recent changes
2021-04-05 23:39:27 +02:00
Lukas Matena
a6ddab856b
Wipe tower: refactoring of brim and solid infill on first layer
2021-04-05 23:39:27 +02:00
Lukas Matena
f6de946dd7
Wipe tower: don't use soluble filament for perimeters, sparse infill or first layer
2021-04-05 23:39:27 +02:00
Lukas Matena
3ed68ac28a
Wipe tower: slightly changed finish_layer logic so it can be called after any toolchange
2021-04-05 23:39:27 +02:00
Lukas Matena
cc7ef40e20
Wipe tower: remove unfinished square wipe tower option
2021-04-05 23:39:27 +02:00
Lukas Matena
97c4c02001
Wipe tower: don't do sparse infill when there is a soluble filament above it
2021-04-05 23:39:27 +02:00
tamasmeszaros
04526d5c28
Merge branch 'tm_libnest2d_backport'
2021-04-01 09:50:12 +02:00
enricoturri1966
194cab75d9
Refactoring in GCodeViewer
2021-04-01 08:24:19 +02:00
YuSanka
46e4f54fd0
Auto color change: next improvements
2021-03-31 15:10:48 +02:00
tamasmeszaros
f117d02750
Back-porting improvements for libnest2d
2021-03-31 09:36:54 +02:00
enricoturri1966
ab3890dab5
Follow-up of 3fce8398f0
- Fixed build warnings
2021-03-31 08:54:58 +02:00
Lukas Matena
7007bf665c
Added a missing include for gcc
2021-03-30 23:04:42 +02:00
YuSanka
c71fe03022
Fixed rescale for nodes with itInstanceRoot | itLayerRoot types
2021-03-30 18:26:28 +02:00
tamasmeszaros
fabb6716ee
Extend wx png and expat fixes for all of its built-in libraries
...
That means adding tiff and jpeg
2021-03-30 12:56:37 +02:00
enricoturri1966
3fce8398f0
Follow-up of 6ffa51da58
- Modified export of final M73 lines for remaining time to next printer stop accordingly to firmware specifications
2021-03-30 09:59:10 +02:00
Vojtech Bubnik
e94a4da954
Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer
2021-03-29 14:15:27 +02:00
Vojtech Bubnik
acce99f29b
Fixed some compilation warnings in MutablePolygon.cpp
2021-03-29 14:15:18 +02:00
YuSanka
45ac53efa1
Code refactoring to reduce switch statements on ConfigOptionEnum<> templates
2021-03-26 19:01:10 +01:00
YuSanka
2c23e25497
DoubleSlider: fix for 1c2d264570
2021-03-26 13:34:37 +01:00
enricoturri1966
68303059a6
Extract bed size from gcode produced with Simplify3d
2021-03-25 09:23:14 +01:00
YuSanka
3a5360651d
Added "Printable" menu item for multiple selection
2021-03-24 20:26:31 +01:00
enricoturri1966
cfcce6f29a
Follow-up of 10c3e82917
- Updated version for unpublished techs in Technologies.hpp
2021-03-24 14:30:46 +01:00
enricoturri1966
645e5b6862
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_extended_m73
2021-03-24 12:05:36 +01:00
enricoturri1966
9c951b3108
Fixed parsing of g-code files generated by newer versions of Simplify3D
2021-03-24 11:36:16 +01:00
YuSanka
8bc23c90fc
Suppress to show Search window on the Plater using Ctrl+F shortcut, when we are at Preview mode
2021-03-24 11:32:33 +01:00
Oleksandra Yushchenko
4496e2a8ce
Follow-up of 908c48ae6a
-> Fixed update after switching tab after editing custom g-code in settings tabs ( #6258 )
2021-03-24 11:20:57 +01:00
YuSanka
991fa67fd1
OptionsSearcher improvements: Fixed a key for option() and groups_and_categories.
...
It contains "preset_type;opt_key" now. This key helps to avoid a collisions by using a same options key from different type presets.
Example: Option "elefant_foot_compensation" is in Print presets and SLA_printer presets
2021-03-24 11:14:07 +01:00
Vojtech Bubnik
10c3e82917
Updated version number,
...
alpha stores configs in alpha directory.
2021-03-23 13:50:53 +01:00
enricoturri1966
a0feb0f652
Preview and G-code viewer - Fixed synchronization between markers for pause print, color changes, custom g-code, retractions, deretractions and current line shown in g-code window
2021-03-23 12:46:04 +01:00
Lukas Matena
cafa5b26a8
Compilation fixes
2021-03-23 12:40:29 +01:00
Vojtech Bubnik
af9c7c967f
Implementing a new switch for the shape of support towers:
...
expanded to a grid (the old way) vs.
snug (like the upstream Slic3r, Cura or Ideamaker).
Snug supports suffered from the degeneracies when merging overhang islands
over a large number of layers when projecting the support towers down.
We borrowed the idea & a bit of code from Cura by simplifying the support
polygons by closing the concave cracks, see the smooth_outward() function
and the MutablePolygon class.
Fixes Support problems with models with hole in the walls. #555
Fixes Support in the Air #740
Fixes [Bug] Supports generated beyond bed edges (X<0 and X>250) and where none are needed. #902
Fixes Unable to remove support material/can't change support "inflation distance" #2708
Fixes FR: support inflation and support conform to boundary #4783
Fixes Support blocker not working on this model #1346
Fixes Unnecessary support material #1993
Fixes support blocker enforcer issue #6240
2021-03-23 11:06:45 +01:00
Vojtech Bubnik
00295919bf
Fixes of MutablePolygon
2021-03-23 11:06:45 +01:00
enricoturri1966
6ffa51da58
1st installment of export to gcode of M73 lines for remaining time to next printer stop
2021-03-23 09:05:52 +01:00
YuSanka
1c2d264570
Fix for f5d3866847
2021-03-22 15:46:02 +01:00
YuSanka
f5d3866847
Follow-up 995512f280
DoubleSlider improvements:
...
Fixed a case when wipe tower is used to the end of print and there is one layer which is not marked in layers_times statistics
2021-03-22 11:47:05 +01:00
Lukáš Hejl
1b3b4c5694
Added missing include (GCC 9.3)
2021-03-22 10:30:49 +01:00
enricoturri1966
b6470c3390
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_window
2021-03-22 08:39:44 +01:00
tamasmeszaros
aa2d8915ef
Fix crash caused by boost log trivial on mac
2021-03-19 14:03:28 +01:00
tamasmeszaros
8295f81685
Fix mac warnings
2021-03-19 14:03:28 +01:00
Vojtech Bubnik
6f3f3624c5
Fixing FDM support bottom zero interface layers, where one dense
...
interface layer was errorneously created.
Follow-up to 00db3dc419
73b88e6ce0
referencing the issues fixed by the above commits:
Fixes Allow to disable raft under support structures. #3772
Fixes Separate counts for floor and roof support interface layers #4288
2021-03-19 13:39:20 +01:00
Vojtech Bubnik
4745948b84
Fixed compilation on Linux
2021-03-19 11:35:09 +01:00
Vojtech Bubnik
9f09f03228
Refactoring of FDM support generator:
...
1) If "support on build plate only" is enabled, the support columns are
newly trimmed to not land on top of an object. However this may make
the column too small to be stable.
2) Support enforcers newly take precedence over "supports on build plate only"
and over "don't support bridges".
3) Some refactoring of the support generator code for clarity: Reduced
some of the worst spagetti offenders.
Fixes Support generated even if support on build only activated #915
Fixes Bug: supports on build plate only #1340
Fixes Bottom interface layer is not generated , support on build plate only. (long open defect) #4199
Fixes option "supports on build plate only" does not work #3980
Fixes No support interface layers generated #1997
Fixes Feature Request: Option to combine results of 'support from build plate only' and 'support enforcers only' #2801
Fixes Support interface isn't generated: build plate only + blocked by model + support enforcer #3831
Fixes Support Enforcer don't create interface layers #5748
Fixes Support Enforcers Don't Have Top Loops/Raft #1870
Fixes Don't cancel support enforcers with "don't support bridges" #5105
2021-03-19 11:21:35 +01:00
YuSanka
4602f40813
Next auto color change improvements
2021-03-19 11:11:46 +01:00
YuSanka
995512f280
Fix of #6232 - Layer preview number scale and print time problem.
...
Problem description:
When "Print Settings -> Multiple Extruders -> No sparse layer" is enabled, then "Smart" Wipe Tower is used for wiping.
As a result, each layer with tool changes is splited for min 3 parts: first tool, wiping, second tool ...
But vertical slider wasn't respect to this case.
2021-03-18 18:53:49 +01:00
YuSanka
eda19a7e56
Fixed a crash after switch from Filament Settings Tab to some another, when "Custom G-code" category is active.
2021-03-18 18:53:49 +01:00
David Kocik
bfd87dc93a
cleanup
2021-03-18 13:21:11 +01:00
David Kocik
7c7c355376
Notification manager - apply_in_preview function
2021-03-18 12:42:42 +01:00
YuSanka
a6cf840540
Auto color change improvements: Show info notification just ones, if there is new print
2021-03-17 17:11:03 +01:00
David Kocik
8c075a878f
warning fix
2021-03-17 15:43:41 +01:00
David Kocik
d2ec2b33f9
missing override keyword
...
missing override keyword
2021-03-17 15:40:59 +01:00
Vojtech Bubnik
a95607d7bf
Fixing an FDM support generator bug, where some of the support columns
...
were missing abruptly when going down.
The issue was caused by extracting support areas from a grid and
filtering the extracted islands by intersection with the input islands.
Sometimes the input islands were a bit bigger than the extracted contour,
thus some of the samples of the input islands did not fall into
the extracted contour.
2021-03-17 12:25:49 +01:00
tamasmeszaros
b13239e4ca
Fix previous commit's missing include
2021-03-17 10:05:24 +01:00
tamasmeszaros
0c4fb6dfcc
CGAL may have infinite face vertex ranges.
...
Calling vtc.size() may end up in an infinite loop. Also, quads do not appear in CGAL meshes.
2021-03-17 09:42:03 +01:00
David Kocik
5daaaa2845
Fixed upload notification cancel button
2021-03-16 18:44:12 +01:00
YuSanka
80b9a3c62b
Fix of #6212 - Cannot select "New Project" after deleting models in saved project, continuing overwrites old project
2021-03-16 10:32:15 +01:00
tamasmeszaros
96ac6ff2fa
Fix undrillable hole color and picking
2021-03-16 09:31:03 +01:00
tamasmeszaros
6d58546aef
Fix unmarked failed holes on first gizmo opening
2021-03-16 09:31:03 +01:00
tamasmeszaros
3d0d96d8f9
Working hole drilling one by one without linear slowdown.
2021-03-16 09:31:03 +01:00
tamasmeszaros
6059d89bc8
Avoid mesh alteration when converting to CGAL Surface_Mesh
...
orient_to_bound_a_volume tends produce incorrect results.
2021-03-16 09:31:03 +01:00
tamasmeszaros
4b9de0398f
Drill holes one by one and display warning of any of them fails
...
Drill with cgal::minus for now
2021-03-16 09:31:03 +01:00
Vojtech Bubnik
d0febbec32
Disable the new Toggle fullscreen menu item on OSX, it adds its own.
2021-03-16 08:54:46 +01:00
Lukas Matena
fc7762e465
Added a missing include (Linux)
2021-03-16 07:25:31 +01:00