141 Commits

Author SHA1 Message Date
enricoturri1966
6944c30f87 Tech ENABLE_BAMBUSTUDIO_TOOLPATHS_CONFLICTS_DETECTION set as default 2023-05-31 13:34:02 +02:00
enricoturri1966
7a82429cf6 SPE-1682 - Toolpaths conflicts detection, 1st installment
Succesfully enhanced and integrated into PrusaSlicer from BambuStudio:

d43c7d5c92

d72b4c1bfe

87eb0f3665

b5b7264e99

Code taken from BambuStudio is embedded into tech ENABLE_BAMBUSTUDIO_TOOLPATHS_CONFLICTS_DETECTION

Changes to adapt the code to PrusaSlicer is embedded into tech ENABLE_BAMBUSTUDIO_TOOLPATHS_CONFLICTS_DETECTION_MOD

Co-authored-by: manch1n <miaoxin.chen@bambulab.com>

Co-authored-by: miaoxin <miaoxin.chen@bambulab.com>

Co-authored-by: lane.wei <lane.wei@bambulab.com>
2023-05-31 13:34:02 +02:00
enricoturri1966
4986afe94f Tech ENABLE_GCODE_POSTPROCESS_BACKTRACE set as default 2023-04-26 09:34:02 +02:00
enricoturri1966
99f3a3d54f SPE-1649 - Fixed crash in G-code post processor calculating the preheat / cooldown positions 2023-04-19 12:55:21 +02:00
Lukas Matena
2ac964a676 XL specific temporary:
- only enable the temp backtracking for XL
- hardcode toolchange time to 4.5s
2023-03-31 16:39:46 +02:00
Lukas Matena
57e1f3d4db Backtracing updates:
- always enable the feature
- read the tool that we change to
- get temperature for that tool (from config at this point)
- replace the dummy XYYY gcode by M117 (print to display)
  showing the tool, time to toolchange and required temp
2023-03-31 16:37:52 +02:00
enricoturri1966
c9724ae6fd Modify gcode post-process to allow to insert new gcode lines by backtracing from the current processed line.
Current state is a prototype and the new code is embedded into a new tech: ENABLE_GCODE_POSTPROCESS_BACKTRACE
2023-03-31 16:37:52 +02:00
enricoturri1966
991aedd37c #9597 - GCode processor and GCodeViewer - Fixed extruder temperature after tool changes while using single extruder multi material 2023-02-07 11:25:46 +01:00
Vojtech Bubnik
c64dbacf88 WIP Extending the expressivity of ExtrusionRole
Changed GCodeExtrusionRole to enum class.
Follow-up to 5991850db1f2d09d1b7713f42300e2bfe4a42128
e50e96bb26eab4f9d56c98706c03166635cf4fff
2023-01-16 11:14:34 +01:00
Vojtech Bubnik
e50e96bb26 Follow-up to 5991850db1f2d09d1b7713f42300e2bfe4a42128
WIP Extending the expressivity of ExtrusionRole
Separated ExtrusionRole / GCodeExtrusionRole into ExtrusionRole.cpp,hpp
2023-01-16 10:47:55 +01:00
Vojtech Bubnik
5991850db1 WIP Extending the expressivity of ExtrusionRole
Co-authored-by: supermerill <merill@free.fr>
Based on the unfinished idea of @supermerill, defining ExtrusionRole
as a bit mask of ExtrusionRoleModifier.
Because the ExtrusionRole was used for both ExtrusionEntity and
G-code export / G-code viewer, the original ExtrusionRole had to be split
to ExtrusionRole and GCodeExtrusionRole to support bitmask attributes
for the former while keeing a low number of ordinary values for the latter.
2023-01-16 10:14:46 +01:00
enricoturri1966
cf37f154ee Tech ENABLE_PROCESS_G2_G3_LINES set as default 2022-12-06 13:21:06 +01:00
enricoturri1966
6ee7445fe1 Tech ENABLE_USED_FILAMENT_POST_PROCESS set as default 2022-12-06 13:07:08 +01:00
enricoturri1966
32b2c90538 Tech ENABLE_TRAVEL_TIME set as default 2022-09-29 11:07:20 +02:00
enricoturri1966
f19882749f #8941 - GCodeViewer - Extended processing of line G10 for RepRap firmware (set tool temperature) 2022-09-26 09:38:08 +02:00
enricoturri1966
997d0a48a8 Improved time estimation for gcode files produced by KISSSlicer 2022-09-08 13:45:18 +02:00
enricoturri1966
7fbaa3e8fd GCodeViewer - Added processing of gcode files produced by BambuStudio 2022-07-27 13:10:45 +02:00
Lukas Matena
6c0db58628 Fixing conflicts part 4:
See previous commit. This one applies changes from master_250
to the files mentioned
2022-06-29 16:43:29 +02:00
Lukas Matena
d662bf2a18 Fixing conflicts part 3:
Some files have whitespace changes that make resolving conflicts difficult.
Take the version from master first, next commit will apply changes from master_250
2022-06-29 16:43:29 +02:00
Lukas Matena
b61714bb3e Merge branch 'master_250' (NO CONFLICTS FIXED):
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.idx
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.ini
CONFLICT (content): Merge conflict in src/libslic3r/CMakeLists.txt
CONFLICT (content): Merge conflict in src/libslic3r/Fill/Fill.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.hpp
CONFLICT (add/add): Merge conflict in src/libslic3r/Geometry/Curves.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PerimeterGenerator.cpp
CONFLICT (content): Merge conflict in src/libslic3r/Point.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PrintConfig.hpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/ConfigWizard.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GCodeViewer.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GLCanvas3D.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GUI_App.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoHollow.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp
CONFLICT (content): Merge conflict in src/slic3r/Utils/FixModelByWin10.cpp
CONFLICT (modify/delete): t/perimeters.t deleted in HEAD and modified in master_250.  Version master_250 of t/perimeters.t left in tree.
CONFLICT (content): Merge conflict in tests/fff_print/CMakeLists.txt
CONFLICT (content): Merge conflict in tests/fff_print/test_fill.cpp
CONFLICT (content): Merge conflict in version.inc
CONFLICT (modify/delete): xs/xsp/PerimeterGenerator.xsp deleted in HEAD and modified in master_250.  Version master_250 of xs/xsp/PerimeterGenerator.xsp left in tree.
2022-06-29 14:37:14 +02:00
Lukas Matena
5792190515 Fix of incorrect MMU filament estimate 2022-06-08 21:09:39 +02:00
enricoturri1966
3ce2d3a700 #8176 - Tech ENABLE_USED_FILAMENT_POST_PROCESS - Fixes used filament data exported to gcode file not taking in account custom gcode 2022-04-13 15:27:46 +02:00
enricoturri1966
6ee4457b31 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_lines_g2_g3 2022-03-21 08:54:04 +01:00
enricoturri1966
93d703518d Tech ENABLE_PROCESS_G2_G3_LINES - Improved detection of layer zs for gcode produced by other slicers 2022-03-21 08:53:55 +01:00
enricoturri1966
0bd3112b7a Reworked custom gcode toolpaths generation 2022-03-18 15:45:42 +01:00
enricoturri1966
21e6dccc12 Fixed conflicts after merge with master 2022-03-18 13:36:32 +01:00
enricoturri1966
8c8e908325 Tech ENABLE_PROCESS_G2_G3_LINES - Processing of gcode G2 and G3 lines 2022-03-18 13:34:53 +01:00
enricoturri1966
a7d466dc7c Tech ENABLE_Z_OFFSET_CORRECTION set as default 2022-03-18 08:32:35 +01:00
enricoturri1966
fb22612d0d Tech ENABLE_SPIRAL_VASE_LAYERS set as default 2022-03-17 15:12:03 +01:00
enricoturri1966
1d0af50a94 GCodeProcessor - Added processing of gcode line M220 2022-02-10 10:41:38 +01:00
Vojtech Bubnik
6ed037ab7b Merge remote-tracking branch 'origin/stable' 2022-02-04 17:01:18 +01:00
enricoturri1966
1fb41a8e22 #4881 - #5073 - #6336 - GCodeProcessor::AxisCoords using doubles in place of floats 2022-02-02 11:22:45 +01:00
enricoturri1966
0c0250750b #7843 - Added processing of gcode lines G60 and G61 for Marlin firmwares 2022-02-01 08:07:53 +01:00
YuSanka
94b8c4f096 Merge remote-tracking branch 'origin/master' into dev 2022-01-20 15:22:24 +01:00
enricoturri1966
76ce53f095 Tech ENABLE_Z_OFFSET_CORRECTION - Correction of toolpaths zs when z offset is set 2022-01-18 15:53:59 +01:00
enricoturri1966
b9b702d550 Fixed conflicts after merge with branch dev 2022-01-14 09:55:13 +01:00
enricoturri1966
7ed80e0a8d Tech ENABLE_SPIRAL_VASE_LAYERS - 1st installment - Per-layer preview for spiral vase mode 2022-01-06 11:43:05 +01:00
enricoturri1966
18cb91a982 Fixed conflicts after merge with master 2021-11-30 12:13:51 +01:00
enricoturri1966
ef059404b3 Tech ENABLE_FIX_SUPERSLICER_GCODE_IMPORT set as default 2021-11-30 12:01:22 +01:00
enricoturri1966
a3874a410f Tech ENABLE_FIX_PREVIEW_OPTIONS_Z set as default 2021-11-30 10:55:00 +01:00
enricoturri1966
c242f31353 Fixed conflicts after merge with master 2021-11-23 08:48:11 +01:00
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
fe6b288743 Fixed conflicts after merge with master 2021-10-25 12:44:59 +02:00
enricoturri1966
19387186a5 #7110 - Fixed calculation of estimated times for layers 2021-10-25 12:31:19 +02:00
enricoturri1966
3d22cc096f Fixed conflicts after merge with master 2021-10-19 12:08:43 +02:00
enricoturri1966
eee8d97f49 Tech ENABLE_TRAVEL_TIME - Show estimated time for travel moves in legend when they are visible 2021-10-07 14:07:33 +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
7ca9024fca #7008 - GCodeViewer - Fixed loading of gcodes generated by SuperSlicer 2021-09-27 11:22:36 +02:00
Vojtech Bubnik
07e7e11590 Fix of prusa-gcodeviewer changes modification time of the viewed gcode file #7005
This is a regression wrt. PrusaSlicer 2.4.0-alpha1 due to the G-code
processing optimization and parallelization.
Related to GCode Viewer changes files modified date in windows #5079
2021-09-27 10:02:54 +02:00