- Aggiunta ricerca utensile anche per UUID
- In BCS piccola modifica in caso di TAG "Cutting" - Aggiunto parametro sStrategyName a TAILCUT e HEADCUT
This commit is contained in:
+25
-11
@@ -244,12 +244,24 @@ end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
-- funzione per verifica se l'utensile è presente tra gli utensili disponibili per la strategia
|
||||
local function IsToolInAvailableToolList( AvailableToolList, sToolName)
|
||||
local function IsToolInAvailableToolList( AvailableToolList, sTool)
|
||||
local bToolFound = false
|
||||
-- si cerca utensile con UUID se presente
|
||||
for nIndex = 1, #AvailableToolList do
|
||||
if sToolName == AvailableToolList[nIndex].sName then
|
||||
bToolFound = true
|
||||
break
|
||||
if AvailableToolList[nIndex].sUUID then
|
||||
if sTool.sUUID == AvailableToolList[nIndex].sUUID then
|
||||
bToolFound = true
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
-- se non trovato con UUID, allora ci cerca per nome
|
||||
for nIndex = 1, #AvailableToolList do
|
||||
if AvailableToolList[nIndex].sName then
|
||||
if sTool.sName == AvailableToolList[nIndex].sName then
|
||||
bToolFound = true
|
||||
break
|
||||
end
|
||||
end
|
||||
end
|
||||
return bToolFound
|
||||
@@ -270,7 +282,7 @@ function MachiningLib.FindMill( Proc, ToolSearchParameters)
|
||||
if ToolSearchParameters.sName and ToolSearchParameters.sName ~= TOOLS[i].sName then
|
||||
bIsToolCompatible = false
|
||||
-- se c'è una lista di utensili disponibili, si verifica che l'utensile attuale sia tra quelli
|
||||
elseif ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i].sName) then
|
||||
elseif ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i]) then
|
||||
bIsToolCompatible = false
|
||||
-- si cercano solo frese standard. Se utensile disegnato manualmente, si setta subito che è incompatibile
|
||||
elseif TOOLS[i].bIsProfiledTool then
|
||||
@@ -417,7 +429,7 @@ function MachiningLib.FindBlade( Proc, ToolSearchParameters)
|
||||
end
|
||||
|
||||
-- se c'è una lista di utensili disponibili, si verifica che l'utensile attuale sia tra quelli
|
||||
if ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i].sName) then
|
||||
if ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i]) then
|
||||
bIsToolCompatible = false
|
||||
end
|
||||
|
||||
@@ -494,7 +506,7 @@ function MachiningLib.FindDrill( Proc, ToolSearchParameters)
|
||||
elseif ToolSearchParameters.sName and ToolSearchParameters.sName ~= TOOLS[i].sName then
|
||||
bIsToolCompatible = false
|
||||
-- se c'è una lista di utensili disponibili, si verifica che l'utensile attuale sia tra quelli
|
||||
elseif ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i].sName) then
|
||||
elseif ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i]) then
|
||||
bIsToolCompatible = false
|
||||
-- controlli standard
|
||||
elseif TOOLS[i].dDiameter > ToolSearchParameters.dMaxToolDiameter then
|
||||
@@ -627,7 +639,7 @@ function MachiningLib.FindChainSaw( Proc, ToolSearchParameters)
|
||||
end
|
||||
|
||||
-- se c'è una lista di utensili disponibili, si verifica che l'utensile attuale sia tra quelli
|
||||
if ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i].sName) then
|
||||
if ToolSearchParameters.AvailableToolList and not IsToolInAvailableToolList( ToolSearchParameters.AvailableToolList, TOOLS[i]) then
|
||||
bIsToolCompatible = false
|
||||
end
|
||||
|
||||
@@ -687,9 +699,11 @@ function MachiningLib.GetAvailableToolList( Proc, sToolList, sType)
|
||||
-- se arriva da JSON o NGE
|
||||
else
|
||||
if sToolList and #sToolList > 0 then
|
||||
local List = EgtSplitString( sToolList)
|
||||
for i = 1, #List do
|
||||
table.insert( ToolList, { sName = List[i]})
|
||||
-- Lista definita come: "UUID_1,Nome_1;UUID_2,Nome_2;UUID_3,Nome_3"
|
||||
local Tool = EgtSplitString( sToolList, ';')
|
||||
for i = 1, #Tool do
|
||||
local ToolData = EgtSplitString( Tool[i])
|
||||
table.insert( ToolList, { sUUID = ToolData[1], sName = ToolData[2]} )
|
||||
end
|
||||
-- se non ci sono utensili forzati, annullo lista per cercare tra tutti quelli disponibili in modo automatico
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user