Commit Graph

328 Commits

Author SHA1 Message Date
tamasmeszaros
d5dcba00b1 Time conversion functions with tests.
Fixes issue with incorrect characters in time strings on UI.
Fix platform dependency


Fix return value with incorrect strings.


Just use strptime and strftime on all platforms.

Emulate strptime on msvc... because they don't have it and their get_time is buggy.
2019-10-02 14:44:11 +02:00
tamasmeszaros
be7428d66e sla::Raster interface clarified and covered with tests.
Also renamed sla::SupportTreeAlgorithm to SupportTreeBuildsteps.
2019-10-01 14:58:37 +02:00
tamasmeszaros
705e82ec8e Deeper test coverage for support tree generation.
Restructuring for testability.
2019-10-01 14:58:37 +02:00
tamasmeszaros
e675a5d5c6 Reworked pad creation algorithm with new parameters:
* brim size
* force pad around object everywhere
2019-10-01 14:58:37 +02:00
bubnikv
b4f2df6a98 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-12 10:19:09 +02:00
tamasmeszaros
c37ec7463f Add new config values to SL1 zip file config.ini
All requested config values are written into SL1 ini file inside the zip

* TIme.hpp and Time.cpp is now part of libslic3r instead of libslic3r_gui
* Updated time manipulation function: separate timestamp_local_str and timestamp_utc_str
* timestamp_utc_str is used in header_slic3r_generated(). Gcode now contains UTC timestamps
2019-09-11 13:10:23 +02:00
Lukas Matena
09e4ac42ba Fixed some more warnings (mostly GLGizmoSlaSupports.cpp) 2019-09-04 16:05:32 +02:00
tamasmeszaros
17a7f58828 Revert full parallel support tree generation to partially parallel. 2019-08-30 15:13:40 +02:00
tamasmeszaros
65368db49b Merge branch 'master' into tm_clang_mingw 2019-08-16 16:37:02 +02:00
tamasmeszaros
c187a5fb69 Fix up build and clear dev output 2019-08-16 16:31:05 +02:00
tamasmeszaros
7e0199746e more clang warnings enabled, performance measuring
Succesfull build on mingw-w64


fix sandboxes


Mingw fixes and full parallel support tree gen.
2019-08-16 16:17:37 +02:00
tamasmeszaros
a49caea6cc Hotfix for crash when empty pad and support mesh is generated. 2019-08-09 17:13:18 +02:00
tamasmeszaros
52702769d4 Hotfix for crash with support disabled and pad enabled. 2019-08-08 19:12:37 +02:00
tamasmeszaros
1ab3268d55 Performance optimizations and some cleanup.
Optional heavy parallelism which is disabled by default. Would like to test it further in a next release cycle.
2019-07-30 17:57:07 +02:00
tamasmeszaros
57008d0d77 Include SLACommon.hpp into the project.
File is reformatted, but only the whitespace is changed.
2019-07-30 17:54:25 +02:00
Lukas Matena
94f9b701e2 Merge branch 'lm_sla_gizmo_undo' 2019-07-30 14:52:44 +02:00
tamasmeszaros
320f964847 Fixing zero elevation bug when concave hull overlap was not detected.
Backported from tm_perf_optims
2019-07-30 14:24:42 +02:00
Lukas Matena
fe62362960 Hiding the sla support structures after undo/redo 2019-07-28 11:37:08 +02:00
tamasmeszaros
76b1fbc5bf Eliminate some igl warnings on msvc 2019-07-18 16:32:04 +02:00
Lukas Matena
004e2719b1 Merge branch 'master' into lm_warnings 2019-07-15 13:26:55 +02:00
bubnikv
ab7ecc1819 Merge remote-tracking branch 'remotes/origin/vb_undo_redo' 2019-07-15 11:34:18 +02:00
tamasmeszaros
af89bcee53 Merge branch 'master' into tm_builtin_pad 2019-07-09 13:21:26 +02:00
tamasmeszaros
18fcb64681 Fixing broken SLA slicing: SPE-984 2019-07-09 13:12:55 +02:00
bubnikv
c7cc760067 Merge remote-tracking branch 'origin/master' into vb_undo_redo 2019-07-04 20:22:15 +02:00
bubnikv
5e846112ee WIP UndoRedo: Added Undo/Redo stack, added Platter::take_snapshot(),
experimental snapshots on loading STLs and increasing / decreasing
model instances.
2019-07-02 16:42:23 +02:00
tamasmeszaros
4c69a855a1 Merge branch 'master' into tm_builtin_pad 2019-06-28 15:29:26 +02:00
tamasmeszaros
14b32c4f16 Make an order in using scale and unscale, remove some warnings. 2019-06-26 10:34:27 +02:00
Lukas Matena
cb916c4dda Fixed warnings in libslic3r 2019-06-25 16:04:29 +02:00
tamasmeszaros
3b0e0aaed4 Fixes for degenerate cases. 2019-06-20 13:01:48 +02:00
tamasmeszaros
c82fd692c3 Merge branch 'master' into tm_builtin_pad 2019-06-20 10:04:17 +02:00
tamasmeszaros
b4ef812d32 Merge branch 'master' into tm_sla_printer_mirror 2019-06-18 17:42:10 +02:00
tamasmeszaros
d60ecb3788 Merge remote-tracking branch 'origin/master' into tm_ui_jobs 2019-06-18 12:16:24 +02:00
tamasmeszaros
d7684188f9 Removing unused pad parts working 2019-06-18 11:28:52 +02:00
bubnikv
c95a324c3f Merge branch 'vb_admesh_fix' 2019-06-18 08:54:50 +02:00
tamasmeszaros
778b2cf293 WIP on removing unused parts of pad 2019-06-17 18:06:52 +02:00
tamasmeszaros
80fddb7aaf Merge branch 'master' into tm_builtin_pad 2019-06-17 12:17:01 +02:00
tamasmeszaros
ce22251707 Warning hunt session followup 2019-06-17 10:05:46 +02:00
tamasmeszaros
c5037540e9 Warning hunt session. 2019-06-14 18:17:17 +02:00
tamasmeszaros
e4cb75edde Fix build on Mac 2019-06-12 17:33:04 +02:00
tamasmeszaros
4ffe3278be Hotfix for pad shape deduction. 2019-06-12 17:09:40 +02:00
tamasmeszaros
10897524df Fixes for gap detection and case with no pad, but zero elevation. 2019-06-12 15:29:24 +02:00
tamasmeszaros
12396c3051 Fine tuning parameters and fixing pad wings when greater gaps are used. 2019-06-12 13:15:42 +02:00
tamasmeszaros
c80aae1bdb Fixes for the parameter layer
- Elevation value satisfied with no supports as well
- Removed debug svg writing
- Gap and sticks made optional in zero elevation pad.
2019-06-11 18:19:58 +02:00
tamasmeszaros
6877c075dc SPE-742: Parameter layer for zero elevation feature. 2019-06-11 18:17:20 +02:00
tamasmeszaros
b7e3ee0709 Refactor, fix wall normals and gap detection. 2019-06-11 16:17:51 +02:00
tamasmeszaros
ddd0a9abb6 SPE-742: Builtin pad feature in zero elevation mode. 2019-06-11 12:40:07 +02:00
tamasmeszaros
12797f2aa8 Re-adding missing file 2019-06-05 15:50:27 +02:00
tamasmeszaros
97cbb5344e Merge branch 'master' into tm_sla_printer_mirror 2019-06-05 15:10:02 +02:00
bubnikv
8da54139c4 WIP: Admesh - replacement of C memory allocation with std vectors 2019-06-04 22:06:42 +02:00
tamasmeszaros
9dc6699229 Eliminate some warnings 2019-05-20 12:29:14 +02:00
tamasmeszaros
4e2ef09a50 Fixing build on Win and OSX 2019-05-20 11:34:48 +02:00
tamasmeszaros
38d54d779a Mirror checkboxes added to the UI.
Everything seems to work fine.
2019-05-18 23:21:59 +02:00
tamasmeszaros
bb73b59aa6 Mirroring refactored. 2019-05-18 22:45:24 +02:00
tamasmeszaros
696ade15ca New way of starting arrange and rotation optimization.
To prevent segfaults when exiting while processing is running.
2019-05-13 18:58:56 +02:00
tamasmeszaros
c03a202e20 Prevent degenerate triangles in pad. 2019-05-07 13:06:15 +02:00
tamasmeszaros
afbe0d9e60 Further optimizations for SLA memory usage. 2019-04-25 18:48:31 +02:00
Lukas Matena
63ce3c3150 SLA gizmo now does not make redundant copies of the object and supports meshes 2019-04-16 09:04:04 +02:00
Lukas Matena
f33e9bf609 TriangleMeshSlicer is now initialized by const-pointer to the mesh, responsibility for calling require_shared_vertices is left to the caller 2019-04-16 09:04:04 +02:00
tamasmeszaros
a55022ae2f Fix for issue SPE-901 2019-04-12 10:26:33 +02:00
bubnikv
9bc93134f9 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-04-08 12:05:44 +02:00
bubnikv
43fb8df1fb Increased the default SLA support density to 130% of the previous value
(100% now works as 130% before)
2019-04-08 10:27:56 +02:00
tamasmeszaros
a3dcb6863e Rethought sla status indication. 2019-04-02 10:54:14 +02:00
tamasmeszaros
63a899b239 Using same slicing grid for the supports and the model. 2019-03-21 16:14:26 +01:00
tamasmeszaros
cd2cccec5f Adding validation code for support parameters (elevation) 2019-03-18 15:31:47 +01:00
tamasmeszaros
160d708ecd Typo fix....
sorry guys
2019-03-18 11:27:27 +01:00
tamasmeszaros
0d9a74bb6d Fix for ugly code. 2019-03-18 10:48:23 +01:00
tamasmeszaros
fdf59f756c Fixing memory corruption from invalidated references 2019-03-15 15:30:20 +01:00
tamasmeszaros
594d40cec8 Fixing error with sla array indexing 2019-03-14 09:36:03 +01:00
tamasmeszaros
c6bae3e251 Slight enhancements in the cascading algorithm. 2019-03-13 17:29:47 +01:00
Lukas Matena
03beb1870b SLA gizmo - combo replaced by slider, autogeneration uses config value for head_diameter 2019-03-13 12:02:33 +01:00
tamasmeszaros
1778c51af1 Fixed seed for the genetic optimizer for support generation 2019-03-12 15:21:55 +01:00
tamasmeszaros
8b23740d30 Fixing issue with cascading pair has function. 2019-03-11 18:17:26 +01:00
tamasmeszaros
140c717c04 Enable imgui support point size. Fine tuning of support params. 2019-03-11 14:55:28 +01:00
tamasmeszaros
7857206442 Fixes for cascading logic. 2019-03-08 16:06:21 +01:00
tamasmeszaros
3dba1e1fb4 Merge branch 'master' into tm_colldetection_upgr 2019-03-08 15:10:18 +01:00
tamasmeszaros
0a1bff3fc9 Fix for pad wall slope. 2019-03-08 15:08:55 +01:00
tamasmeszaros
7c09b841bc Fix for the application of the new pillar link distance parameter 2019-03-08 14:18:22 +01:00
tamasmeszaros
1cb1c12812 Fine tuning the new parameters and adding max_pillar_link_distance 2019-03-08 11:39:34 +01:00
tamasmeszaros
3bce99bd23 Fixes for interconnection issues. 2019-03-07 17:17:47 +01:00
tamasmeszaros
0d59433178 Fix build on Mac 2019-03-07 13:01:28 +01:00
tamasmeszaros
28a516b6dc Fix a missing definition issue 2019-03-07 12:48:17 +01:00
tamasmeszaros
a7c07960ee Merge branch 'master' into tm_colldetection_upgr 2019-03-07 12:02:28 +01:00
tamasmeszaros
9131b1658a Replacing simplex optimizers with more intelligent genetic ones. 2019-03-07 12:01:21 +01:00
tamasmeszaros
efd3d27425 Experimental working version of onmodel pillar cascading. 2019-03-06 18:00:34 +01:00
tamasmeszaros
0a2ef07ca0 Reworking sidehead to pillar connections. 2019-03-06 15:21:07 +01:00
tamasmeszaros
34e0b69179 WIP: sidehead routedown when pillar is too long 2019-03-05 18:21:20 +01:00
tamasmeszaros
7552556998 New interconnection strategy 2019-03-05 16:28:18 +01:00
tamasmeszaros
c2d5a8d03b Working on improved interconnection strategy 2019-03-04 18:32:28 +01:00
tamasmeszaros
f2f513dd3e Trying to improve pillar connectivity. 2019-03-01 19:19:05 +01:00
bubnikv
e3cba0a65a Introduced the "slice_closing_radius" to define, how large gaps
will be closed after triangle mesh slicing.
The value is set to 0.049 by default, which corresponds to the hard
coded default in Slic3r-1.41.3.

See issues #520 #820 #1029 #1364 for the reference of why we need
the parameter for being able to print some specific models.
2019-03-01 17:53:02 +01:00
tamasmeszaros
878ac7f1b0 Fixing many errors caused by the new changes. 2019-03-01 17:45:29 +01:00
tamasmeszaros
450f817c09 Replacing old model routing with more advanced algorithm.
Interconnection still missing.
2019-02-28 19:05:11 +01:00
Lukas Matena
4eb4e40746 SLA gizmo keeps track of current status of the points, enables the user to erase all points 2019-02-27 16:23:10 +01:00
tamasmeszaros
93c57612bf Grouping support generation algorithm into a separate class 2019-02-27 11:44:42 +01:00
bubnikv
878ef5eee0 Improvement of automatic SLA supports: Don't put support points
on vertical walls.
2019-02-27 08:49:09 +01:00
tamasmeszaros
359de84a05 Fixing issues from code cleanup 2019-02-26 18:09:33 +01:00
tamasmeszaros
43f03b8032 Incorporate individual support point radius. 2019-02-26 17:13:33 +01:00
tamasmeszaros
61f8e4f6f7 Merge branch 'tm_colldetection_upgr'
This branch is unfinished but it is better compared to current state.
2019-02-25 16:46:23 +01:00
tamasmeszaros
2b03c25bc6 Pad "tilt" changed to "slope" 2019-02-25 16:04:46 +01:00
tamasmeszaros
03079381e1 Merge branch 'master' into tm_colldetection_upgr 2019-02-25 13:24:43 +01:00
tamasmeszaros
e38522b3c1 Tiny cosmetics 2019-02-25 13:24:01 +01:00
tamasmeszaros
01c9b13ade Disabling pad edge radius and adding the "wall tilt" parameter. 2019-02-25 12:06:38 +01:00
bubnikv
4e9372c58b Merge fixes 2019-02-20 15:54:12 +01:00
bubnikv
32ce0b91dc Merge remote-tracking branch 'remotes/origin/tm_pad_speedup' 2019-02-20 15:07:43 +01:00
bubnikv
74eb903054 Fixed a missing include. 2019-02-20 11:16:31 +01:00
bubnikv
9a8a9bac28 Merge branch 'lm_sla_supports_auto2' of https://github.com/prusa3d/Slic3r into lm_sla_supports_auto2 2019-02-20 10:47:44 +01:00
bubnikv
5499bbd1da SLA auto supports: Improved distribution of the support forces
in the up direction by taking into account island overlap areas.
2019-02-20 10:46:49 +01:00
Lukas Matena
eb0fd03861 SLA supports - added parameters for the automatic generation (relative density measure and minimal distance of the points) 2019-02-19 16:34:52 +01:00
Lukas Matena
1bb0af1588 SLA gizmo asks about saving changes, right button click removes points 2019-02-19 13:47:28 +01:00
bubnikv
8b4bd7177b SLA auto supports: Work with support force deficit to sprinkle support points.
Use OpenGL emissive material to render support points.
2019-02-19 10:09:41 +01:00
Lukas Matena
dbfcb8b76e Small formal fixes on the new 3d grid algorithm 2019-02-18 12:47:15 +01:00
Lukas Matena
5966dcb78e SLA gizmo - fixed support points rendering (depth is now correctly accounted for) 2019-02-18 11:59:47 +01:00
bubnikv
672cf5d45f Parallelization of large part of the SLA support point calculation.
New 3D grid to check, whether two support points are not too close.
2019-02-18 11:46:06 +01:00
tamasmeszaros
c8bda6c13b Fix for a few comment typos 2019-02-18 10:52:16 +01:00
tamasmeszaros
a50ffd0791 Fix for uninitialized value in an edge case. 2019-02-18 10:16:04 +01:00
bubnikv
09cce95181 Merge branch 'lm_sla_supports_auto2' of https://github.com/prusa3d/Slic3r into lm_sla_supports_auto2 2019-02-17 13:09:16 +01:00
bubnikv
fcc1b2ad69 Reworked polygon sampling for SLA auto support generation.
Conditional compilation of an igl winding number tree for SLA support generator, as it is not used as of now and initialization of the tree is expensive.
Fixed issue with passing the new SLA point definition to the back end and back to the UI.
2019-02-17 13:05:22 +01:00
tamasmeszaros
01091152be Optimization for bad head angles. 2019-02-15 16:55:15 +01:00
tamasmeszaros
71480d7c53 Further refactoring 2019-02-15 10:09:59 +01:00
tamasmeszaros
3574fa00af Incorporate new tessellation into pad creation. 2019-02-14 16:04:34 +01:00
tamasmeszaros
9bd2f0cf53 Simplifying pad wall triangulation. Removing iterators. 2019-02-14 15:00:59 +01:00
tamasmeszaros
40e6980db1 Fixing issue with sharp concave pad edges. 2019-02-14 13:52:40 +01:00
tamasmeszaros
1e9b64b971 Commented and integrated new pad wall triangulation 2019-02-14 11:23:43 +01:00
tamasmeszaros
daa8f7ef1b Refactored version of the wall triangulation algorithm, initial integration. 2019-02-13 18:22:00 +01:00
tamasmeszaros
0d13ecdce8 Working proof-of-concept for manual triangulation of pad walls. 2019-02-13 16:44:48 +01:00
Lukas Matena
ac8f9ab3dc SLA gizmo improvements
- point can be selected
- selection can be deleted, head diameter changed
- dragging of objects is not allowed with the gizmo being on
- added a modal dialog when automatic support generator is triggered
2019-02-11 16:29:03 +01:00
bubnikv
d31cb98fe9 Merge remote-tracking branch 'remotes/origin/master' into lm_sla_supports_auto2 2019-02-06 11:11:51 +01:00
Lukas Matena
906e66ea80 Tiny fix of previous commit 2019-02-06 11:09:00 +01:00
bubnikv
0e8b526af3 Vojtech's optimizations 2019-02-06 10:57:45 +01:00
tamasmeszaros
1501b2003e Simplifying individual slices in base_plate 2019-02-05 16:14:04 +01:00
tamasmeszaros
c3e1be7531 Added parameter "support_buildplate_only" for SLA supports. 2019-02-05 11:16:03 +01:00
Lukas Matena
9dff44a8ad SLA support gizmo does not use Grabber class anymore 2019-02-04 12:33:59 +01:00
Lukas Matena
fab3025107 SLA support points - minor adjustments 2019-02-04 10:56:49 +01:00
Lukas Matena
24a0fdb844 SLA support points generator now uses precalculated aabb tree 2019-02-04 09:50:25 +01:00
Lukas Matena
d154e75ad7 Merge branch 'master' into lm_sla_supports_auto2 2019-02-04 08:40:20 +01:00
Lukas Matena
f568f93f08 More SLA support points improvements
- unselected objects are hidden when SLA gizmo is active
- support volumes are hidden when editing mode is active
- 3mf support points format versioning
2019-02-01 23:09:02 +01:00
Lukas Matena
21026ec9a8 SLA support points improvements
- semi-intelligent algorithm to place support points
- enhanced ImGui dialog with editing/non-editing mode
- support points can have different head diameter (only implemented in GUI so far)
- autogenerated points supporting emerging islands are annotated and the info is kept
2019-02-01 07:13:08 +01:00
tamasmeszaros
095dfcad9e Getting rid of signed distance from collision detection. 2019-01-31 10:11:37 +01:00
tamasmeszaros
3f10b2f7f8 Getting around signed_distance in pinhead_mesh_intersect 2019-01-30 17:35:39 +01:00
tamasmeszaros
4e82e32a27 Trying to speed up collision detection with tbb 2019-01-30 13:51:34 +01:00
tamasmeszaros
7c839b8469 Many major issues solved. Performance may be degraded. 2019-01-29 15:10:07 +01:00
tamasmeszaros
3999ffe713 Merge branch 'master' into tm_colldetection_upgr 2019-01-28 16:52:50 +01:00
tamasmeszaros
814f663c79 Fix for SPE-797 2019-01-28 16:30:15 +01:00
tamasmeszaros
a32839260f Remove duplicate code from support generation. 2019-01-28 14:20:42 +01:00
tamasmeszaros
61d59a7a2e Fix for erroneous support slicing.
Adding upper and lower closure for pillars and bridges.
2019-01-28 11:58:25 +01:00
bubnikv
5ed475a730 Little optimization when creating a SLA support mesh for preview. 2019-01-23 14:22:33 +01:00
tamasmeszaros
6c0b65208f Introducing signed_distance into the collision detection.
Everything is broken O.o
2019-01-18 16:21:44 +01:00
tamasmeszaros
4f83703232 A lot of comments added. 2019-01-18 12:09:53 +01:00
tamasmeszaros
83f75f25bd Further improvements for headless sticks. 2019-01-17 17:46:29 +01:00
tamasmeszaros
e160cf3ffb EigenMesh upgraded with inside check capability. 2019-01-17 16:44:26 +01:00