Commit Graph

268 Commits

Author SHA1 Message Date
Vojtech Bubnik
4e0a0c5c51 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
b3e936bda3 Refactoring of adaptive cubic / support cubic:
1) Octree is built directly from the triangle mesh by checking
   overlap of a triangle with an octree cell. This shall produce
   a tighter octree with less dense cells.
2) The same method is used for both the adaptive / support cubic infill,
   where for the support cubic infill the non-overhang triangles are
   ignored.
The AABB tree is no more used.
3) Optimized extraction of continuous infill lines in O(1) instead of O(n^2)
2020-09-17 18:39:28 +02:00
Vojtech Bubnik
f58ee46687 WIP Refactoring of exceptions:
1) All slicer's exceptions are now derived from Slic3r::Exception.
2) New exceptions are defined for slicing errors.
3) Exceptions are propagated to the Plater to show.
It remains to modify the slicing back-end to throw the new SlicingError
exceptions instead of std::runtime_error and to show the other exceptions
by a message dialog instead of a notification.
2020-09-14 18:03:22 +02:00
Lukas Matena
2e11c4e5b9 Merge branch lm_seam_painter_frontend 2020-09-01 23:03:16 +02:00
Lukas Matena
58b6d94166 Custom seam: Model integration, backend invalidation, 3MF loading/saving 2020-09-01 22:35:01 +02:00
Lukas Matena
8e113adee0 Renamed FacetSupportType to EnforcerBlockerType
So it's not misleading if we use it for seam painting
2020-08-18 12:00:26 +02:00
enricoturri1966
2b2091d46c Modal estimated printing time dialog
Fixed conflicts after merge with master
2020-07-27 14:53:17 +02:00
Lukas Matena
fa4a160a2c TriangleSelector: 3MF loading and saving 2020-07-24 17:47:16 +02:00
Lukas Matena
efa8fe63aa TriangleSelector: Schedule restarting background process after edit 2020-07-24 17:47:16 +02:00
Lukas Matena
abe1cf6c61 TriangleSelector: backend is aware of divided triangles 2020-07-24 17:47:16 +02:00
Lukas Matena
438f758a2a TriangleSelector: Separated frontend/backend, support of multiple volumes, etc. 2020-07-24 17:47:16 +02:00
enricoturri1966
9ee4094f7c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-06-05 16:51:11 +02:00
YuSanka
745788157f Object merge: fixed merge of the objects with changed rotation, scale and mirror
+ Fixed get_object_stl_stats()
2020-06-05 13:15:49 +02:00
enricoturri1966
5bbc804744 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-05-27 14:29:54 +02:00
YuSanka
00878e21e9 Implemented merge of the objects to the one multi-part object
+ Implemented merge of the parts to the one object. But now this function doesn't used.

+ Fixed Model::looks_like_imperial_units()
2020-05-27 11:59:43 +02:00
enricoturri1966
acd8801d3a Fixed conflicts after merge with master 2020-05-27 10:32:02 +02:00
Lukas Matena
a8628a040c Include cleanup: do not include Model.hpp from 3DScene.hpp 2020-05-26 13:45:36 +02:00
enricoturri1966
0ad53b6036 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-05-21 10:15:24 +02:00
YuSanka
45006f6e0d Implemented "from/to imperial units conversation" for loaded objects and volumes 2020-05-20 20:07:31 +02:00
enricoturri1966
eb232bec0d Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-05-19 07:57:19 +02:00
enricoturri1966
0c3adc6805 GCodeAnalyzer and GCodePreviewData removed from tech ENABLE_GCODE_VIEWER 2020-05-07 10:49:12 +02:00
YuSanka
ced8e42504 Imperial units: Implemented just for the object's position and size 2020-04-29 19:10:13 +02:00
Lukas Matena
0709d361d1 Merge branch 'lm_fdm_custom_supports_backend' 2020-04-24 15:16:33 +02:00
tamasmeszaros
2275698f1b Add ModelArrange.hpp as extension to Model.hpp, use it for duplicating
Refactored Arrange interface: remove the union based BedShapeHint, replace it with proper function overloads

WARN: this commit is only intermediate, it does not compile.
2020-04-23 18:19:03 +02:00
Lukas Matena
34e8adeadd Custom supports data change forces invalidation of supports step 2020-04-22 11:16:28 +02:00
Lukas Matena
1abc17915d Custom supports data are saved into ModelObject and propagate to the backend
Invalidation of supports after they change is not implemented yet.
2020-04-16 16:57:46 +02:00
tamasmeszaros
e3f0a2adf6 Fix arrange for large beds 2020-03-30 13:26:24 +02:00
Enrico Turri
04e4e01f1a ENABLE_BACKWARD_COMPATIBLE_RELOAD_FROM_DISK - Fixed inconsistencies for splitted and cutted objects 2020-02-07 09:49:48 +01:00
Lukas Matena
fed51de77f Fixed a crash during cut (typo introduced in 645f13a) 2020-01-31 08:54:41 +01:00
bubnikv
6687c029e8 Fixed regression of 71fa411100
where the PrintObject bounding box was not invalidated correctly
when the transformation matrices of instances changed.

Also refactored PrintObject::size() for const correctness.
2020-01-30 12:22:30 +01:00
tamasmeszaros
322092a2f8 Merge branch 'master' into lm_tm_hollowing 2020-01-23 17:43:18 +01:00
YuSanka
eef74403bf Synchronized mode of color_print data to/from 3mf/amf
+ Code refactoring " CustomGCode extracted to separate namespace and file
2020-01-23 16:11:21 +01:00
Lukas Matena
a5ccb7a6c2 Merge branch 'master' into lm_tm_hollowing 2020-01-21 13:00:07 +01:00
foxox
d0955e38de Platter->Plater 2020-01-20 11:16:49 -05:00
YuSanka
e452247a97 Code refactoring to mode comparison 2020-01-17 12:24:58 +01:00
YuSanka
dfdd2c8cb9 Added "mode" variable for custom_gcode_per_print_z 2020-01-16 16:01:19 +01:00
bubnikv
7c0cdc3134 Refactoring of GCode::process_layer().
Refactoring of GCode export of color changes, extruder switches etc,
so that the "color change" like extruder switches are applied first
at the Wipe Tower / G-code export, so that adding / removing
an extruder switch at the G-code preview slider does not invalidate
slicing.
2020-01-14 10:31:18 +01:00
Lukas Matena
9aaf7a8c13 Merge branch 'master' into lm_tm_hollowing 2020-01-06 12:41:29 +01:00
bubnikv
f9752f1d75 Some minor polishing of Color print back end. 2020-01-06 09:32:13 +01:00
Lukas Matena
51050f4a29 Merge branch 'master' into lm_tm_hollowing 2019-12-20 10:33:53 +01:00
Enrico Turri
2fcfb7a329 Do not allow to apply reload from disk command to objects whose mesh has been modified after non uniform scale operations 2019-12-19 09:21:57 +01:00
Enrico Turri
67f94ff100 Do not allow to apply reload from disk command to objects splitted using split to objects or split to volumes commands 2019-12-19 08:05:57 +01:00
YuSanka
44d00f6fca Added function to update of custom_gcode_per_print_z in Model from configuration
considering "colorprint_heights" option.

Changed thumb_up/down icons to better preview (feedback from #3256)

Commented some uncertain code
2019-12-17 14:16:38 +01:00
YuSanka
ee69087873 Code refactoring for Color change implementation 2019-12-17 08:37:50 +01:00
Lukas Matena
11feb259a3 Merge branch 'master' into lm_tm_hollowing 2019-12-12 11:37:33 +01:00
YuSanka
9607983880 Save/Load new color print data to/from amf and 3mf files. 2019-11-11 16:01:34 +01:00
tamasmeszaros
10f2d23ff6 Merge branch 'tm_openvdb_integration' into lm_tm_hollowing
* Refactor file names in SLA dir
2019-11-11 12:55:22 +01:00
YuSanka
428f09b114 Use constant names for G-codes like M600, M601 and "tool_change"(Change extruder) 2019-11-11 09:38:45 +01:00
Lukas Matena
617dc3e46f Drain holes are now saved in ModelObject
Internal changes in GLGizmoHollow.cpp
2019-11-08 14:05:56 +01:00
tamasmeszaros
ee11f63bb9 Hollowing step in SLAPrint process, PrintConfig params added. 2019-11-06 13:38:43 +01:00