- per lama implementata verifica finecorsa (PreSimulationLib, MachiningLib) con funzione Machine Calc

- nei timer si logga il tempo di apertura Json
This commit is contained in:
luca.mazzoleni
2025-12-22 11:19:03 +01:00
parent 568de09954
commit f1805625d3
6 changed files with 120 additions and 128 deletions
+9 -7
View File
@@ -327,11 +327,13 @@ local function TestEngagement( sBladeEngagement, Parameters, OptionalParameters)
Tool = Tool
}
local CheckOutOfStrokeOptionalParameters = {}
-- check punti lavorazione
-- lavorazione oltre le corse: non fattibile
local bOutOfStroke = PreSimulationLib.CheckOutOfStroke( CheckOutOfStrokeParameters)
local PointsToCheck = {
Edge.ptStart + Edge.vtN * ( Edge.dElevation - dDepthToMachine),
Edge.ptEnd + Edge.vtN * ( Edge.dElevation - dDepthToMachine)
}
local bOutOfStroke = PreSimulationLib.CheckOutOfStroke( PointsToCheck, CheckOutOfStrokeParameters)
if bOutOfStroke then
return false
end
@@ -347,8 +349,8 @@ local function TestEngagement( sBladeEngagement, Parameters, OptionalParameters)
-- attacco perpendicolare
local PerpendicularLeadInOut = LeadInOutLib.CalculateLeadInOut( 'Perpendicular', Parameters)
-- check extracorsa nei punti di attacco
CheckOutOfStrokeOptionalParameters.PointsToCheck = { PerpendicularLeadInOut.LeadIn.ptPoint, PerpendicularLeadInOut.LeadOut.ptPoint}
local bOutOfStrokePerpendicular = PreSimulationLib.CheckOutOfStroke( CheckOutOfStrokeParameters, CheckOutOfStrokeOptionalParameters)
PointsToCheck = { PerpendicularLeadInOut.LeadIn.ptPoint, PerpendicularLeadInOut.LeadOut.ptPoint}
local bOutOfStrokePerpendicular = PreSimulationLib.CheckOutOfStroke( PointsToCheck, CheckOutOfStrokeParameters)
-- se non è in extracorsa si aggiunge come attacco possibile
if not bOutOfStrokePerpendicular then
LeadInOut.Perpendicular = PerpendicularLeadInOut
@@ -367,8 +369,8 @@ local function TestEngagement( sBladeEngagement, Parameters, OptionalParameters)
-- attacco tangenziale
local TangentLeadInOut = LeadInOutLib.CalculateLeadInOut( 'Tangent', Parameters)
-- check extracorsa nei punti di attacco
CheckOutOfStrokeOptionalParameters.PointsToCheck = { TangentLeadInOut.LeadIn.ptPoint, TangentLeadInOut.LeadOut.ptPoint}
local bOutOfStrokeTangent = PreSimulationLib.CheckOutOfStroke( CheckOutOfStrokeParameters, CheckOutOfStrokeOptionalParameters)
PointsToCheck = { TangentLeadInOut.LeadIn.ptPoint, TangentLeadInOut.LeadOut.ptPoint}
local bOutOfStrokeTangent = PreSimulationLib.CheckOutOfStroke( PointsToCheck, CheckOutOfStrokeParameters)
-- attacco tangenziale non in extracorsa: si verifica se è in collisione
if not bOutOfStrokeTangent then
local bCollisionFoundTangent, bMoveAfterSplitTangent = PreSimulationLib.CheckCollision( sBladeEngagement, CheckCollisionParameters, CheckCollisionOptionalParameters) -- TODO passare punti custom attacco tangenziale