- in WallExec -> squadratura aggiunta funzione AddSquaring che verifica e aggiunge la squadratura in base al caso specifico
- in Squaring aggiunte funzioni per ricerca e controllo correttezza utensili in base al caso specifico
This commit is contained in:
+37
-9
@@ -1079,10 +1079,39 @@ local function SetMirroredOperations()
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
local function AddSquaring( sSquaringTool, RawPart, nFirstOperationId)
|
||||
local function AddSquaring( sSquaringTool, RawPart)
|
||||
local dMachiningDepth = RawPart.b3:getDimZ()
|
||||
local bOk
|
||||
local sMsg = ''
|
||||
local SquaringTools = {}
|
||||
local Geometry = {}
|
||||
local OperationsId = {}
|
||||
|
||||
SquaringTools = Squaring.GetTools()
|
||||
bOk = Squaring.AreToolsOk( sSquaringTool, SquaringTools, dMachiningDepth)
|
||||
if not bOk then
|
||||
sMsg = 'Squaring failed: cannot find matching tools'
|
||||
return false, sMsg
|
||||
end
|
||||
|
||||
bOk, Geometry = Squaring.CreateGeometry( sSquaringTool, RawPart, SquaringTools)
|
||||
if not bOk then
|
||||
sMsg = 'Squaring failed: cannot create geometry'
|
||||
return false, sMsg
|
||||
end
|
||||
|
||||
bOk, sMsg, OperationsId = Squaring.AddMachinings( sSquaringTool, SquaringTools, Geometry)
|
||||
if not bOk then
|
||||
for i = 1, #OperationsId do
|
||||
EgtRemoveOperation( i)
|
||||
end
|
||||
sMsg = 'Squaring failed: cannot apply machinings'
|
||||
return false, sMsg
|
||||
end
|
||||
|
||||
Squaring.AddScrapRemoval()
|
||||
|
||||
return true, sMsg
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
@@ -1237,29 +1266,28 @@ function WallExec.ProcessFeatures()
|
||||
-- squadratura, se richiesta
|
||||
if WD.SQUARING_TYPE and WD.SQUARING_TYPE > 0 then
|
||||
local RawPart = { nId = nRawId, b3 = b3Raw}
|
||||
local nFirstOperationId = EgtGetNextOperation( EgtGetPhaseDisposition( nPhase))
|
||||
local bOk, sMsg
|
||||
|
||||
if WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 1 then
|
||||
bOk, sMsg = AddSquaring( 'DoubleDiskmill', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'DoubleDiskmill', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 2) then
|
||||
bOk, sMsg = AddSquaring( 'DoubleDiskmillAndBlade', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'DoubleDiskmillAndBlade', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 3) then
|
||||
bOk, sMsg = AddSquaring( 'DoubleBlade', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'DoubleBlade', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 4) then
|
||||
bOk, sMsg = AddSquaring( 'Diskmill', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'Diskmill', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 5) then
|
||||
bOk, sMsg = AddSquaring( 'Blade', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'Blade', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 6) then
|
||||
bOk, sMsg = AddSquaring( 'DoubleMill', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'DoubleMill', RawPart)
|
||||
end
|
||||
if not bOk and ( WD.SQUARING_TOOL == 0 or WD.SQUARING_TOOL == 7) then
|
||||
bOk, sMsg = AddSquaring( 'Mill', RawPart, nFirstOperationId)
|
||||
bOk, sMsg = AddSquaring( 'Mill', RawPart)
|
||||
end
|
||||
|
||||
if not bOk then
|
||||
|
||||
Reference in New Issue
Block a user