Commit Graph

278 Commits

Author SHA1 Message Date
tamasmeszaros
2487bb8794 Remove unnecessary reversals of print polygons.
second take...
2019-04-05 17:04:55 +02:00
tamasmeszaros
08b9d9a519 fix for hole disappearance 2019-04-05 16:24:23 +02:00
bubnikv
f554d02665 SLA: Invalidate all PrintObjects if the scaling correction changes.
Fixes a bug, where the sla_transofmation() function works with
the new scaling values for both old and new ModelObjects, therefore
no reslicing is triggered.
(untested)
2019-04-05 11:56:11 +02:00
tamasmeszaros
f0d106e5f0 Added method for relative correction retrieval. 2019-04-04 10:52:14 +02:00
tamasmeszaros
ecdd4b6e7a Suggestion for Z offset correction 2019-04-03 18:23:29 +02:00
tamasmeszaros
c6b5fe05e4 Scaling correction parameters in material and print conf.
Scaling is applied in sla_trafo but no effect unless set before model import.
2019-04-03 17:34:46 +02:00
tamasmeszaros
32af3ff3c0 Remove unnecessary reversals of print polygons. 2019-04-03 10:29:27 +02:00
bubnikv
eeae1c0495 Fixed update of the SLAPrint back end after mirroring in a specific
case of mirroring around the X axis.
Fixed some asserts on visual studio due to access to empty std::vector
2019-04-02 18:04:23 +02:00
tamasmeszaros
66fce6d46c Add mirror correction to rasterized polygons. 2019-04-02 17:48:50 +02:00
bubnikv
dc64b4d971 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-04-02 13:54:46 +02:00
bubnikv
086f11df98 Handling of left hand oriented coordinate systems:
is_left_handed() method on transformations and volumes
rendering of GLVolumes in left handed coordinate systems by glFrontFace(GL_CW);
SLA slicing on left hand oriented instances by flipping the mesh for SLAPrintObject in X.
rendering of the SLA cutting plane in left handed systems
resetting the SLA clipping planes on 3D preview invalidation
2019-04-02 13:47:49 +02:00
tamasmeszaros
6a74564900 More accurate status proportions for SLA steps. 2019-04-02 11:19:52 +02:00
tamasmeszaros
a3dcb6863e Rethought sla status indication. 2019-04-02 10:54:14 +02:00
tamasmeszaros
b8289c32b0 Fix for broken SLA status indication. 2019-04-01 16:10:15 +02:00
tamasmeszaros
2baa651f1e Fixing the broken rasterizer.
Paths and holes cannot be added separately.
2019-04-01 12:15:47 +02:00
tamasmeszaros
4eb5d91a8f Parallel loop for the statistics 2019-04-01 11:37:26 +02:00
tamasmeszaros
6593421802 fix for statistics 2019-03-29 17:20:19 +01:00
tamasmeszaros
b19d411738 It seems that stats are not broken after all. 2019-03-29 13:34:22 +01:00
tamasmeszaros
440e54181b Output raster seem ok, stats broken. 2019-03-27 18:37:50 +01:00
tamasmeszaros
8fdff97eb7 Merging new steps integration 2019-03-27 11:05:51 +01:00
tamasmeszaros
bc74761513 Integrating new step, removing old and unused steps. 2019-03-27 10:59:29 +01:00
tamasmeszaros
95b0467c85 Reusing unified polygons from statistics 2019-03-26 18:51:27 +01:00
tamasmeszaros
34094bf1b8 Adding new step for statistics 2019-03-26 18:04:04 +01:00
tamasmeszaros
b064d9662f Merge branch 'tm_slice_index_lyrh' 2019-03-26 17:47:27 +01:00
tamasmeszaros
a0f18f9f7c Add check for missing support points if supports are enabled. 2019-03-26 17:28:51 +01:00
tamasmeszaros
4d8800bc8a Fixing broken statistics. 2019-03-26 16:45:04 +01:00
tamasmeszaros
6a41e45eeb Reverting manual unification. It does not help performance. 2019-03-26 16:06:24 +01:00
tamasmeszaros
1c6b25c053 Optimizing manual unification. 2019-03-26 15:05:57 +01:00
tamasmeszaros
221a4836fd Manual unification of print polygons.
With clipper not with the agg rasterizer, because they can be reused for the statistics.
2019-03-26 14:06:40 +01:00
tamasmeszaros
9946a1c914 Fix for missing support polygons 2019-03-26 11:30:55 +01:00
tamasmeszaros
57e28b53f2 Further refactor and simplification of slice index and print data. 2019-03-26 10:57:45 +01:00
tamasmeszaros
d73d9309f1 Refactoring and commenting slice index solution. 2019-03-25 19:02:05 +01:00
tamasmeszaros
0d83c7ee9f Hypothetical support of different object layer heights. 2019-03-25 09:55:48 +01:00
tamasmeszaros
8e18605bd7 Fix for incorrect model slices after elevation has changed. 2019-03-22 15:48:20 +01:00
tamasmeszaros
d165dbb498 Refactoring changes to the slice index. 2019-03-22 15:31:38 +01:00
tamasmeszaros
5e646562cd Fixes for the duplicated layer issues... 2019-03-21 18:01:41 +01:00
tamasmeszaros
63a899b239 Using same slicing grid for the supports and the model. 2019-03-21 16:14:26 +01:00
tamasmeszaros
24a5dd4235 FIx for broken slice preview 2019-03-21 15:16:33 +01:00
tamasmeszaros
d4dde12d0d Slic3r compiles with the new slice index interface. 2019-03-21 12:25:33 +01:00
tamasmeszaros
19a96336ff WIP on slice indexing 2019-03-20 18:03:11 +01:00
tamasmeszaros
cd2cccec5f Adding validation code for support parameters (elevation) 2019-03-18 15:31:47 +01:00
bubnikv
60260c26be Fixed command line slicing due to some missing config keys 2019-03-14 18:47:26 +01:00
bubnikv
d6b409d0d9 Update the SLA slices at the print preview once the index is calculated. 2019-03-14 15:11:27 +01:00
bubnikv
9c574a0d42 Fix of yesterday's commit, the bug caused cancelling of the computation. 2019-03-14 12:10:10 +01:00
bubnikv
2ba661cb76 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-03-13 15:45:01 +01:00
bubnikv
18025cc669 Reworked the command line interface based on the current state
of the upstream.
Thanks @alexrj, @lordofhyphens for the original code of slic3r.cpp
2019-03-13 15:44:50 +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
1cb1c12812 Fine tuning the new parameters and adding max_pillar_link_distance 2019-03-08 11:39:34 +01:00
tamasmeszaros
a7c07960ee Merge branch 'master' into tm_colldetection_upgr 2019-03-07 12:02:28 +01:00
bubnikv
44c64f4a98 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-03-01 17:59:17 +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
Lukas Matena
ee4496f59f An attempt to fix an unwanted cancellation caused by improper frontend-backend data synchronization (SLA support points) 2019-03-01 16:17:23 +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
tamasmeszaros
43f03b8032 Incorporate individual support point radius. 2019-02-26 17:13:33 +01:00
tamasmeszaros
2b03c25bc6 Pad "tilt" changed to "slope" 2019-02-25 16:04:46 +01:00
bubnikv
f23919985f Renamed the SLA output file to ".sl1" 2019-02-25 15:01:39 +01:00
tamasmeszaros
01c9b13ade Disabling pad edge radius and adding the "wall tilt" parameter. 2019-02-25 12:06:38 +01:00
bubnikv
a0d256f9f7 Restart background processing for all steps on G-code export and send to
octoprint for SLA if the slicing for a single object only is active.
2019-02-25 10:21:12 +01:00
YuSanka
416411bd64 SLA: Changed default value of the faded_layers to the current one. This information is used for export config.ini 2019-02-22 13:22:13 +01:00
bubnikv
917f044f81 Renamed the "lambda-" prefix for the generic modifiers to "Generic-"
Refactored ModelVolume::Type to enum class ModelVolumeType to be able
to forward declare it.

Refactored UI to use the ModelVolumeType instead of the untyped int.
2019-02-22 12:12:10 +01:00
bubnikv
ac0c7e8065 Optimization of SLA print time estimation,
moved SLA print time estimation calculation into rasterization step,
so that the print time estimation is tracked by some SLAPrintStep.

Extended the output file name generator to use the SLA print statistics.
2019-02-21 15:46:04 +01:00
bubnikv
37ab271803 Merge remote-tracking branch 'origin/ys_sla_time_estimation' 2019-02-21 13:11:16 +01:00
bubnikv
76f1aa09d0 Fixed an issue with background processing cancelation & SLA supports
for a single object only.
Fixed a spelling issue in "call_cancell_xxx"
2019-02-21 12:39:38 +01:00
bubnikv
159041747d WIP: SLA support "Generate points" and "Apply Changes" will reslice
just the selected object.
Added "Host upload active" check on background processing state.
Documented requirements on "update_background_process" to
control the upcoming single "Slice Now" / "Export" button.
2019-02-21 11:40:56 +01:00
bubnikv
c86a4f3ac6 Fix of "Change of object type support blocker to enforcer does nothing (and vice versa) (#1818)"
WIP: Limited background processing for SLA supports.
2019-02-21 08:44:07 +01:00
YuSanka
fb8c66f223 Merge remote-tracking branch 'origin/master' into ys_sla_time_estimation 2019-02-20 15:14:53 +01:00
YuSanka
98a551587c Improved used material estimation (take instances too) 2019-02-20 15:13:03 +01:00
bubnikv
da5a16d962 Fix of the SLA situation where an object was sliced even after being
moved out of the print bed.

Added an event.Skip() when processing OnActivate event.
2019-02-20 12:21:22 +01:00
bubnikv
771a3d3b14 Reordered SLA background processing:
Calculate the SLA supports first before continuing with slicing
the SLA supports, which is time consuming.
2019-02-20 11:58:09 +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
YuSanka
9e3434ecc1 Fixed calculation of the consumed material for the supports 2019-02-19 12:14:13 +01:00
YuSanka
9d0acc010d Added new options for SLAPrintSettings (faded_layers) and SLAPrinterSettings (fast/slow_tilt_time and area_fill) 2019-02-18 16:24:55 +01:00
YuSanka
a690466dbf Fixed a typo for the last commit 2019-02-18 13:24:56 +01:00
YuSanka
2df069323c Time estimation improvement 2019-02-18 12:28:58 +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
YuSanka
3f23bd5224 Save statistics values to the config.ini 2019-02-13 16:30:40 +01:00
YuSanka
88f04e0fae Added calculation of the material consumption 2019-02-13 15:35:41 +01:00
YuSanka
589ac889a3 Fixed OSX build 2019-02-13 08:44:42 +01:00
YuSanka
c04be58648 Implemented estimated printing time for the SLA printing 2019-02-12 16:34:42 +01:00
bubnikv
fb6f3d8431 Send EVT_SLICING_UPDATE with RELOAD_SLA_SUPPORT_POINTS
once object's support points are calculated by the backend.
2019-02-06 14:18:04 +01:00
bubnikv
d31cb98fe9 Merge remote-tracking branch 'remotes/origin/master' into lm_sla_supports_auto2 2019-02-06 11:11:51 +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
d32d0a7636 Merge branch 'master' into lm_sla_supports_auto2 2019-02-04 08:41:00 +01:00
Lukas Matena
d154e75ad7 Merge branch 'master' into lm_sla_supports_auto2 2019-02-04 08:40:20 +01:00
bubnikv
a56f7d60e5 Fixed an issue, where the output G-code file name was not always updated
from the current Model/ModelObjects.
Fixed a possible race condition in updating Print::m_placeholder_parser
with the proposed filename / filename base.
Improved documentation (source code comments).
2019-02-03 10:41:14 +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
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
9d9d5f22ef Fixing empty first layer when no pad and no supports are selected. 2019-01-28 16:17:43 +01:00
tamasmeszaros
05861dcacd Merge branch 'master' into tm_colldetection_upgr 2019-01-15 15:32:35 +01:00
tamasmeszaros
831de96a81 Solving issue with first empty layer. 2019-01-15 14:25:28 +01:00
tamasmeszaros
7fa430c56d Adding an AABB tree to EigenMesh3D.
Yet to be used.
2019-01-14 17:28:02 +01:00
tamasmeszaros
1947925263 Added parameter for pillar connection mode 2019-01-09 12:21:43 +01:00
tamasmeszaros
f761691b7d Pad now has adjustable wall tilt and maintains wall thickness properly.
Edges are not rounded yet.
2019-01-04 16:24:10 +01:00
tamasmeszaros
8a3d2f385f Fix for bad arrange with mirrored objects 2019-01-03 14:20:01 +01:00
tamasmeszaros
abf34c3b6d Debug logs during SLA processing 2019-01-02 11:52:15 +01:00
bubnikv
0a3758d785 SLA automatic support points: Added cancellation points. 2018-12-22 11:21:21 +01:00
bubnikv
126035f6f8 Fixed many errors in background processing synchronization and update.
Fixed couple of compiler warnings.
2018-12-22 10:02:42 +01:00
tamasmeszaros
bf080d3002 small refactoring and warning elimination. 2018-12-21 14:32:11 +01:00
Lukas Matena
7617b10d6e SLA autosupports including islands 2018-12-21 12:35:20 +01:00
Lukas Matena
9571e7c209 Merge branch 'master' into lm_sla_supports_auto 2018-12-20 22:35:47 +01:00
tamasmeszaros
ee8df7b408 Don't set done on a canceled step. 2018-12-20 16:25:32 +01:00
tamasmeszaros
70bfa4202f Fix for SPE-700 (Corrupted slice data) 2018-12-20 15:24:02 +01:00
Lukas Matena
75ef3431b3 Merge branch 'master' into lm_sla_supports_auto 2018-12-19 12:25:58 +01:00
Enrico Turri
debbca0f14 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2018-12-17 08:29:23 +01:00
tamasmeszaros
dae01af2ac Logging during sla processing. 2018-12-14 16:58:55 +01:00
Lukas Matena
27ad859d4d SLA supports - first attempt at supporting islands 2018-12-14 16:15:59 +01:00
Enrico Turri
728a124759 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2018-12-14 10:09:10 +01:00
tamasmeszaros
2d29b7d6cd Fix msvc build 2018-12-14 10:07:35 +01:00
tamasmeszaros
10bfa82107 Fix msvc build 2018-12-14 09:57:48 +01:00
tamasmeszaros
dd3c485965 Some refactoring 2018-12-13 15:33:39 +01:00
tamasmeszaros
310adc18c6 Removed display_flip_xy and added display_orientation instead.
When starting Slic3r and the profile is FDM type than it yields an assertion failure for wx. See Tab::update_page_tree_visibility() line 2371
2018-12-13 12:42:45 +01:00
tamasmeszaros
9917edcdcc XY flip is implemented, works only for portrait LCD. 2018-12-12 18:45:45 +01:00
tamasmeszaros
623b2cec5c Another fix for crashing support generation. 2018-12-12 15:51:39 +01:00
bubnikv
09c539a242 Trigger background processing update when switching to a preview tab.
Implements "Go Direct to the preview screen after slicing #152"
2018-12-11 17:49:31 +01:00
tamasmeszaros
15eae24650 Build error fix for msvc 2018-12-11 16:20:30 +01:00
tamasmeszaros
b31c62e044 Added cancellation points to pad creation step. 2018-12-11 15:54:54 +01:00
bubnikv
86e6f8bf33 Fixed integration tests. 2018-12-03 16:25:21 +01:00
bubnikv
435163fb73 Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-12-03 13:21:48 +01:00
bubnikv
d46d0dc365 Implemented naming of the SLA export file based on the output file name
template.

Reworked naming of the plater exports to not use the output file name
template, but to derive the file name from the first printable object's name.

Fixed error handling: Reimpemented the Perl's "eval" blocks
as try / catch blocks.
2018-12-03 13:14:28 +01:00
tamasmeszaros
f289efab23 Fixed a few bugs with pad_enable and supports_enable 2018-11-30 14:26:41 +01:00
tamasmeszaros
55d62b8295 Fix for empty or broken png output.
Fix for instance transformation order error and state invalidation issues with rasterization.
2018-11-29 18:12:40 +01:00
tamasmeszaros
7b9c8ca06c Fix for empty zip when the object is moved after slicing 2018-11-29 12:53:56 +01:00
tamasmeszaros
980c53970b merge tm_sla_supports_backend with master, reapply fix for index slice invalidation, fix for autorotation z offset 2018-11-29 11:45:02 +01:00
tamasmeszaros
8fbfad275c Reordered scene reload to prevent race conditions.
Also extended progress status bar to support status value -1 for pulsing.
2018-11-29 10:57:06 +01:00
Enrico Turri
bac021d516 SLA slices preview - completed prototype 2018-11-28 15:13:25 +01:00
tamasmeszaros
729e35f1ff changed SliceIndex to use floating point keys. 2018-11-28 15:02:23 +01:00
tamasmeszaros
21d5acfdd7 Support points existence validation. 2018-11-27 13:52:42 +01:00
tamasmeszaros
415a4fa02b Correcting parameter name changes and the additional slaposIndexSlices step 2018-11-27 11:06:25 +01:00
tamasmeszaros
2a31f5e6fc Refinement of the slice index interface 2018-11-26 15:09:29 +01:00
tamasmeszaros
f76560bcc5 Initial interface for slice index. 2018-11-26 14:43:28 +01:00
bubnikv
103af1d8fb Fixed some background processing synchronization issues. 2018-11-23 17:05:44 +01:00
tamasmeszaros
746c1d2fd8 SLA support parameters changed: radiuses for diameters. 2018-11-23 13:05:24 +01:00
tamasmeszaros
a05bda5347 Removed head_back_radius and added pillar widening factor to the parameter layers 2018-11-23 11:51:45 +01:00
tamasmeszaros
864a2b387a trying to fix build for OSX 2018-11-22 18:13:34 +01:00
tamasmeszaros
d28b61f8a3 Adding checkbox for disabling support generation (still having pad generation) 2018-11-22 18:02:05 +01:00
tamasmeszaros
edf80316e1 removed is_step_done queries from the pipeline (using return value of set_started) 2018-11-22 14:16:55 +01:00
tamasmeszaros
c39698878d Merge remote-tracking branch 'origin/master' into tm_sla_supports_backend and add get_current_elevation 2018-11-22 13:57:13 +01:00
tamasmeszaros
1f8007f0da status moves continuously when rasterizing 2018-11-22 13:42:52 +01:00
tamasmeszaros
3bd1734daa fix for progress indication values 2018-11-22 12:13:58 +01:00
bubnikv
ddf8acb440 Fixed missing include (fixed compilation on OSX) 2018-11-21 18:03:24 +01:00
tamasmeszaros
5c141d9f10 Fixed race condition when no pad is generated. Progress indication for SLA is broken. 2018-11-21 17:40:18 +01:00
bubnikv
487ccdd2be Merge branch 'master' of https://github.com/Prusa3d/Slic3r 2018-11-21 17:35:58 +01:00
bubnikv
314f7dc674 WIP: Synchronization of SLA background processing. 2018-11-21 17:35:35 +01:00
tamasmeszaros
3667fc7894 Change to return const references for TriangleMesh return values in SLAPrintObject's methods 2018-11-21 15:21:57 +01:00
tamasmeszaros
1a58513717 Using the new status update interface to refresh scene right after the supports are ready. 2018-11-21 12:10:10 +01:00
tamasmeszaros
897ca1aa44 comments... 2018-11-21 10:00:49 +01:00
tamasmeszaros
d27e22c2c3 height level mismatches seems to be fixed. 2018-11-20 16:12:04 +01:00