- Librerie con nome esteso
- Piccole correzioni dopo merge con Branch GetMainFaces
This commit is contained in:
@@ -9,7 +9,7 @@ local BasicCustomerStrategies = {}
|
||||
require( 'EgtBase')
|
||||
|
||||
-- Carico i dati globali
|
||||
local BD = require( 'BeamData')
|
||||
local BeamData = require( 'BeamData')
|
||||
local ID = require( 'Identity')
|
||||
|
||||
|
||||
@@ -386,10 +386,10 @@ function BasicCustomerStrategies.GetStrategiesFromBasicCustomerStrategies( Proc)
|
||||
local StrategiesFromScript = {}
|
||||
|
||||
-- se nessuno script specifico in BeamData, si carica standard di default EGALWARE
|
||||
if not BD.STRATEGIES_SCRIPT or BD.STRATEGIES_SCRIPT == 'Egalware' then
|
||||
if not BeamData.STRATEGIES_SCRIPT or BeamData.STRATEGIES_SCRIPT == 'Egalware' then
|
||||
StrategiesFromScript = GetStrategies_Egalware( Proc)
|
||||
-- CLIENTE : ESSETRE
|
||||
elseif BD.STRATEGIES_SCRIPT == 'Essetre' then
|
||||
elseif BeamData.STRATEGIES_SCRIPT == 'Essetre' then
|
||||
StrategiesFromScript = GetStrategies_Essetre( Proc)
|
||||
else
|
||||
StrategiesFromScript = nil
|
||||
|
||||
+24
-24
@@ -9,7 +9,7 @@ local BeamExec = {}
|
||||
require( 'EgtBase')
|
||||
|
||||
-- Carico i dati globali
|
||||
local BD = require( 'BeamData')
|
||||
local BeamData = require( 'BeamData')
|
||||
|
||||
-- carico librerie
|
||||
local BeamLib = require( 'BeamLib')
|
||||
@@ -20,7 +20,7 @@ local FaceData = require( 'FaceData')
|
||||
|
||||
|
||||
EgtOutLog( ' BeamExec started', 1)
|
||||
EgtMdbSetGeneralParam( MCH_GP.MAXDEPTHSAFE, BD.COLL_SIC)
|
||||
EgtMdbSetGeneralParam( MCH_GP.MAXDEPTHSAFE, BeamData.COLL_SIC)
|
||||
EgtMdbSave()
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
@@ -192,8 +192,8 @@ end
|
||||
function BeamExec.GetStrategiesFromJSONinBD()
|
||||
-- si legge il JSON contenente la configurazione da utilizzare (nome del file salvato nel BeamData)
|
||||
local sMachDir = EgtGetCurrMachineDir()
|
||||
if BD.STRATEGIES_CONFIG_FILE then
|
||||
local sFile = sMachDir .. '\\Beam\\' .. BD.STRATEGIES_CONFIG_FILE
|
||||
if BeamData.STRATEGIES_CONFIG_FILE then
|
||||
local sFile = sMachDir .. '\\Beam\\' .. BeamData.STRATEGIES_CONFIG_FILE
|
||||
-- se non esiste file JSON, annullo la lista contenente le strategie
|
||||
if not EgtExistsFile( sFile) then
|
||||
STRATEGIES = nil
|
||||
@@ -215,8 +215,8 @@ end
|
||||
function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, bMachGroupOk)
|
||||
|
||||
-- default per nuove costanti qualora non definite
|
||||
BD.OVM_BLADE_HBEAM = ( BD.OVM_BLADE_HBEAM or 11)
|
||||
BD.OVM_CHAIN_HBEAM = ( BD.OVM_CHAIN_HBEAM or 8)
|
||||
BeamData.OVM_BLADE_HBEAM = ( BeamData.OVM_BLADE_HBEAM or 11)
|
||||
BeamData.OVM_CHAIN_HBEAM = ( BeamData.OVM_CHAIN_HBEAM or 8)
|
||||
|
||||
-- sovramateriale intermedio nullo se non definito
|
||||
dOvmMid = ( dOvmMid or 0)
|
||||
@@ -249,9 +249,9 @@ function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, b
|
||||
-- Area tavola
|
||||
local b3Tab = EgtGetTableArea()
|
||||
-- Calcolo posizione estremo TR/BR della tavola rispetto a sua origine in BL
|
||||
local dPosY = EgtIf( BD.CENTER_BEAM, ( b3Tab:getDimY() + dRawW * EgtIf( BD.RIGHT_LOAD, -1, 1)) / 2, EgtIf( BD.RIGHT_LOAD, 0, b3Tab:getDimY()))
|
||||
BD.OriXR = Point3d( b3Tab:getDimX(), dPosY, 0)
|
||||
BD.PosXR = EgtIf( BD.RIGHT_LOAD, MCH_CR.BR, MCH_CR.TR)
|
||||
local dPosY = EgtIf( BeamData.CENTER_BEAM, ( b3Tab:getDimY() + dRawW * EgtIf( BeamData.RIGHT_LOAD, -1, 1)) / 2, EgtIf( BeamData.RIGHT_LOAD, 0, b3Tab:getDimY()))
|
||||
BeamData.OriXR = Point3d( b3Tab:getDimX(), dPosY, 0)
|
||||
BeamData.PosXR = EgtIf( BeamData.RIGHT_LOAD, MCH_CR.BR, MCH_CR.TR)
|
||||
|
||||
-- Impostazione dell'attrezzaggio di default
|
||||
EgtImportSetup()
|
||||
@@ -262,7 +262,7 @@ function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, b
|
||||
local nPrevRaw, dPrevDelta
|
||||
local DeltaS = dOvmHead
|
||||
local DeltaSMin = 0
|
||||
local DeltaE = BD.OVM_MID
|
||||
local DeltaE = BeamData.OVM_MID
|
||||
for i = 1, #vBeam do
|
||||
-- assegno identificativo pezzo
|
||||
local Pz = vBeam[i].Id
|
||||
@@ -291,8 +291,8 @@ function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, b
|
||||
local CrawLen = min( PartLen + DeltaS + DeltaE, Len)
|
||||
local Delta = CrawLen - PartLen - DeltaS
|
||||
-- creo e posiziono il grezzo
|
||||
local nRaw = EgtAddRawPart( Point3d(0,0,0), CrawLen, dRawW, dRawH, BD.RAWCOL)
|
||||
EgtMoveToCornerRawPart( nRaw, BD.OriXR, BD.PosXR)
|
||||
local nRaw = EgtAddRawPart( Point3d(0,0,0), CrawLen, dRawW, dRawH, BeamData.RAWCOL)
|
||||
EgtMoveToCornerRawPart( nRaw, BeamData.OriXR, BeamData.PosXR)
|
||||
EgtMoveRawPart( nRaw, Vector3d( Len - dRawL, 0, 0))
|
||||
-- assegno ordine in lavorazione
|
||||
Cnt = Cnt + 1
|
||||
@@ -339,7 +339,7 @@ function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, b
|
||||
return false, sOut
|
||||
end
|
||||
-- se rimasto troppo poco grezzo, esco
|
||||
--if Len < BD.MinRaw then break end
|
||||
--if Len < BeamData.MinRaw then break end
|
||||
DeltaS = 0
|
||||
end
|
||||
if nPrevRaw then
|
||||
@@ -348,8 +348,8 @@ function BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam, b
|
||||
|
||||
-- Se rimasto materiale aggiungo grezzo dell'avanzo
|
||||
if Len > 10 then
|
||||
local nRaw = EgtAddRawPart( Point3d(0,0,0), Len, dRawW, dRawH, BD.RAWCOL)
|
||||
EgtMoveToCornerRawPart( nRaw, BD.OriXR, BD.PosXR)
|
||||
local nRaw = EgtAddRawPart( Point3d(0,0,0), Len, dRawW, dRawH, BeamData.RAWCOL)
|
||||
EgtMoveToCornerRawPart( nRaw, BeamData.OriXR, BeamData.PosXR)
|
||||
EgtMoveRawPart( nRaw, Vector3d( Len - dRawL, 0, 0))
|
||||
-- assegno ordine in lavorazione
|
||||
Cnt = Cnt + 1
|
||||
@@ -361,19 +361,19 @@ end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
function BeamExec.CalcMinUnloadableRaw( dRawW, dRawH)
|
||||
if BD.GetMinUnloadableRaw then
|
||||
BD.MinRaw = BD.GetMinUnloadableRaw( dRawW, dRawH)
|
||||
if BeamData.GetMinUnloadableRaw then
|
||||
BeamData.MinRaw = BeamData.GetMinUnloadableRaw( dRawW, dRawH)
|
||||
else
|
||||
local H_S = 200
|
||||
local H_L = 400
|
||||
-- Determinazione minimo grezzo scaricabile
|
||||
if dRawH <= H_S then
|
||||
BD.MinRaw = BD.MINRAW_S
|
||||
BeamData.MinRaw = BeamData.MINRAW_S
|
||||
elseif dRawH <= H_L then
|
||||
local Coeff = ( dRawH - H_S) / ( H_L - H_S)
|
||||
BD.MinRaw = ( 1 - Coeff) * BD.MINRAW_S + Coeff * BD.MINRAW_L
|
||||
BeamData.MinRaw = ( 1 - Coeff) * BeamData.MINRAW_S + Coeff * BeamData.MINRAW_L
|
||||
else
|
||||
BD.MinRaw = BD.MINRAW_L
|
||||
BeamData.MinRaw = BeamData.MINRAW_L
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -549,9 +549,9 @@ local function GetFeatureInfoAndDependency( vProc, b3Raw)
|
||||
Proc.PassedByHole = true
|
||||
end
|
||||
-- verifiche per specchiature
|
||||
if BD.DOWN_HEAD or BD.TWO_EQUAL_HEADS then
|
||||
if BeamData.DOWN_HEAD or BeamData.TWO_EQUAL_HEADS then
|
||||
-- forature
|
||||
if BD.DOUBLE_HEAD_DRILLING and ID.IsDrilling( Proc) and ID.IsDrilling( ProcB) and not Proc.Mirror then
|
||||
if BeamData.DOUBLE_HEAD_DRILLING and ID.IsDrilling( Proc) and ID.IsDrilling( ProcB) and not Proc.Mirror then
|
||||
if AreDrillingsMirrored( Proc, ProcB, b3Raw) then
|
||||
Proc.Mirror = ProcB
|
||||
end
|
||||
@@ -572,12 +572,12 @@ function BeamExec.ProcessFeatures()
|
||||
while nRawId do
|
||||
-- verifico che il grezzo contenga pezzi oppure sia abbastanza lungo da essere scaricato coi carrelli
|
||||
local nPartId = EgtGetFirstPartInRawPart( nRawId)
|
||||
if not nPartId and EgtGetRawPartBBox( nRawId):getDimX() < BD.MinRaw then break end
|
||||
if not nPartId and EgtGetRawPartBBox( nRawId):getDimX() < BeamData.MinRaw then break end
|
||||
-- aggiungo la fase, se non è la prima
|
||||
if nOrd == 1 then
|
||||
EgtSetCurrPhase( 1)
|
||||
else
|
||||
BeamLib.AddPhaseWithRawParts( nRawId, BD.OriXR, BD.PosXR, 0)
|
||||
BeamLib.AddPhaseWithRawParts( nRawId, BeamData.OriXR, BeamData.PosXR, 0)
|
||||
end
|
||||
local nPhase = EgtGetCurrPhase()
|
||||
local nDispId = EgtGetPhaseDisposition( nPhase)
|
||||
|
||||
@@ -11,9 +11,6 @@ require( 'EgtBase')
|
||||
|
||||
EgtOutLog( ' BeamLib started', 1)
|
||||
|
||||
-- Dati
|
||||
local BD = require( 'BeamData')
|
||||
|
||||
--TODO refactoring di queste funzioni
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
|
||||
+26
-24
@@ -5,9 +5,6 @@
|
||||
-- Tabella per definizione modulo
|
||||
local FaceData = {}
|
||||
|
||||
-- Carico i dati globali
|
||||
local BD = require( 'BeamData')
|
||||
|
||||
-- carico librerie
|
||||
local BeamLib = require( 'BeamLib')
|
||||
|
||||
@@ -68,6 +65,7 @@ local function GetAdjacentFaces( Proc, idFace)
|
||||
if vAdj[idFace + 1][i] and vAdj[idFace + 1][i] ~= 0 and ( idFace + 1 ~= i) then
|
||||
local _, ptP1, ptP2 = EgtSurfTmFacetsContact( Proc.Id, idFace, i - 1, GDB_ID.ROOT)
|
||||
local dLength = dist( ptP1, ptP2)
|
||||
AdjacentFaces[i] = {}
|
||||
AdjacentFaces[i].Id = i - 1
|
||||
AdjacentFaces[i].LengthOnMainFace = dLength
|
||||
end
|
||||
@@ -82,6 +80,9 @@ function FaceData.GetFacesByAdjacencyNumber( Proc)
|
||||
local FacesByAdjacencyNumber = {}
|
||||
|
||||
for i = 1, Proc.Fct do
|
||||
if not FacesByAdjacencyNumber[#Proc.Faces[i].Adjacencies] then
|
||||
FacesByAdjacencyNumber[#Proc.Faces[i].Adjacencies] = {}
|
||||
end
|
||||
table.insert( FacesByAdjacencyNumber[#Proc.Faces[i].Adjacencies], i - 1)
|
||||
end
|
||||
|
||||
@@ -100,10 +101,10 @@ local function GetBottomFace( Proc)
|
||||
local dMinElevation = GEO.INFINITO
|
||||
for i = 1, #vBottomFace do
|
||||
for j = 1, Proc.Fct do
|
||||
if vBottomFace[i] == Proc.Face[j].Id then
|
||||
if Proc.Face[j].Elevation < dMinElevation then
|
||||
dMinElevation = Proc.Face[j].Elevation
|
||||
nBottomFace = Proc.Face[j].Id
|
||||
if vBottomFace[i] == Proc.Faces[j].Id then
|
||||
if Proc.Faces[j].Elevation < dMinElevation then
|
||||
dMinElevation = Proc.Faces[j].Elevation
|
||||
nBottomFace = Proc.Faces[j].Id
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -113,11 +114,11 @@ local function GetBottomFace( Proc)
|
||||
end
|
||||
|
||||
BottomFace.Id = nBottomFace
|
||||
BottomFace.FrameHV = Proc.Face[nBottomFace + 1].FrameHV
|
||||
BottomFace.Width = Proc.Face[nBottomFace + 1].Width
|
||||
BottomFace.Height = Proc.Face[nBottomFace + 1].Height
|
||||
BottomFace.Elevation = Proc.Face[nBottomFace + 1].Elevation
|
||||
BottomFace.VtN = Proc.Face[nBottomFace + 1].VtN
|
||||
BottomFace.FrameHV = Proc.Faces[nBottomFace + 1].FrameHV
|
||||
BottomFace.Width = Proc.Faces[nBottomFace + 1].Width
|
||||
BottomFace.Height = Proc.Faces[nBottomFace + 1].Height
|
||||
BottomFace.Elevation = Proc.Faces[nBottomFace + 1].Elevation
|
||||
BottomFace.VtN = Proc.Faces[nBottomFace + 1].VtN
|
||||
|
||||
return BottomFace
|
||||
end
|
||||
@@ -131,7 +132,7 @@ local function GetLongFaces( Proc)
|
||||
end
|
||||
|
||||
local idBottomFace = GDB_ID.NULL
|
||||
if Proc.MainFaces.BottomFace.Id then
|
||||
if Proc.MainFaces.BottomFace and Proc.MainFaces.BottomFace.Id then
|
||||
idBottomFace = Proc.MainFaces.BottomFace.Id
|
||||
else
|
||||
local BottomFace = GetBottomFace( Proc)
|
||||
@@ -149,8 +150,8 @@ local function GetLongFaces( Proc)
|
||||
for i = 1, Proc.Fct do
|
||||
if ( i - 1) ~= idBottomFace and ( i - 1) ~= LongFaces[1].Id then
|
||||
local bIsAdjacent = false
|
||||
for j = 1, #Proc.Face[i].Adjacences do
|
||||
if Proc.Face[i].Adjacences[j].Id == LongFaces[i].Id then
|
||||
for j = 1, #Proc.Faces[i].Adjacences do
|
||||
if Proc.Faces[i].Adjacences[j].Id == LongFaces[i].Id then
|
||||
bIsAdjacent = true
|
||||
end
|
||||
end
|
||||
@@ -164,12 +165,12 @@ local function GetLongFaces( Proc)
|
||||
|
||||
for i = 1, #LongFaces do
|
||||
for j = 1, Proc.Fct do
|
||||
if LongFaces[i].Id == Proc.Face[j].Id then
|
||||
LongFaces[i].Frame = Proc.Face[j].FrameHV
|
||||
LongFaces[i].Width = Proc.Face[j].Width
|
||||
LongFaces[i].Height = Proc.Face[j].Height
|
||||
LongFaces[i].Elevation = Proc.Face[j].Elevation
|
||||
LongFaces[i].VtN = Proc.Face[j].VtN
|
||||
if LongFaces[i].Id == Proc.Faces[j].Id then
|
||||
LongFaces[i].Frame = Proc.Faces[j].FrameHV
|
||||
LongFaces[i].Width = Proc.Faces[j].Width
|
||||
LongFaces[i].Height = Proc.Faces[j].Height
|
||||
LongFaces[i].Elevation = Proc.Faces[j].Elevation
|
||||
LongFaces[i].VtN = Proc.Faces[j].VtN
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -179,10 +180,11 @@ end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
function FaceData.GetFacesInfo( Proc, b3Raw)
|
||||
Faces = {}
|
||||
local Faces = {}
|
||||
local b3Solid = EgtGetBBoxGlob( EgtGetFirstNameInGroup( Proc.PartId, 'Box') or GDB_ID.NULL, GDB_BB.STANDARD)
|
||||
|
||||
for i = 1, Proc.Fct do
|
||||
Faces[i] = {}
|
||||
Faces[i].Id = i - 1
|
||||
Faces[i].VtN = EgtSurfTmFacetNormVersor( Proc.Id, i - 1, GDB_ID.ROOT )
|
||||
if Proc.Fct < 6 then
|
||||
@@ -209,12 +211,12 @@ function FaceData.GetMainFaces( Proc)
|
||||
local MainFaces = {}
|
||||
|
||||
-- faccia di fondo
|
||||
if Proc.FeatureTopology.Family == 'Rabbet' or Proc.FeatureTopology.Family == 'VGroove' or Proc.FeatureTopology.Family == 'Groove' or Proc.FeatureTopology.Family == 'Pocket' then
|
||||
if Proc.Topology.Family == 'Rabbet' or Proc.Topology.Family == 'VGroove' or Proc.Topology.Family == 'Groove' or Proc.Topology.Family == 'Pocket' then
|
||||
MainFaces.BottomFace = GetBottomFace( Proc)
|
||||
end
|
||||
|
||||
-- facce lunghe
|
||||
if Proc.FeatureTopology.Family == 'Rabbet' or Proc.FeatureTopology.Family == 'VGroove' or Proc.FeatureTopology.Family == 'Groove' or Proc.FeatureTopology.Family == 'Pocket' or Proc.FeatureTopology.Family == 'Tunnel' then
|
||||
if Proc.Topology.Family == 'Rabbet' or Proc.Topology.Family == 'VGroove' or Proc.Topology.Family == 'Groove' or Proc.Topology.Family == 'Pocket' or Proc.Topology.Family == 'Tunnel' then
|
||||
MainFaces.LongFaces = GetLongFaces( Proc)
|
||||
end
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
local FeatureData = {}
|
||||
|
||||
-- Carico i dati globali
|
||||
local BD = require( 'BeamData')
|
||||
local BeamData = require( 'BeamData')
|
||||
|
||||
-- carico librerie
|
||||
local BeamLib = require( 'BeamLib')
|
||||
@@ -222,8 +222,8 @@ function FeatureData.GetDrillingData( Proc)
|
||||
-- verifico se foro da adattare
|
||||
if EgtExistsInfo( Proc.Id, 'DiamUser') then
|
||||
if AuxId then AuxId = AuxId + Proc.Id end
|
||||
if AuxId and EgtGetType( AuxId) == GDB_TY.CRV_ARC and BD.USER_HOLE_DIAM and BD.USER_HOLE_DIAM > 1 then
|
||||
EgtModifyArcRadius( AuxId, BD.USER_HOLE_DIAM / 2)
|
||||
if AuxId and EgtGetType( AuxId) == GDB_TY.CRV_ARC and BeamData.USER_HOLE_DIAM and BeamData.USER_HOLE_DIAM > 1 then
|
||||
EgtModifyArcRadius( AuxId, BeamData.USER_HOLE_DIAM / 2)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -10,8 +10,5 @@ require( 'EgtBase')
|
||||
|
||||
EgtOutLog( ' MachiningLib started', 1)
|
||||
|
||||
-- Dati
|
||||
local BD = require( 'BeamData')
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
return MachiningLib
|
||||
|
||||
+25
-25
@@ -39,12 +39,12 @@ _G.package.loaded.BeamData = nil
|
||||
_G.package.loaded.Identity = nil
|
||||
_G.package.loaded.BasicCustomerStrategies = nil
|
||||
_G.package.loaded.FeatureData = nil
|
||||
_G.package.loaded.FaceData = nil
|
||||
|
||||
local BE = require( 'BeamExec')
|
||||
local BL = require( 'BeamLib')
|
||||
local BeamExec = require( 'BeamExec')
|
||||
|
||||
-- Carico i dati globali
|
||||
local BD = require( 'BeamData')
|
||||
local BeamData = require( 'BeamData')
|
||||
|
||||
-- Variabili di modulo
|
||||
local vBeam = {}
|
||||
@@ -129,11 +129,11 @@ end
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local function GetDataConfig()
|
||||
-- recupero utensili dal magazzino
|
||||
BE.GetToolsFromDB()
|
||||
BeamExec.GetToolsFromDB()
|
||||
-- se si utilizza interfaccia B&W, si carica il file JSON
|
||||
local bIsBeamWall = true -- TODO serve parametro per capire se stiamo utilizzando B&W
|
||||
if bIsBeamWall then
|
||||
BE.GetStrategiesFromJSONinBD()
|
||||
BeamExec.GetStrategiesFromJSONinBD()
|
||||
end
|
||||
-- TODO da gestire eventuali errori bloccanti
|
||||
return true
|
||||
@@ -144,23 +144,23 @@ end
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local function MyProcessBeams()
|
||||
-- Determinazione minimo grezzo scaricabile
|
||||
BE.CalcMinUnloadableRaw( dRawW, dRawH)
|
||||
BeamExec.CalcMinUnloadableRaw( dRawW, dRawH)
|
||||
|
||||
-- Lunghezza totale delle travi
|
||||
local dTotLen = 0
|
||||
for i = 1, #vBeam - 1 do
|
||||
dTotLen = dTotLen + vBeam[i].Box:getDimX()
|
||||
end
|
||||
dTotLen = dTotLen + max( vBeam[#vBeam].Box:getDimX(), BD.MinRaw)
|
||||
local dAddLen = BD.OVM_HEAD + ( #vBeam - 1) * BD.OVM_MID
|
||||
EgtOutLog( 'Ltot : '..EgtNumToString( dTotLen, 1) .. ' Lagg : '..EgtNumToString( dAddLen, 1)..' MinUnloadRaw : '.. EgtNumToString( BD.MinRaw + BD.OVM_MID, 1), 1)
|
||||
dTotLen = dTotLen + max( vBeam[#vBeam].Box:getDimX(), BeamData.MinRaw)
|
||||
local dAddLen = BeamData.OVM_HEAD + ( #vBeam - 1) * BeamData.OVM_MID
|
||||
EgtOutLog( 'Ltot : '..EgtNumToString( dTotLen, 1) .. ' Lagg : '..EgtNumToString( dAddLen, 1)..' MinUnloadRaw : '.. EgtNumToString( BeamData.MinRaw + BeamData.OVM_MID, 1), 1)
|
||||
|
||||
-- Richiedo lunghezza del grezzo, sovramateriale di testa, forzatura verticale e ordinamento automatico secondo la lunghezza
|
||||
local vsVal = EgtDialogBox( 'Lavora Travi' .. ' (Ltot='..EgtNumToString( dTotLen + dAddLen + 0.5, 0)..
|
||||
', Lmax='..EgtNumToString( BD.MAX_RAW, 0)..',MinUlr='..EgtNumToString( BD.MinRaw + BD.OVM_MID, 0)..')',
|
||||
{'Lunghezza grezzo', EgtNumToString( BD.STD_RAW, 0)},
|
||||
{'Sovramateriale di testa', EgtNumToString( BD.OVM_HEAD, 0)},
|
||||
{'Offset intermedio', EgtNumToString( BD.OVM_MID, 0)},
|
||||
', Lmax='..EgtNumToString( BeamData.MAX_RAW, 0)..',MinUlr='..EgtNumToString( BeamData.MinRaw + BeamData.OVM_MID, 0)..')',
|
||||
{'Lunghezza grezzo', EgtNumToString( BeamData.STD_RAW, 0)},
|
||||
{'Sovramateriale di testa', EgtNumToString( BeamData.OVM_HEAD, 0)},
|
||||
{'Offset intermedio', EgtNumToString( BeamData.OVM_MID, 0)},
|
||||
{'Forza sezione verticale', ' CB:true,*false'},
|
||||
{'Ordina per lunghezza', ' CB:true,*false'},
|
||||
{'Calcolo Lavorazioni', ' CB:*Da progetto,Ricalcolo standard,Ricalcolo IA'})
|
||||
@@ -177,7 +177,7 @@ local function MyProcessBeams()
|
||||
return false
|
||||
end
|
||||
if dRawL < GEO.EPS_SMALL then dRawL = dTotLen + dAddLen + 0.5 end
|
||||
dRawL = min( dRawL, BD.MAX_RAW)
|
||||
dRawL = min( dRawL, BeamData.MAX_RAW)
|
||||
local dOvmHead = EgtEvalNumExpr( vsVal[2])
|
||||
if not dOvmHead then
|
||||
local sOut = 'Sovramateriale di testa errato : ' .. vsVal[2]
|
||||
@@ -203,21 +203,21 @@ local function MyProcessBeams()
|
||||
EgtOutLog( 'Lraw : ' .. EgtNumToString( dRawL, 1) .. ' Lovm : '.. EgtNumToString( dOvmHead, 1), 1)
|
||||
|
||||
-- Verifico sezione barra non troppo grande
|
||||
if not BD.MAX_WIDTH2 or not BD.MAX_HEIGHT2 then
|
||||
if ( dRawW > BD.MAX_WIDTH + 10 * GEO.EPS_SMALL or dRawH > BD.MAX_HEIGHT + 10 * GEO.EPS_SMALL) then
|
||||
if not BeamData.MAX_WIDTH2 or not BeamData.MAX_HEIGHT2 then
|
||||
if ( dRawW > BeamData.MAX_WIDTH + 10 * GEO.EPS_SMALL or dRawH > BeamData.MAX_HEIGHT + 10 * GEO.EPS_SMALL) then
|
||||
local sOut = 'Sezione (' .. EgtNumToString( dRawW, 2) .. ' x ' .. EgtNumToString( dRawH, 2) .. ') ' ..
|
||||
'oltre i limiti della macchina (' .. EgtNumToString( BD.MAX_WIDTH, 2) .. ' x ' .. EgtNumToString( BD.MAX_HEIGHT, 2) .. ') '
|
||||
'oltre i limiti della macchina (' .. EgtNumToString( BeamData.MAX_WIDTH, 2) .. ' x ' .. EgtNumToString( BeamData.MAX_HEIGHT, 2) .. ') '
|
||||
EgtOutLog( sOut)
|
||||
EgtOutBox( sOut, 'Lavora Travi', 'WARNING')
|
||||
EgtDraw()
|
||||
return false
|
||||
end
|
||||
else
|
||||
if ( dRawW > BD.MAX_WIDTH + 10 * GEO.EPS_SMALL or dRawH > BD.MAX_HEIGHT + 10 * GEO.EPS_SMALL) and
|
||||
( dRawW > BD.MAX_WIDTH2 + 10 * GEO.EPS_SMALL or dRawH > BD.MAX_HEIGHT2 + 10 * GEO.EPS_SMALL) then
|
||||
if ( dRawW > BeamData.MAX_WIDTH + 10 * GEO.EPS_SMALL or dRawH > BeamData.MAX_HEIGHT + 10 * GEO.EPS_SMALL) and
|
||||
( dRawW > BeamData.MAX_WIDTH2 + 10 * GEO.EPS_SMALL or dRawH > BeamData.MAX_HEIGHT2 + 10 * GEO.EPS_SMALL) then
|
||||
local sOut = 'Sezione (' .. EgtNumToString( dRawW, 2) .. ' x ' .. EgtNumToString( dRawH, 2) .. ') ' ..
|
||||
'oltre i limiti della macchina (' .. EgtNumToString( BD.MAX_WIDTH, 2) .. ' x ' .. EgtNumToString( BD.MAX_HEIGHT, 2) .. ') ' ..
|
||||
'e (' .. EgtNumToString( BD.MAX_WIDTH2, 2) .. ' x ' .. EgtNumToString( BD.MAX_HEIGHT2, 2) .. ')'
|
||||
'oltre i limiti della macchina (' .. EgtNumToString( BeamData.MAX_WIDTH, 2) .. ' x ' .. EgtNumToString( BeamData.MAX_HEIGHT, 2) .. ') ' ..
|
||||
'e (' .. EgtNumToString( BeamData.MAX_WIDTH2, 2) .. ' x ' .. EgtNumToString( BeamData.MAX_HEIGHT2, 2) .. ')'
|
||||
EgtOutLog( sOut)
|
||||
EgtOutBox( sOut, 'Lavora Travi', 'WARNING')
|
||||
EgtDraw()
|
||||
@@ -226,9 +226,9 @@ local function MyProcessBeams()
|
||||
end
|
||||
|
||||
-- Verifico sezione barra non troppo piccola
|
||||
if dRawW < BD.MIN_WIDTH - 10 * GEO.EPS_SMALL or dRawH < BD.MIN_HEIGHT - 10 * GEO.EPS_SMALL then
|
||||
if dRawW < BeamData.MIN_WIDTH - 10 * GEO.EPS_SMALL or dRawH < BeamData.MIN_HEIGHT - 10 * GEO.EPS_SMALL then
|
||||
local sOut = 'Sezione (' .. EgtNumToString( dRawW, 2) .. ' x ' .. EgtNumToString( dRawH, 2) .. ') ' ..
|
||||
'sotto i limiti della macchina (' .. EgtNumToString( BD.MIN_WIDTH, 2) .. ' x ' .. EgtNumToString( BD.MIN_HEIGHT, 2) .. ')'
|
||||
'sotto i limiti della macchina (' .. EgtNumToString( BeamData.MIN_WIDTH, 2) .. ' x ' .. EgtNumToString( BeamData.MIN_HEIGHT, 2) .. ')'
|
||||
EgtOutLog( sOut)
|
||||
EgtOutBox( sOut, 'Lavora Travi', 'WARNING')
|
||||
EgtDraw()
|
||||
@@ -256,7 +256,7 @@ local function MyProcessBeams()
|
||||
end
|
||||
|
||||
-- Sistemo le travi nel grezzo
|
||||
local bOk, sErr = BE.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam)
|
||||
local bOk, sErr = BeamExec.ProcessBeams( dRawW, dRawH, dRawL, dOvmHead, dOvmMid, vBeam)
|
||||
if not bOk then
|
||||
EgtOutLog( sErr)
|
||||
EgtOutBox( sErr, 'Lavora Travi', 'ERROR')
|
||||
@@ -270,7 +270,7 @@ end
|
||||
-- *** Inserimento delle lavorazioni nelle travi ***
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local function MyProcessFeatures()
|
||||
local bOk, Stats = BE.ProcessFeatures()
|
||||
local bOk, Stats = BeamExec.ProcessFeatures()
|
||||
local nErrCnt = 0
|
||||
local nWarnCnt = 0
|
||||
local sOutput = ''
|
||||
|
||||
Reference in New Issue
Block a user