Commit Graph

2510 Commits

Author SHA1 Message Date
Yuri D'Elia
776a775996 Add missing forward declarations 2020-09-11 16:51:05 +02:00
enricoturri1966
dd6994c3b2 Logging of memory used by the gcode processor and viewer 2020-09-11 15:19:23 +02:00
Lukáš Hejl
137e7a0712 Fix compiler warnings and failing compilation on macOS 2020-09-10 22:57:58 +02:00
Lukáš Hejl
7ef5def077 Fix typo in function build_octree 2020-09-10 22:38:37 +02:00
Lukáš Hejl
e9a325c9ca Fix rotation in support cubic infill 2020-09-10 22:30:49 +02:00
tamasmeszaros
7766c6ebc4 Merge branch 'tm_rotfinder' 2020-09-10 20:06:18 +02:00
tamasmeszaros
20bd7b99f9 Significant performance improvements for elevated and non-elevated case
Apply bruteforce for elevated models
2020-09-10 19:35:45 +02:00
YuSanka
f1f9785a8a SplashScreen:
* Show it on the display same as an Application
 * Code refactoring : All related functions moved to the SplashScreen class
 * Add a possibility o hide/show splash scree in Preferences
2020-09-10 18:54:29 +02:00
Lukáš Hejl
40a7a44495 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-09-10 17:02:54 +02:00
Lukáš Hejl
f49144a9ef Move support cubic infill to separate class.
Support infill is enabled in the GUI.
2020-09-10 16:53:08 +02:00
Lukáš Hejl
8fb9b290b2 A prototype of adaptive support infill 2020-09-10 14:55:48 +02:00
Lukáš Hejl
680b1b9809 Construct octree based on inserted points 2020-09-10 14:52:26 +02:00
Lukáš Hejl
c261624999 A simple version of adaptive cubic support, for testing purposes 2020-09-10 14:52:26 +02:00
Lukáš Hejl
e55d184a7d Fix missing initialization in TriangleMesh constructor 2020-09-10 14:52:26 +02:00
Lukáš Hejl
70cb67430c Move rotation from building octree to infill generating 2020-09-10 14:52:21 +02:00
enricoturri1966
131cc0a41c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-09-10 14:35:40 +02:00
enricoturri1966
b991b613de Updated titlebar and splash screen + hidden statusbar for gcode viewer 2020-09-10 14:33:55 +02:00
tamasmeszaros
d527122046 Performance optimizations and bugfix 2020-09-10 14:03:30 +02:00
tamasmeszaros
3b7ea5587e Fix build on win 2020-09-10 14:03:30 +02:00
tamasmeszaros
0d4c67b9a3 Mostly working, inefficiencies remain, status indication partly broken 2020-09-10 14:03:30 +02:00
tamasmeszaros
b4b9af4100 cosmethics
Comments and cosmethics
2020-09-10 14:03:30 +02:00
tamasmeszaros
c10ff4f503 fixing optimizer and concurrency::reduce 2020-09-10 14:03:30 +02:00
tamasmeszaros
c193d7c930 Brute force optimization code, buggy yet
wip


wip


wip refactor
2020-09-10 14:03:30 +02:00
tamasmeszaros
b4e30cc8ad rotation finder experiments
wip
2020-09-10 14:03:30 +02:00
tamasmeszaros
7713a55d45 Do a mesh split before openvdb conversion, unify each part's grid
Do a mesh redistance after the part splitting and openvdb csgUnion
2020-09-10 13:39:43 +02:00
tamasmeszaros
50836914fc Calibration changes to address new algorithm behavior. 2020-09-10 13:37:58 +02:00
tamasmeszaros
a21ff4141b Fix failing test due to changes in support point genertion 2020-09-10 13:19:17 +02:00
tamasmeszaros
26d5c30366 Improvements to support point generator
- Separate the 3 bands -- dangling, sloping and full overhanging -- regions and handle them with different support force deficits.

- Use a heuristic for overhanging edges to increase the number of support points generated for them


- Try to make overhangs and slopes deficit depend on stable area.
2020-09-10 13:19:17 +02:00
enricoturri1966
659c24d3d8 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-09-10 08:50:00 +02:00
enricoturri1966
88457bf412 Tech ENABLE_GCODE_VIEWER_AS_STANDALONE_APPLICATION set as default 2020-09-10 08:49:50 +02:00
Vojtech Bubnik
6a11e7996e Merge branch 'lh_adaptive_infill' 2020-09-09 16:46:43 +02:00
Vojtech Bubnik
7b318e1698 Refactoring of adaptive cubic infill:
Don't create an octree for the infill if it is not needed.
2020-09-09 15:55:06 +02:00
enricoturri1966
3527cd48e8 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2020-09-09 15:04:40 +02:00
enricoturri1966
2f9dd9d9e8 Completed implementation of 'File->GCode preview...' command 2020-09-09 15:03:51 +02:00
Lukáš Hejl
5e9399247c Check if exist any boundary polyline 2020-09-09 14:40:14 +02:00
Lukáš Hejl
5633526ecf Enable changing adaptive infill density for different objects 2020-09-09 14:40:14 +02:00
Lukáš Hejl
aca212c5bc Octree representation rework 2020-09-09 14:40:14 +02:00
Lukáš Hejl
acedb66cdc Change to using raw_mesh instead of mesh 2020-09-09 14:40:14 +02:00
Lukáš Hejl
000987451a Fix bug in lines merging 2020-09-09 14:40:14 +02:00
Lukáš Hejl
03e103fcc8 Connect infill to perimeters 2020-09-09 14:40:14 +02:00
Lukáš Hejl
398d429ce1 Code cleanup 2020-09-09 14:40:14 +02:00
Lukáš Hejl
d09ac41d2c Octree's first cube depends on model size. 2020-09-09 14:40:14 +02:00
Lukáš Hejl
2debffc496 Fix tests which expect make_fills without arguments 2020-09-09 14:40:14 +02:00
Lukáš Hejl
33121b705a Change in passing octree struct 2020-09-09 14:40:08 +02:00
Lukáš Hejl
9eeb5e4364 Fix wrong data type 2020-09-09 14:37:20 +02:00
Lukáš Hejl
65ba40f044 Fix crash on inconsistent input 2020-09-09 14:37:20 +02:00
Lukáš Hejl
867681ae56 Fix discontinuous extrusion lines for adaptive infill 2020-09-09 14:37:20 +02:00
Lukáš Hejl
14a7fbc9f7 Switch to smart pointers 2020-09-09 14:37:17 +02:00
Lukáš Hejl
c0d21bd2b4 Polylines merging 2020-09-09 14:34:04 +02:00
Lukáš Hejl
c311b84b21 Add function for check existence of triangle in define radius 2020-09-09 14:34:04 +02:00
Lukáš Hejl
9f049b2619 Generating polylines from octree 2020-09-09 14:34:04 +02:00
Lukáš Hejl
34f38c4a79 Building octree based on distance from mesh 2020-09-09 14:34:04 +02:00
Lukáš Hejl
0d26df3cf6 Preparation for new infill 2020-09-09 14:34:04 +02:00
enricoturri1966
d8530e7d9f Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-09-09 09:12:56 +02:00
enricoturri1966
6b10214bec Fixed export of pause print lines into gcode 2020-09-09 09:06:50 +02:00
enricoturri1966
8cb2636afc Fixed conflicts after merge with master 2020-09-08 15:38:35 +02:00
Vojtech Bubnik
ce06fc6cb7 Added networking support for SL1 Digest authorization.
Renamed login/password/authorization_type to printhost_user/printhost_password/printhost_authorization_type.
Added initialization of physical printer preset with default values.
2020-09-08 15:31:10 +02:00
enricoturri1966
67d10a3c0c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-09-08 11:55:35 +02:00
enricoturri1966
f58d3116bf Fixed crash when loading gcode files saved with older version of PrusaSlicer 2.3.0.alpha 2020-09-08 11:43:18 +02:00
enricoturri1966
ab556a398b GCode viewer using the proper layout when started as a standalone application 2020-09-08 11:40:06 +02:00
enricoturri1966
8579184d70 Follow-up of 573194e059 -> Fixed crash when opening a gcode file 2020-09-07 11:30:31 +02:00
Lukáš Hejl
97e62be902 Check if exist any boundary polyline 2020-09-07 09:14:06 +02:00
enricoturri1966
e10d1eba54 GCodeProcessor -> Use decorations to detect toolpaths height for gcode files generated by PrusaSlicer 2020-09-07 08:35:34 +02:00
Lukáš Hejl
6c01d537e4 Enable changing adaptive infill density for different objects 2020-09-03 23:15:46 +02:00
Lukáš Hejl
ce18b824ad Octree representation rework 2020-09-03 19:21:55 +02:00
Lukáš Hejl
c2af265df8 Change to using raw_mesh instead of mesh 2020-09-03 16:08:40 +02:00
Lukáš Hejl
184cb7afd9 Fix bug in lines merging 2020-09-03 14:28:25 +02:00
Lukáš Hejl
353c65fa4c Connect infill to perimeters 2020-09-03 13:05:28 +02:00
Lukáš Hejl
a3a1c20172 Code cleanup 2020-09-03 11:56:41 +02:00
enricoturri1966
573194e059 GCodeProcessor -> Added cancel callback 2020-09-03 08:32:06 +02:00
Lukáš Hejl
fd3a31651c Octree's first cube depends on model size. 2020-09-03 08:04:05 +02:00
Lukáš Hejl
71237cf11f Fix tests which expect make_fills without arguments 2020-09-03 07:52:53 +02:00
Lukáš Hejl
5997f2759c Change in passing octree struct 2020-09-02 22:53:10 +02:00
YuSanka
4d053cc4ee Merge remote-tracking branch 'origin/master' into ys_unsaved_changes 2020-09-02 09:15:11 +02:00
Lukas Matena
7844ca12fa First naive prototype of seam painter 2020-09-02 00:36:30 +02:00
Lukas Matena
60cf002e94 Fixed merge conflicts (whitespace only) 2020-09-02 00:36:30 +02:00
Lukas Matena
6646198a9b Merge branch lm_seam_painter_frontend 2020-09-01 23:03:16 +02:00
Lukas Matena
9c59b4f930 Custom seam: Model integration, backend invalidation, 3MF loading/saving 2020-09-01 22:35:01 +02:00
Lukas Matena
255469347f Fixed several indentation-related warnings 2020-09-01 18:18:56 +02:00
tamasmeszaros
761e71eb63 Fix build on msvc 2020-09-01 18:18:56 +02:00
Lukas Matena
1eef1d32a0 Added two missing includes to fix build on gcc 2020-09-01 18:12:51 +02:00
bubnikv
08580a9b18 WIP: prusa-gcodeviewer command line wrapper to start the PrusaSlicer
in standalone G-code viewer mode.
Linux and OSX stuff will follow.
2020-09-01 16:56:12 +02:00
Vojtech Bubnik
683af51685 Replaced boost::filesystem::canonical() with boost::filesystem::absolute(),
as canonical() is broken on Windows (reparse points aka symbolic links
are not processed correctly).

Fixes
https://github.com/prusa3d/PrusaSlicer/issues/732
https://github.com/prusa3d/PrusaSlicer/issues/3956
https://github.com/prusa3d/PrusaSlicer/issues/4557
2020-09-01 14:15:37 +02:00
enricoturri1966
e32930aa6c Code cleanup 2020-09-01 09:28:02 +02:00
enricoturri1966
bf7b952eff GCodeViewer -> Smoothed solid toolpaths corners 2020-09-01 08:29:06 +02:00
Lukáš Hejl
423d1f2f40 Fix wrong data type 2020-08-31 08:49:17 +02:00
Lukáš Hejl
8e6760e033 Fix crash on inconsistent input 2020-08-30 20:38:07 +02:00
enricoturri1966
b563010bf1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-28 12:30:45 +02:00
enricoturri1966
93921dc7c8 ENABLE_GCODE_VIEWER -> Experimental taskbar icon 2020-08-28 08:54:58 +02:00
tamasmeszaros
79567a1958 Add some comments for png read interface 2020-08-27 23:14:42 +02:00
tamasmeszaros
ad0df8fd09 Be compatible with earlier libpng versions. 2020-08-27 23:14:42 +02:00
tamasmeszaros
b09552e56f Don't use fmemopen, its not standard. 2020-08-27 23:14:42 +02:00
tamasmeszaros
8541ce4060 SLA archive import will now recover the model's original position. 2020-08-27 23:14:42 +02:00
tamasmeszaros
769ee15475 Move SLA import to libslic3r with png reading using libpng
Also fix flipped object issue
2020-08-27 23:14:42 +02:00
tamasmeszaros
2bcd36d155 PNG image read with libpng 2020-08-27 23:14:42 +02:00
tamasmeszaros
19e1d877aa Don't use sla::EncodedRaster in SLAImport, revive opencsg sandbox 2020-08-27 23:14:42 +02:00
enricoturri1966
e22e85e8e2 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-27 13:11:49 +02:00
Lukáš Hejl
b28f9b8935 Fix discontinuous extrusion lines for adaptive infill 2020-08-27 13:04:53 +02:00
bubnikv
17170b81b5 Clean-up of Shiny profiler integration, so that the intrusiver profiling
can be controlled per module.
2020-08-27 12:14:49 +02:00
enricoturri1966
689c8691ee Another code cleanup 2020-08-27 10:15:07 +02:00
enricoturri1966
af30a3ab7e Code cleanup 2020-08-27 09:13:30 +02:00
enricoturri1966
88b6835258 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-27 08:00:45 +02:00
Lukáš Hejl
c5a73a7cd6 Switch to smart pointers 2020-08-27 07:28:43 +02:00
Lukáš Hejl
cb328c99aa Polylines merging 2020-08-27 01:59:35 +02:00
Lukáš Hejl
fb24d8167a Add function for check existence of triangle in define radius 2020-08-26 23:28:52 +02:00
Lukáš Hejl
eaaff4e707 Generating polylines from octree 2020-08-26 22:18:51 +02:00
bubnikv
41f474a884 Fixed performance issues when adding / removing Presets into PresetCollection.
This improves application startup time by 25-33%.
2020-08-26 21:51:50 +02:00
Lukáš Hejl
3ac16d9c9c Building octree based on distance from mesh 2020-08-26 18:15:59 +02:00
Lukáš Hejl
42a7f2b1d8 Preparation for new infill 2020-08-26 16:51:34 +02:00
enricoturri1966
ba9c3a74ed GCodeViewer -> 1st iteration of rendering of extrude toolpaths as solid 2020-08-26 15:29:33 +02:00
enricoturri1966
e4f767b2ed Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-24 15:11:15 +02:00
Lukas Matena
c51a45ee0f Drainholes are saved elevated for 3MF compatibility
This is a follow-up of previous commit
2020-08-24 08:11:12 +02:00
Lukas Matena
a95509ce36 Changed internal coordinates of drain holes
Drain holes reference position was saved slightly above the mesh to avoid problem when the hole is placed on flat or nearly flat surface
The depth of the hole was internally bigger than what the user has set to compensato for it
However, this leads to problem with scaling and makes reprojection of the holes on the mesh complicated

This commit changes the reference point to the point on the mesh and the extra elevation is handled when rendering and drilling the hole.
The change is reflected in 3MF drain holes versioning so that old 3MFs are loaded correctly.
Reprojection on the mesh after reload from disk/fix through netfabb has been enabled.
2020-08-24 08:11:12 +02:00
enricoturri1966
34759f9a70 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-21 11:10:27 +02:00
enricoturri1966
7a093b08fd GCodeViewer -> Show printbed model and texture for system printers detected when loading gcode files produced by PrusaSlicer 2020-08-21 10:59:07 +02:00
Paul Arden
f6d25d0634 Rework G10 temperature support to be enabled only for a new Firmware type RepRapFirmware leaving the RepRap/Sprinter behaviour alone. Rename the enum for gcfRepRap to gcfRepRapSprinter and add new gcfRepRapFirmware enum value. Also adds code to only use the G10 searching in custom G-code if the flavour is RepRapFirmware. 2020-08-21 14:08:32 +10:00
Lukas Matena
739cd2a4a2 Fixed several indentation-related warnings 2020-08-19 17:15:01 +02:00
YuSanka
15545bbd90 Merge remote-tracking branch 'origin/master' into ys_unsaved_changes 2020-08-19 15:44:24 +02:00
enricoturri1966
af200e47c1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-19 08:18:23 +02:00
tamasmeszaros
5052149b81 Fix build on msvc 2020-08-18 13:45:18 +02:00
enricoturri1966
bd4e4535f9 GCodeProcessor -> Calculate per layer time estimate 2020-08-18 12:37:07 +02:00
Lukas Matena
6db1e5ab8f Slight code cleanup 2020-08-18 12:00:26 +02:00
Lukas Matena
97bc092cce Renamed FacetSupportType to EnforcerBlockerType
So it's not misleading if we use it for seam painting
2020-08-18 12:00:26 +02:00
tamasmeszaros
4ef52af906 Add dedicated tests for support point generation 2020-08-18 11:41:14 +02:00
enricoturri1966
ca27d7296f Fixed build when ENABLE_GCODE_VIEWER is disabled 2020-08-18 08:27:07 +02:00
enricoturri1966
c81d87b470 Code cleanup 2020-08-17 15:59:36 +02:00
enricoturri1966
73603e4937 GCodeProcessor -> Do not export width tags to gcode 2020-08-17 14:37:26 +02:00
enricoturri1966
b156153405 GCodeViewer -> Use rounded values for toolpaths height, width and volumetric rate to reduce the number of generated paths 2020-08-17 13:07:13 +02:00
enricoturri1966
5b579aee9a GCodeProcessor -> Extract toolpaths width from gcode moves 2020-08-17 10:54:41 +02:00
enricoturri1966
f2d02faef4 GCodeProcessor -> Added debug code to check toolpaths data extracted from gcode, as mm3 per mm, height and width 2020-08-17 10:06:41 +02:00
YuSanka
618f04717f Unsaved Changes : improvement for the GUI_App::check_unsaved_changes()
Added use of UnsavedChangesDialog
2020-08-14 18:17:16 +02:00
enricoturri1966
6a603eed25 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-14 11:45:54 +02:00
tamasmeszaros
add3894e8c Add reserve_vector to libslic3r.h to be globally usable. 2020-08-13 15:42:31 +02:00
tamasmeszaros
7158690ddd Fix build on win and rpi 2020-08-13 15:09:22 +02:00
tamasmeszaros
1003c32f76 Merge branch 'tm_minor_refactor' 2020-08-13 14:36:47 +02:00
tamasmeszaros
929cea59f3 replace ccr_::enumerate with flexible for_each
enumerate is unusual and would only work effectively with random access iterators

this for_each takes advantage of tbb blocked_range
replace ccr_::enumerate with flexible for_each

enumerate is unusual and would only work effectively with random access iterators

this for_each takes advantage of tbb blocked_range
2020-08-13 14:35:14 +02:00
tamasmeszaros
9486901b93 Minor change to SLAPrinter interface 2020-08-13 14:35:14 +02:00
enricoturri1966
b80bde11f3 GCodeProcessor -> Extract toolpaths height from gcode moves 2020-08-13 12:51:50 +02:00
enricoturri1966
7be5860908 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-12 15:07:31 +02:00
Lukas Matena
6d4bb10ec5 Fix of custom supports: object offset for Clipper was incorrectly accounted for 2020-08-12 11:28:30 +02:00
Lukas Matena
fd93d9768d Fixes of two crashes in paint-on supports 2020-08-12 11:08:10 +02:00
Vojtech Bubnik
12f43736bd Fix of Support generator debugging functions after some refactoring 2020-08-12 10:51:15 +02:00
enricoturri1966
4ca026d4b6 ENABLE_GCODE_VIEWER -> More general drag and drop for .gcode files 2020-08-11 15:44:32 +02:00
enricoturri1966
5a0e048079 ENABLE_GCODE_VIEWER -> Drag and drop .gcode files into gcode viewer 2020-08-11 14:23:47 +02:00
enricoturri1966
5882c121cc GCodeProcessor -> Fixed time estimate for stealth mode 2020-08-11 11:12:30 +02:00
enricoturri1966
dea641183c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-08-10 14:22:46 +02:00
enricoturri1966
6ed2cb661d GCodeProcessor -> Export remaining time (lines M73) to gcode 2020-08-10 14:22:05 +02:00
YuSanka
f9e47b2702 Code refactoring: AppConfig.cpp(hpp) are removed from the GUI to libslic3r 2020-08-08 17:03:20 +02:00
enricoturri1966
64001c0fe5 GCodeProcessor -> Fixed export of estimated time to gcode filename 2020-08-07 15:30:08 +02:00
YuSanka
a6dc3d37f5 Merge remote-tracking branch 'origin/master' into ys_ph_printers 2020-08-06 17:02:48 +02:00