Commit graph

1541 commits

Author SHA1 Message Date
enricoturri1966
9af9b9b35d Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS set as default 2021-11-16 12:39:54 +01:00
Vojtech Bubnik
cc44089440 New BuildVolume class was created, which detects build volume type (rectangular,
circular, convex, concave) and performs efficient collision detection agains these build
volumes. As of now, collision detection is performed against a convex
hull of a concave build volume for efficency.

GCodeProcessor::Result renamed out of GCodeProcessor to GCodeProcessorResult,
so it could be forward declared.

Plater newly exports BuildVolume, not Bed3D. Bed3D is a rendering class,
while BuildVolume is a purely geometric class.

Reduced usage of global wxGetApp, the Bed3D is passed as a parameter
to View3D/Preview/GLCanvas.

Convex hull code was extracted from Geometry.cpp/hpp to Geometry/ConvexHulll.cpp,hpp.
New test inside_convex_polygon().
New efficent point inside polygon test: Decompose convex hull
to bottom / top parts and use the decomposition to detect point inside
a convex polygon in O(log n). decompose_convex_polygon_top_bottom(),
inside_convex_polygon().

New Circle constructing functions: circle_ransac() and circle_taubin_newton().

New polygon_is_convex() test with unit tests.
2021-11-16 10:15:51 +01:00
enricoturri1966
a08f8305b3 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_preview_layout 2021-11-12 14:04:52 +01:00
enricoturri1966
9dcebf0a04 Commented out unused line 2021-11-12 08:45:16 +01:00
enricoturri1966
dd484e42fc Fixed conflicts after merge with master 2021-11-12 08:08:54 +01:00
Lukas Matena
ba56a79795 Simplify gizmo now renders the volume by itself,
it does not rely on the usual GLVolume rendering. GLCanvas3D::toggle_model_object_visibility
was extended to hide a single volume. Rendering the model and wireframe uses the same
vertex buffer, which is now used through GLModel class. GLGizmoRenderTransparent class
should no longer be needed. GLCanvas3D::reload_scene calls replaced with request_rerender.
2021-11-12 06:49:09 +01:00
YuSanka
e8be7b2ecd Implemented possibility to show resin colors from the Plater (Bottles with resin are colored now in preset combobox)
+ Added nsvgParseFromFileWithReplace() to replace some colors before parsing from SVG file
+ Thumbnails are saved with selected resin color in SL1 or SL1S files
+ "white" folder is deleted from "icons" now. THere is no needed anymore.
2021-11-09 17:01:50 +01:00
enricoturri1966
f7662682c8 Tech ENABLE_ENHANCED_IMGUI_SLIDER_FLOAT - Modified ImGuiWrapper::slider_float() to create a compound widget where an additional button can be used to set the keyboard focus into the slider to allow the user to type in the desired value 2021-11-05 14:46:44 +01:00
enricoturri1966
77548df00f Fixed missing sinking property in objects list for multipart objects with a part completely below the printbed 2021-10-27 14:33:02 +02:00
enricoturri1966
e1b3ba063b Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Printbed collision detection made cheaper for rectangular beds and faster for circular beds 2021-10-26 08:45:21 +02:00
enricoturri1966
fe6b288743 Fixed conflicts after merge with master 2021-10-25 12:44:59 +02:00
enricoturri1966
79ff8a0dda Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Follow-up of dea188083c and 22e63af0ce. Added missing calls to Selection::stop_dragging() 2021-10-20 13:19:15 +02:00
enricoturri1966
3d22cc096f Fixed conflicts after merge with master 2021-10-19 12:08:43 +02:00
enricoturri1966
0d922b04af Tech ENABLE_PREVIEW_LAYOUT - Added menu item View/Show legend 2021-10-14 11:30:27 +02:00
enricoturri1966
fe1c5f34a0 Fixed conflicts after merge with master 2021-10-14 10:57:08 +02:00
enricoturri1966
7be17d89e6 Fixed conflicts after merge with master 2021-10-14 10:48:46 +02:00
enricoturri1966
b9ac80ccd4 #7076 - Modifiers and similar objects always rendered as transparent 2021-10-08 10:48:46 +02:00
enricoturri1966
4ff13a5d63 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Reworked detection of collision with printbed. The detection uses now different algorithms in dependence of the printbed type (rectangular, circular, convex) to improve performance. 2021-10-06 13:47:54 +02:00
enricoturri1966
45db1c13ba Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Faster update of object manipulation fields while dragging gizmo Move/Rotate/Scale 2021-10-04 08:30:04 +02:00
enricoturri1966
6ff4d6c3f5 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Fixed detection of collision with circular printbed for pre-gcode preview and sla preview 2021-10-01 12:15:14 +02:00
enricoturri1966
09150780c9 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_preview_layout 2021-09-30 15:08:54 +02:00
enricoturri1966
1f82eb5624 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_sinking_objects_collision 2021-09-30 15:08:35 +02:00
enricoturri1966
13ef817a99 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Enable detection of collision with circular printbed in backend 2021-09-30 14:51:09 +02:00
enricoturri1966
430c7a69b3 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Completed detection of collision with circular printbed for toolpaths and sla auxyliary volumes 2021-09-30 13:16:05 +02:00
enricoturri1966
7cfe082621 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Enable detection of collision with circular printbed for toolpaths 2021-09-30 12:08:05 +02:00
enricoturri1966
b19c742455 Fixed conflicts after merge with master 2021-09-30 10:31:25 +02:00
enricoturri1966
e24bd2d2d4 Tech ENABLE_FIX_SINKING_OBJECT_OUT_OF_BED_DETECTION - Removed duplicated code 2021-09-30 10:23:38 +02:00
Filip Sykala
6bd78aa9c4 Add call for render 2021-09-30 09:23:04 +02:00
enricoturri1966
33da203b18 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_preview_layout 2021-09-30 07:58:11 +02:00
enricoturri1966
1df91ea930 Follow-up of 67e519d3ab - Use a platform-indipendent fix 2021-09-29 13:34:30 +02:00
enricoturri1966
1a95169466 Tech ENABLE_PREVIEW_LAYOUT - Fixed legend width when moving the application to another monitor 2021-09-29 11:56:55 +02:00
Vojtech Bubnik
8f4f02f84c Merge remote-tracking branch 'remotes/origin/vb_project_state' 2021-09-27 14:36:22 +02:00
Vojtech Bubnik
41dc265a45 WIP Undo / Redo and project state: Marking Undo / Redo snapshots
with their purpose.
2021-09-27 14:10:53 +02:00
enricoturri1966
57a0b23a07 Tech ENABLE_PREVIEW_LAYOUT - Avoid resetting the preview's horizontal slider when toggling options 2021-09-24 11:57:29 +02:00
enricoturri1966
e12cf58c91 Tech ENABLE_PREVIEW_LAYOUT - Replace options combo in bottom toolbar with toolbar in legend 2021-09-24 09:22:50 +02:00
David Kocik
b382ac8541 Fixed rendering undo/redo toolbar arrow. 2021-09-23 09:56:28 +02:00
enricoturri1966
cf380fb456 Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Out of bed detection for circular printbeds 2021-09-21 13:51:57 +02:00
enricoturri1966
1af0c5c73b Tech ENABLE_OUT_OF_BED_DETECTION_IMPROVEMENTS - Call GLVolumeCollection::check_outside_state() only when needed 2021-09-20 13:40:34 +02:00
enricoturri1966
f132ca9c3c Tech ENABLE_SINKING_CONTOURS set as default 2021-09-14 15:45:21 +02:00
enricoturri1966
30d2c3787f Tech ENABLE_DELAYED_TRANSPARENT_VOLUMES_RENDERING set as default 2021-09-14 14:34:21 +02:00
Vojtech Bubnik
880feb3a3d GCodeViewer slight opitmization: reuse (move) G-code line indices
in G-code viewer.
2021-09-13 10:41:28 +02:00
Lukas Matena
4ac013ec9c Fixed painting gizmos with modifiers below the bed:
- When a modifier was below the bed and all the object parts above, it would clip
  the modifier but not triangulate the cut.
- When an object part was below, it would triangulate all modifiers with
  opaque orange color.

Both should now be fixed.
2021-09-13 09:02:11 +02:00
enricoturri1966
8f4a6b3b7c Fixed color of objects in preview for SLA printers 2021-09-10 09:06:09 +02:00
enricoturri1966
8bd0f8ada9 Removed duplicated method GLVolumeCollection::check_outside_state() 2021-09-10 08:27:03 +02:00
Vojtech Bubnik
32733b7db9 GCodeProcessor collects positions of line ends for GCodeViewer,
GCodeViewer no more parses G-code just to extract line end positions.
Removed start_mapping_gcode_window(), void stop_mapping_gcode_window(),
they are no more needed.
2021-09-07 15:42:56 +02:00
enricoturri1966
639cf17e19 Fixed conflicts after merge with master 2021-09-01 13:28:10 +02:00
enricoturri1966
39ec1a6318 Fixed conflicts after merge with master 2021-08-26 12:39:28 +02:00
enricoturri1966
dbaaa35534 Tech ENABLE_SAVE_COMMANDS_ALWAYS_ENABLED -> 1st installment: Allow to save/load empty projects 2021-08-26 10:38:14 +02:00
Filip Sykala
9ea3be485f Merge branch 'master' into fs_QuadricEdgeCollapse 2021-08-25 16:56:24 +02:00
David Kocik
02dd1b5f7d rendering highlight arrow from svg 2021-08-25 16:31:31 +02:00