diff --git a/LuaLibs/AddManData.lua b/LuaLibs/AddManData.lua index 03392e8..b029731 100644 --- a/LuaLibs/AddManData.lua +++ b/LuaLibs/AddManData.lua @@ -92,7 +92,6 @@ KEY_RIBS_TWO_STRANDS = "RibsHaveAll2Strands" -- Regioni con diverso numero di passate KEY_SHELL_NBR_DIFF = "ShellNbrDifference" KEY_INVERTED_CURVE = "CurveIsInverted" -KEY_CLOSED_EXTRA_SHELL = "ExtraShellIsClosed" -- Parametri di macchina SEC_3DPRINTING = "3dPrinting" diff --git a/LuaLibs/CalcPaths.lua b/LuaLibs/CalcPaths.lua index 1f6cb60..e1fbb9c 100644 --- a/LuaLibs/CalcPaths.lua +++ b/LuaLibs/CalcPaths.lua @@ -265,7 +265,7 @@ local function AdjustRibsOffsetForIntersection2Shells( nCrv1, nCrv2, LayerParams EgtErase( vCopy1[i]) end end - + -------------------------------------------------------------------- local function HandleRibsIntersections( nRibsGrp, LayerParams, nOffsGrp, nRibsPathGrp, bAllTwoStrands) @@ -379,7 +379,6 @@ local function ReorderRibs( nGrp, bInvertOrder, dStrand, nMaxNbr) end end end - end -------------------------------------------------------------------------------------------- @@ -543,8 +542,6 @@ local function ReorderRibsInters2Shells( nOffsGrp, dStrand) ReassignInfo( nCrv, nCnt, vCopy) end - - -------------------------------------------------------------------- local function CalcRibsPaths( nSliceGrp, nRibsGrp, LayerParams, nIdx, nMaxStrandDiff) @@ -781,7 +778,7 @@ local function UpdateTotalShellSurf( nSrf, nCrv, dStrand, nGrpId) end --------------------------------------------------------------------- -local function JoinAndReorderExtraShells( nPathGrp, dStrand, vPtStart) +local function ReorderExtraShells( nPathGrp, dStrand, vPtStart) local vIds = EgtGetNameInGroup( nPathGrp, EXTRA_SHELL_CRV .. '*') if not vIds then return end @@ -858,28 +855,6 @@ local function JoinAndReorderExtraShells( nPathGrp, dStrand, vPtStart) end end end - - -- verifico se posso realizzare percorsi chiusi - for i = 1, k do - local vIds = EgtGetNameInGroup( nPathGrp, EXTRA_SHELL_CRV .. tostring(i)) - if #vIds == 2 then - local ptS = EgtSP( vIds[1]) - local ptE = EgtEP( vIds[2]) - if dist( ptS, ptE) < 1.5 * dStrand then - EgtAddCurveCompoLine( vIds[1], EgtSP( vIds[2])) - EgtAddCurveCompoCurve( vIds[1], vIds[2]) - EgtCloseCurveCompo( vIds[1]) - -- modifico lo start point - ModifyStartPoint( vIds[1], vPtStart) - -- ripristino se necessario orientamento antiorario - if EgtGetInfo( vIds[1], KEY_INVERTED_CURVE, 'b') then - EgtInvertCurve( vIds[1]) - EgtSetInfo( vIds[1], KEY_INVERTED_CURVE, 0) - end - EgtSetInfo( vIds[1], KEY_CLOSED_EXTRA_SHELL, 1) - end - end - end end -------------------------------------------------------------------- @@ -917,7 +892,7 @@ local function VerifyExtraShellPath( nCrv, nGrpId, vtSlicing, dStrand) EgtRelocateGlob( nCrv, nGrpId, GDB_IN.LAST_SON) EgtErase( nGrpTmp) end - + return true end @@ -977,7 +952,7 @@ local function CalcExtraShellsPath( nMaxShellNbrDiff, nShellNbrGrp, nCrvGrpId, d for j = nCrvT + 1, nTrimCrv + nTrimCnt - 1 do EgtErase( j) end - JoinAndReorderExtraShells( nGrpId, LayerParams.dStrand, vPtStart) + ReorderExtraShells( nGrpId, LayerParams.dStrand, vPtStart) return end else @@ -993,8 +968,8 @@ local function CalcExtraShellsPath( nMaxShellNbrDiff, nShellNbrGrp, nCrvGrpId, d end -- riordino le curve appena create e se possibile creo percorsi chiusi - JoinAndReorderExtraShells( nGrpId, LayerParams.dStrand, vPtStart) - + ReorderExtraShells( nGrpId, LayerParams.dStrand, vPtStart) + end --------------------------------------------------------------------- diff --git a/LuaLibs/CalcToolPath.lua b/LuaLibs/CalcToolPath.lua index 96eabfc..02e81e6 100644 --- a/LuaLibs/CalcToolPath.lua +++ b/LuaLibs/CalcToolPath.lua @@ -208,13 +208,12 @@ local function AddRetraction( nCrvId, dCoastingLen, dWipeLen, vtSlicing) -- se shell local nWipeId local nType = EgtGetInfo( nCrvId, KEY_TYPE, 'i') - local bClosedExtraShell = EgtGetInfo( nCrvId, KEY_CLOSED_EXTRA_SHELL, 'b') or false - if nType == TYPE.OUTER_SHELL or nType == TYPE.INNER_SHELL or bClosedExtraShell then - -- se shell o extra shell chiusa + if nType == TYPE.OUTER_SHELL or nType == TYPE.INNER_SHELL then + -- se shell nWipeId = EgtCopyGlob( nCopyId, nCoastingId or nCrvId, GDB_IN.AFTER) EgtTrimCurveEndAtLen( nWipeId, dWipeLen) else - -- se extra shell aperta + -- se extra shell local bInverted = EgtGetInfo( nCrvId, KEY_INVERTED_CURVE, 'b') or false local vtDir = EgtEV( nCoastingId or nCrvId) vtDir:rotate( vtSlicing, EgtIf( bInverted, 90, -90)) @@ -745,10 +744,6 @@ function CalcToolPath.Exec( nPartId) -- aggiungo gli opportuni raccordi sulle shell complete local vIds = EgtGetNameInGroup( nTpathGrpId, SHELL_CRV .. '*') - local vIdsExtra = EgtGetNameInGroup( nTpathGrpId, EXTRA_SHELL_CRV .. '*') or {} - for i = 1, #vIdsExtra do - table.insert( vIds, vIdsExtra[i]) - end AddLink( vIds, nTpathGrpId, LayerParams.nLinkType, LayerParams.dLinkParam, LayerParams.dSPOffs, LayerParams.dStrand, LayerParams.vtSlicing) -- aggiungo gli opportuni raccondi sulle shell con numero diverso di passate @@ -769,7 +764,6 @@ function CalcToolPath.Exec( nPartId) nCurr = EgtGetNextName( nCurr, EXTRA_SHELL_CRV .. '*') end - -- aggiungo leadin/leadout local nFirstCurve = EgtGetFirstInGroup( nTpathGrpId) if nFirstCurve and LayerParams.nLeadInType ~= LEAD_TYPE.NONE then