From b610f1f5e1aed0e3fcaf5bb5873258fe44666677 Mon Sep 17 00:00:00 2001 From: SaraP Date: Wed, 20 Sep 2023 15:59:58 +0200 Subject: [PATCH] 3dPrinting 2.5i1 : - sistemata gestione degli strand variabili con valore nullo. --- LuaLibs/CalcPaths.lua | 4 ++-- LuaLibs/CalcSlices.lua | 16 ++++++++++++---- LuaLibs/CalcToolPath.lua | 4 ++-- Version.lua | 2 +- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/LuaLibs/CalcPaths.lua b/LuaLibs/CalcPaths.lua index ccbb4dc..3758544 100644 --- a/LuaLibs/CalcPaths.lua +++ b/LuaLibs/CalcPaths.lua @@ -25,7 +25,7 @@ local function GetLayerParamsForPathCalc() LayerParams.nShellsNbr = EgtGetInfo( s_nPartId, KEY_SHELLS_NBR, 'i') LayerParams.dStrand = EgtGetInfo( s_nPartId, KEY_STRAND, 'd') LayerParams.dInnerStrand = EgtGetInfo( s_nPartId, KEY_INNER_STRAND, 'd') or LayerParams.dStrand - LayerParams.dInnerStrand = EgtClamp( LayerParams.dInnerStrand, 0.5 * LayerParams.dStrand, 1.5 * LayerParams.dStrand) + if LayerParams.dInnerStrand < GEO.EPS_SMALL then LayerParams.dInnerStrand = LayerParams.dStrand end LayerParams.dLayHeight = EgtGetInfo( s_nPartId, KEY_SLICE_STEP, 'd') LayerParams.dStrandOverlap = EgtGetInfo( s_nPartId, KEY_STRAND_OVERLAP, 'd') or 0 LayerParams.dOffs = EgtGetInfo( s_nPartId, KEY_OFFSET_SLICE, 'd') @@ -45,7 +45,7 @@ local function GetLayerParamsForPathCalc() LayerParams.nCeilType = EgtGetInfo( s_nPartId, KEY_CEIL_TYPE, 'i') or FILL_TYPE.OFFSET -- parametri infill LayerParams.dInfillStrand = EgtGetInfo( s_nPartId, KEY_INFILL_STRAND, 'd') or LayerParams.dStrand - LayerParams.dInfillStrand = EgtClamp( LayerParams.dInfillStrand, 0.5 * LayerParams.dStrand, 1.5 * LayerParams.dStrand) + if LayerParams.dInfillStrand < GEO.EPS_SMALL then LayerParams.dInfillStrand = LayerParams.dStrand end LayerParams.bInfillLink = EgtGetInfo( s_nPartId, KEY_INFILL_LINK, 'b') or false LayerParams.dInfillOverlap = EgtGetInfo( s_nPartId, KEY_INFILL_OVERLAP, 'd') or 0 LayerParams.nInfillType = EgtGetInfo( s_nPartId, KEY_INFILL_TYPE, 'i') or FILL_TYPE.NONE diff --git a/LuaLibs/CalcSlices.lua b/LuaLibs/CalcSlices.lua index 64b3f4d..5d9e249 100644 --- a/LuaLibs/CalcSlices.lua +++ b/LuaLibs/CalcSlices.lua @@ -104,7 +104,9 @@ local function GetRibParams( nId) local RibParam = {} ReadParam( nId, KEY_RIBS_STRAND, 'd', s_dStrand, RibParam) - RibParam[KEY_RIBS_STRAND] = EgtClamp( RibParam[KEY_RIBS_STRAND], 0.5 * s_dStrand, 1.5 * s_dStrand) + if RibParam[KEY_RIBS_STRAND] < GEO.EPS_SMALL then + RibParam[KEY_RIBS_STRAND] = s_dStrand + end ReadParam( nId, KEY_RIBS_SHELLS_NBR, 'i', 0, RibParam) ReadParam( nId, KEY_RIBS_INVERT_DIR, 'b', false, RibParam) ReadParam( nId, KEY_RIBS_LEAD_IN_INVERT, 'b', false, RibParam) @@ -139,7 +141,9 @@ local function GetAuxSolidsParams( nId) local AuxSolidsParam = {} ReadParam( nId, KEY_AUX_SOLIDS_STRAND, 'd', s_dStrand, AuxSolidsParam) - AuxSolidsParam[KEY_AUX_SOLIDS_STRAND] = EgtClamp( AuxSolidsParam[KEY_AUX_SOLIDS_STRAND], 0.5 * s_dStrand, 1.5 * s_dStrand) + if AuxSolidsParam[KEY_AUX_SOLIDS_STRAND] < GEO.EPS_SMALL then + AuxSolidsParam[KEY_AUX_SOLIDS_STRAND] = s_dStrand + end ReadParam( nId, KEY_AUX_SOLIDS_SHELLS_NBR, 'i', 0, AuxSolidsParam) ReadParam( nId, KEY_AUX_SOLIDS_OVERLAP, 'd', 0, AuxSolidsParam) ReadParam( nId, KEY_AUX_SOLIDS_INFILL, 'i', FILL_TYPE.NONE, AuxSolidsParam) @@ -631,7 +635,9 @@ local function PrepareInfill( nStmId, vtSlicing) local dGridOverlap = EgtGetInfo( s_nPartId, KEY_INFILL_GRID_OVERLAP, 'd') or 0 local dOffsStm = EgtGetInfo( s_nPartId, KEY_OFFSET_SLICE, 'd') local dStrand = EgtGetInfo( s_nPartId, KEY_INFILL_STRAND, 'd') or s_dStrand - dStrand = EgtClamp( dStrand, 0.5 * s_dStrand, 1.5 * s_dStrand) + if dStrand < GEO.EPS_SMALL then + dStrand = s_dStrand + end -- creo gruppo per infill local nInfillGrp = EgtGroup( s_nPartId) @@ -665,7 +671,9 @@ local function PrepareAuxSolidsInfill( nSolidsLay, vtSlicing) local dOffsY = ReadParam( vIds[i], KEY_AUX_SOLIDS_OFFSET_Y, 'd', 0) local dGridOverlap = ReadParam( vIds[i], KEY_AUX_SOLIDS_GRID_OVERLAP, 'd', 0) local dStrand = ReadParam( vIds[i], KEY_AUX_SOLIDS_STRAND, 'd', s_dStrand) - dStrand = EgtClamp( dStrand, 0.5 * s_dStrand, 1.5 * s_dStrand) + if dStrand < GEO.EPS_SMALL then + dStrand = s_dStrand + end -- creo gruppo associato local nInfillGrp = EgtGroup( s_nPartId) diff --git a/LuaLibs/CalcToolPath.lua b/LuaLibs/CalcToolPath.lua index 5401507..d856ca6 100644 --- a/LuaLibs/CalcToolPath.lua +++ b/LuaLibs/CalcToolPath.lua @@ -23,7 +23,7 @@ local function GetLayerParamsForToolPathCalc() LayerParams.bSpiralVase = EgtGetInfo( s_nPartId, KEY_SPIRAL_VASE, 'b') or false LayerParams.dStrand = EgtGetInfo( s_nPartId, KEY_STRAND, 'd') LayerParams.dInnerStrand = EgtGetInfo( s_nPartId, KEY_INNER_STRAND, 'd') or LayerParams.dStrand - LayerParams.dInnerStrand = EgtClamp( LayerParams.dInnerStrand, 0.5 * LayerParams.dStrand, 1.5 * LayerParams.dStrand) + if LayerParams.dInnerStrand < GEO.EPS_SMALL then LayerParams.dInnerStrand = LayerParams.dStrand end LayerParams.dLayHeight = EgtGetInfo( s_nPartId, KEY_SLICE_STEP, 'd') LayerParams.dOffs = EgtGetInfo( s_nPartId, KEY_OFFSET_SLICE, 'd') LayerParams.bInvert = ( EgtGetInfo( s_nPartId, KEY_PRINT_DIRECTION, 'i') == PRINT_DIRECTION.CW) @@ -46,7 +46,7 @@ local function GetLayerParamsForToolPathCalc() LayerParams.dTDiam = EgtGetInfo( s_nPartId, KEY_TOOL_DIAM, 'd') -- parametri infill LayerParams.dInfillStrand = EgtGetInfo( s_nPartId, KEY_INFILL_STRAND, 'd') or LayerParams.dStrand - LayerParams.dInfillStrand = EgtClamp( LayerParams.dInfillStrand, 0.5 * LayerParams.dStrand, 1.5 * LayerParams.dStrand) + if LayerParams.dInfillStrand < GEO.EPS_SMALL then LayerParams.dInfillStrand = LayerParams.dStrand end LayerParams.bInfillLink = EgtGetInfo( s_nPartId, KEY_INFILL_LINK, 'b') or false LayerParams.dInfillCoasting = EgtGetInfo( s_nPartId, KEY_INFILL_COASTING, 'd') or 0 LayerParams.dInfillWipe = EgtGetInfo( s_nPartId, KEY_INFILL_WIPE, 'd') or 0 diff --git a/Version.lua b/Version.lua index 3798eee..e739eff 100644 --- a/Version.lua +++ b/Version.lua @@ -1,4 +1,4 @@ -- Version.lua by Egaltech s.r.l. 2023/08/28 -- Gestione della versione di 3dPrinting -VERSION = '2.5h1' \ No newline at end of file +VERSION = '2.5i1' \ No newline at end of file