diff --git a/Designing/WinConst.lua b/Designing/WinConst.lua index 781d3ce..f357ff1 100644 --- a/Designing/WinConst.lua +++ b/Designing/WinConst.lua @@ -227,6 +227,7 @@ WIN_MINIZINKEN = 'MiniZinken' -- WIN_STARTCPDELTA = 'StartCPDelta' -- WIN_ENDCPDELTA = 'EndCPDelta' WIN_GEOWIDTH = 'GeoWidth' +WIN_GEOHEIGHT = 'GeoHeight' WIN_GLASSTHICKNESS = 'GlassThickness' WIN_SEMI_PROFILE = 'SemiProfileId' diff --git a/Designing/WinLib/WinCalculate.lua b/Designing/WinLib/WinCalculate.lua index 47685d7..9a0e0bd 100644 --- a/Designing/WinLib/WinCalculate.lua +++ b/Designing/WinLib/WinCalculate.lua @@ -1338,7 +1338,7 @@ local function CreateFrameGeo( nOutlineId, vPrevOutlineId, vNextOutlineId, nStar -- salvo spessore serramento nel gruppo local dGeoWidth = b3CurrProfileFrame:getDimX() EgtSetInfo( nGeoLayerId, WIN_GEOWIDTH, dGeoWidth) - + EgtSetInfo( nGeoLayerId, WIN_GEOHEIGHT, b3CurrProfileFrame:getDimY()) end --------------------------------------------------------------------- @@ -1972,7 +1972,10 @@ local function CalcGeoRaw( nPartId) local vCrvs = EgtGetAllInGroup( nGeoRawLayerId) TrimAndOrientOrderedCurves( vCrvs, false) local nCompo = EgtCurveCompo( nGeoRawLayerId, vCrvs) - + -- aggiungo spessore + local dDimH = EgtGetInfo( nGeoLayerId, WIN_GEOHEIGHT, 'd') + EgtModifyCurveThickness( nCompo, - dDimH) + -- creo frame ausiliario local vtX = EgtSV( nCompo) local frGeo = Frame3d( EgtSP( nCompo), vtX, Z_AX() ^ vtX, Z_AX()) @@ -3686,6 +3689,10 @@ local function CalcLogParts( nOrigPartId, bFinishedLogs) local nOrigSolidLayerId = EgtGetFirstNameInGroup( nOrigPartId, WIN_SOLID) local nOrigProcLayerId = EgtGetFirstNameInGroup( nOrigPartId, WIN_PRC) + -- recupero dimensione del profilo + local nGeoLayerId = EgtGetFirstNameInGroup( nOrigPartId, WIN_GEO) + local dThick = EgtGetInfo( nGeoLayerId, WIN_GEOHEIGHT, 'd') + -- recupero i tronchetti local nLogLayerId = EgtGetFirstNameInGroup( nOrigPartId, WIN_LOGS) local vCrvIn = EgtGetNameInGroup( nLogLayerId, WIN_GEO_IN) @@ -3712,7 +3719,8 @@ local function CalcLogParts( nOrigPartId, bFinishedLogs) -- a) GEORAW local nGeoRawLayerId = EgtGroup( nPartId) EgtSetName( nGeoRawLayerId, WIN_GEO_RAW) - EgtCopyGlob( nLogCrv, nGeoRawLayerId) + local nGeoRawCrvId = EgtCopyGlob( nLogCrv, nGeoRawLayerId) + EgtModifyCurveThickness( nGeoRawCrvId, - dThick) -- creo il frame ausiliario local vtX = EgtSV( nLogCrv) local frGeo = Frame3d( EgtSP( nLogCrv), vtX, Z_AX() ^ vtX, Z_AX()) @@ -3770,14 +3778,14 @@ local function CalcLogParts( nOrigPartId, bFinishedLogs) -- profili in e out if bFinishedLogs then - EgtRelocateGlob( nCrvIn, nProcLayerId) - local nSemiProfileInId = EgtGetInfo( nCrvIn, WIN_SEMI_PROFILE, 'i') - GetProcessingInfoFromSemiProfile( nCrvIn, nSemiProfileInId) - EgtSetStatus( nCrvIn, GDB_ST.ON) - EgtRelocateGlob( nCrvOut, nProcLayerId) - local nSemiProfileOutId = EgtGetInfo( nCrvOut, WIN_SEMI_PROFILE, 'i') - GetProcessingInfoFromSemiProfile( nCrvOut, nSemiProfileOutId) - EgtSetStatus( nCrvOut, GDB_ST.ON) + local nCrvInCopy = EgtCopyGlob( nCrvIn, nProcLayerId) + local nSemiProfileInId = EgtGetInfo( nCrvInCopy, WIN_SEMI_PROFILE, 'i') + GetProcessingInfoFromSemiProfile( nCrvInCopy, nSemiProfileInId) + EgtSetStatus( nCrvInCopy, GDB_ST.ON) + local nCrvOutCopy = EgtCopyGlob( nCrvOut, nProcLayerId) + local nSemiProfileOutId = EgtGetInfo( nCrvOutCopy, WIN_SEMI_PROFILE, 'i') + GetProcessingInfoFromSemiProfile( nCrvOutCopy, nSemiProfileOutId) + EgtSetStatus( nCrvOutCopy, GDB_ST.ON) end -- profilo left @@ -3917,6 +3925,9 @@ local function CalcGeoRawFromLogs( nPartId) -- costruisco la compo del grezzo local nCompo = EgtCurveCompo( nGeoRawLayerId, vCrvs) + local nGeoLayerId = EgtGetFirstNameInGroup( nPartId, WIN_GEO) + local dDimH = EgtGetInfo( nGeoLayerId, WIN_GEOHEIGHT, 'd') + EgtModifyCurveThickness( nCompo, - dDimH) -- creo il frame ausiliario local vtX = EgtSV( nCompo)