Commit Graph

12729 Commits

Author SHA1 Message Date
b13efbcc81 Optimization of the custom support projection algorithm
- transformation matrix is precalculated for each volume
- number of heap allocations was reduced
2020-04-24 01:26:13 +02:00
399d017bb0 Custom supports projection now runs in parallel 2020-04-22 16:08:36 +02:00
2277954737 Custom support generation now ignores triangles with upward-pointing normal 2020-04-22 14:01:29 +02:00
359522c8ad FDM custom supports gizmo now has a 'Remove all' button 2020-04-22 11:57:12 +02:00
34e8adeadd Custom supports data change forces invalidation of supports step 2020-04-22 11:16:28 +02:00
49504ea169 Fixed a logic error in the algorithm
The error created extremely large projections of triangles that were close to horizontal
2020-04-22 10:11:42 +02:00
455a0f42ed Moved the projection function into PrintObject.cpp 2020-04-21 13:50:47 +02:00
e28d048176 Fixed the algorithm so it works for horizontal triangles
Partial code cleanup
2020-04-21 01:39:40 +02:00
a534eb1fcd Project each part of the triangle on one slice only (WIP) 2020-04-21 01:39:35 +02:00
add0826174 Save z heights of the triangle vertices 2020-04-20 14:01:11 +02:00
8b94d8267b Merge branch 'master' into lm_fdm_custom_supports_backend 2020-04-17 14:19:16 +02:00
7fe35fd04f Fixup of previous commit 2020-04-17 14:17:11 +02:00
1ca9791c1a First partially working implementation of custom supports at the backend
The solution is temporary and should be improved and moved elsewhere - see comments in the code.
2020-04-17 13:15:26 +02:00
cbe2c3955e Fixed a failing assertion in FDM supports gizmo
It was a result of attempting to render an empty GLIndexedVertexArray
2020-04-17 11:11:12 +02:00
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
80779cd719 Localization: Fix of #4035
+ Added context for "Advanced" ("Mode")
+ Updated POT
2020-04-16 11:36:41 +02:00
319e74d4ce The bed texture is not shown when looking from below and FDM/SLA support gizmo is active 2020-04-14 13:18:08 +02:00
8c84e182d9 Merge pull request #3863 from espr14/patch-2
Removing Slic3r name and links
2020-04-10 07:39:47 +02:00
5d3b1fc85f Merge pull request #3910 from photodude/BIBO2-Print-Profile-Corrections
BIBO2 printer general print profile improvements.
2020-04-10 07:39:06 +02:00
adf6dcc535 Merge pull request #4009 from probonopd/ender-2
Add Creality Ender-2
2020-04-10 07:37:45 +02:00
304da0ae6f FDM supports gizmo cursor size now accounts for (uniform) scaling of the mesh
Added tooltips on the sliders
2020-04-09 18:36:57 +02:00
135a3bc01b FDM supports gizmo now uses VBOs instead of immediate mode 2020-04-09 15:56:43 +02:00
db1eca4e58 Add max_print_height 2020-04-08 17:04:39 +00:00
84831f331e Fixed a crash when switching to Preview 2020-04-08 17:22:30 +02:00
a46526b39b Merge branch 'lm_fdm_supports_gizmo' 2020-04-08 16:11:49 +02:00
b609ab4f8d Alt+mouse wheel adjusts cursor size in FDM supports gizmo 2020-04-08 15:21:41 +02:00
7f5dd56772 FDM supports gizmo - use right mouse to place support blockers 2020-04-08 14:59:53 +02:00
a484e5adff FDM supports gizmo now ignored modifiers and support enforcer/blockers 2020-04-08 12:58:48 +02:00
dc97f71c8d Clipping plane can now handle multiple-part objects 2020-04-08 11:52:22 +02:00
7cce2325e4 Fix of #3983 - Crash caused by a typo in Korean localization 2020-04-08 10:37:26 +02:00
3e136a821a Improved the FDM supports gizmo dialog
Removed unused code
Fixed a clipping-plane related crash
Fixed a crash in hollowing gizmo when no hollowed mesh was provided
Forbid opening the gizmo when a part of an object is selected
2020-04-08 09:37:49 +02:00
b46fdc67c9 Follow-up of c887ecfefa -> Removed unneded assignements from shaders 2020-04-08 09:00:08 +02:00
35c01d0a5e Removed unneeded branching from shaders 2020-04-08 08:22:02 +02:00
2d6a2accb3 Fixed bug in calculating the specular component of the color in shaders 2020-04-08 08:07:36 +02:00
3695c30494 Fixed obvious merge conflicts
FDM supports gizmo uses the new common data infrastructure
2020-04-07 19:44:29 +02:00
c39bcd8afe Merge branch 'lm_gizmos' into lm_fdm_supports_gizmo 2020-04-07 17:16:48 +02:00
873b24744f Merge branch 'lm_gizmos_data_pool'
The branch contains refactoring of common gizmos data handling
2020-04-07 17:03:03 +02:00
5994d8a92e Removed obsolete code
Got rid of dummy header GLGizmos.hpp
2020-04-07 16:47:39 +02:00
81cb23f357 Fixed crash related to ClippingPlane and incorrect handling of sla z shift in hollowing gizmo 2020-04-07 16:47:39 +02:00
70dc1721a1 SLA supports gizmo is now enabled and uses the new infrastructure 2020-04-07 16:47:39 +02:00
d3fcf2335d SupportsClipper implementation 2020-04-07 16:47:39 +02:00
207778f347 InstancesHider allows to show/hide supports on demand 2020-04-07 16:47:39 +02:00
7f6096784c ObjectClipper implementation, hollowing gizmo reenabled
ObjectClipper tracks active mesh (incl. possible hollowing), remembers clipping plane position and can render the cut on demand
Hollowing gizmo uses the new infrastructure
2020-04-07 16:45:16 +02:00
04899d536b Raycaster can now handle multiple volumes
This is necessary for future FDM supports gizmo. SLA objects only have one volume, so it wasn't needed until now.
2020-04-07 16:42:59 +02:00
9e5d680d6c Raycaster wrapper
The raycaster manages a MeshRaycaster object that the gizmo can ask to perform raycasts
If the hollowed mesh tracker is enabled and the hollowed mesh is newly calculated/invalidated, the raycaster automatically updates.
2020-04-07 16:40:59 +02:00
4b6e1da6b8 Hollowed mesh tracker implementation
The class tracks state of the backend calculation and if there is a hollowed/drilled mesh, it can provide a pointer to it
2020-04-07 16:40:10 +02:00
4c06da2b78 Dependencies check in debug mode
Some common resources can depend on each other - this checks that the requirements are consistent
2020-04-07 16:39:18 +02:00
5adc955364 InstancesHider implementation
Any gizmo can now ask for hiding all but the active instance by returning proper value from on_get_requirements
2020-04-07 16:39:06 +02:00
3c49db94f5 Flattening gizmo now uses the new CommonDataPool to store pointer to active object 2020-04-07 16:35:52 +02:00
f1d7420278 Common gizmos data are now handled by the CommonGizmosDataPool object 2020-04-07 16:35:52 +02:00