From 20ceabe96a95692207bfc0bd41556431d3663fe5 Mon Sep 17 00:00:00 2001 From: SaraP Date: Mon, 20 Jul 2026 09:37:11 +0200 Subject: [PATCH] 3dPrinting : - aggiunto warning per segnalare elementi ignorati in spiral vase (setti, infill, auxsolids). --- LuaLibs/CalcSlices.lua | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/LuaLibs/CalcSlices.lua b/LuaLibs/CalcSlices.lua index f7e9154..cf4ace6 100644 --- a/LuaLibs/CalcSlices.lua +++ b/LuaLibs/CalcSlices.lua @@ -1529,6 +1529,11 @@ local function SlicingWithSolid( vStmIds, nSlicingType, dMaxH, vSlicingVal, vSli -- infill if nSlicingType ~= SLICING_TYPE.MULTIPLANAR and nSlicingType ~= SLICING_TYPE.MULTIPLANAR_DEG45 and nSlicingType ~= SLICING_TYPE.MULTIPLANAR_HOR then PrepareInfill( vStmIds, vSlicingDir[1]) + else + local nInfillType = EgtGetInfo( s_nPartId, KEY_INFILL_TYPE, 'i') or FILL_TYPE.NONE + if nInfillType ~= FILL_TYPE.NONE then + EgtOutLog( 'Warning : infill ignored due to multiplanar mode') + end end if EgtProcessEvents( EgtIf( PRINT, 100, 0) + ( #vLayers + 9) / nCounterTot * 100, 0) == 1 then return false end @@ -1539,6 +1544,25 @@ local function SlicingWithSolid( vStmIds, nSlicingType, dMaxH, vSlicingVal, vSli PrepareAuxSolidsInfill( nAuxSolidsLay, vSlicingDir[1]) end if EgtProcessEvents( EgtIf( PRINT, 100, 0) + ( #vLayers + 12) / nCounterTot * 100, 0) == 1 then return false end + + else + -- segnalo warning per elementi ignorati + local nInfillType = EgtGetInfo( s_nPartId, KEY_INFILL_TYPE, 'i') or FILL_TYPE.NONE + if nInfillType ~= FILL_TYPE.NONE then + EgtOutLog( 'Warning : infill ignored due to spiral vase mode') + end + local nAuxSolidsLay = EgtGetFirstNameInGroup( s_nPartId, LAY_AUX_SOLIDS) + if EgtGetGroupObjs( nAuxSolidsLay) > 0 then + EgtOutLog( 'Warning : filled solids ignored due to spiral vase mode') + end + local vRibs = EgtGetAllInGroup( nRibsLay) + for i = 1, #vRibs do + local bMerge = ReadParam( vRibs[i], KEY_RIBS_MERGE_WITH_SHELLS, 'b', false) + if not bMerge then + EgtOutLog( 'Warning : ribs ignored due to spiral vase mode') + break + end + end end -- salvo info sui layers che contengono i solidi