3dPrinting :

- corretto calcolo TFS quando si estrudono solo i Ribs e non il Pezzo.
This commit is contained in:
DarioS
2022-11-22 20:01:58 +01:00
parent c0230eccf7
commit 0a78833f61
+18 -11
View File
@@ -1,4 +1,4 @@
-- RunMachParamFromSWCalc.lua by Egaltech s.r.l. 2022/09/15
-- RunMachParamFromSWCalc.lua by Egaltech s.r.l. 2022/11/22
-- Calcolo dei parametri di stampa
-- Tabella per definizione modulo
@@ -82,12 +82,14 @@ function RunMachParamFromSWCalc.Exec()
dTotLayerLength = dTotLayerLength + dTotCrvLength
-- recupero area
local nOuterCrvId = EgtGetFirstNameInGroup( nCrvId, OUTER_CRV)
local _, _, dTotCrvArea = EgtCurveArea( nOuterCrvId)
local dOuterLength = EgtCurveLength( nOuterCrvId)
-- recupero offset del part per aggiungerlo all'area interna
local dOffset = EgtGetInfo( nPartId, KEY_OFFSET_SLICE, 'd')
dTotCrvArea = dTotCrvArea + ( dOffset * dOuterLength)
dTotLayerArea = dTotLayerArea + dTotCrvArea
if nOuterCrvId and dStrandCount > 0.5 then
local _, _, dTotCrvArea = EgtCurveArea( nOuterCrvId)
local dOuterLength = EgtCurveLength( nOuterCrvId)
-- recupero offset del part per aggiungerlo all'area interna
local dOffset = EgtGetInfo( nPartId, KEY_OFFSET_SLICE, 'd')
dTotCrvArea = dTotCrvArea + ( dOffset * dOuterLength)
dTotLayerArea = dTotLayerArea + dTotCrvArea
end
nCrvId = EgtGetNextName( nCrvId, CONTOUR_GRP .. '*')
end
-- recupero feed del layer
@@ -114,11 +116,16 @@ function RunMachParamFromSWCalc.Exec()
end
EgtSetInfo( nLayerResultId, KEY_SLICEID, nOrigLayers)
-- calcolo costante MF
local dMF = dTotLayerLength * dStrand / dTotLayerArea * 100
local dMF = 1
local dSC = 1
if dTotLayerArea > 1 then
dMF = dTotLayerLength * dStrand / dTotLayerArea * 100
dSC = dStrandCount
end
-- calcolo tempi stimati del layer
local dTMin = ( dMF + MATERIAL.AMin) / MATERIAL.BMin * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dStrandCount, MATERIAL.KN)
local dTTrg = ( dMF + MATERIAL.ATrg) / MATERIAL.BTrg * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dStrandCount, MATERIAL.KN)
local dTMax = ( dMF + MATERIAL.AMax) / MATERIAL.BMax * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dStrandCount, MATERIAL.KN)
local dTMin = ( dMF + MATERIAL.AMin) / MATERIAL.BMin * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dSC, MATERIAL.KN)
local dTTrg = ( dMF + MATERIAL.ATrg) / MATERIAL.BTrg * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dSC, MATERIAL.KN)
local dTMax = ( dMF + MATERIAL.AMax) / MATERIAL.BMax * pow( 0.25 * dStrand, MATERIAL.KW) * pow( dSliceStep, MATERIAL.KZ) * pow( dSC, MATERIAL.KN)
local dFMin = dTotLayerLength / dTMax * 60
local dFTrg = dTotLayerLength / dTTrg * 60
local dFMax = dTotLayerLength / dTMin * 60