- la Topology tunnel chiuso diventa pocket

- piccole correzioni alla raccolta features in doppio in WallExec
- correzione in LApJoint per evitare di lavorare groove completamente affondate nel grezzo
This commit is contained in:
luca.mazzoleni
2023-09-07 12:23:27 +02:00
parent 61e5ce6359
commit 6a2a87b91f
3 changed files with 15 additions and 15 deletions
+13 -13
View File
@@ -686,15 +686,15 @@ local function SortOperationsForMirror( nOper1, nOper2)
local ptMax2 = EgtGetInfo( nClId2, 'MMAX', 'p')
local b3Oper2 = BBox3d( ptMin2, ptMax2)
-- recupero i centri dei box lungo X e Y
local nOper1X = b3Oper1:getCenter():getX()
local nOper1Y = b3Oper1:getCenter():getY()
local nOper2X = b3Oper2:getCenter():getX()
local nOper2Y = b3Oper2:getCenter():getY()
local dOper1X = b3Oper1:getCenter():getX()
local dOper1Y = b3Oper1:getCenter():getY()
local dOper2X = b3Oper2:getCenter():getX()
local dOper2Y = b3Oper2:getCenter():getY()
-- confronto per ordinamento
if nOper1X < nOper2X - TOL then
if dOper1X < dOper2X - TOL then
return true
elseif abs( nOper1X - nOper2X) < TOL then
if nOper1Y < nOper2Y - TOL then
elseif abs( dOper1X - dOper2X) < TOL then
if dOper1Y < dOper2Y - TOL then
return true
end
end
@@ -720,7 +720,7 @@ local function SetMirroredFeatures( vProc, b3Raw)
( Proc.TopologyLongName == 'Groove-Through-RightAngles-Parallel-3' and ( not Proc.AffectedFaces.Bottom and Proc.AffectedFaces.Left and Proc.AffectedFaces.Right)) or
( Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-3') or
( Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-4') or
( Proc.TopologyLongName == 'Tunnel-Blind-RightAngles-Parallel-5' and not Proc.AffectedFaces.Bottom)
( Proc.TopologyLongName == 'Pocket-Blind-RightAngles-Parallel-5' and not Proc.AffectedFaces.Bottom)
) then
table.insert( vPockets, Proc)
-- raccolgo i fori verticali e aperti verso Z+
@@ -765,7 +765,7 @@ local function SetMirroredFeatures( vProc, b3Raw)
Proc.TopologyLongName == 'Groove-Through-RightAngles-Parallel-3' or
Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-3' or
Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-4' or
Proc.TopologyLongName == 'Tunnel-Blind-RightAngles-Parallel-5'
Proc.TopologyLongName == 'Pocket-Blind-RightAngles-Parallel-5'
)
-- se di fianco, determino se è l'ultima parte prima della fine del grezzo
local bIsFeatureOnEdge, bIsMirrorFeatureOnEdge = false, false
@@ -794,7 +794,7 @@ local function SetMirroredFeatures( vProc, b3Raw)
Proc.TopologyLongName == 'Groove-Through-RightAngles-Parallel-3' and Proc.AffectedFaces.Top and ProcMirror.AffectedFaces.Top or
Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-4' and Proc.AffectedFaces.Top and Proc.AffectedFaces.Left and ProcMirror.AffectedFaces.Top and ProcMirror.AffectedFaces.Left or
Proc.TopologyLongName == 'Groove-Blind-RightAngles-Parallel-4' and Proc.AffectedFaces.Top and Proc.AffectedFaces.Right and ProcMirror.AffectedFaces.Top and ProcMirror.AffectedFaces.Right or
Proc.TopologyLongName == 'Tunnel-Blind-RightAngles-Parallel-5' and Proc.AffectedFaces.Top and ProcMirror.AffectedFaces.Top
Proc.TopologyLongName == 'Pocket-Blind-RightAngles-Parallel-5' and Proc.AffectedFaces.Top and ProcMirror.AffectedFaces.Top
-- box delle stesse dimensioni
local bIsMirrorFeatureSameDimension = abs( b3Proc:getDimX() - b3ProcMirror:getDimX()) < ( WD.DOUBLE_HEAD_POCKET_TOLERANCE or 0.5) and
abs( b3Proc:getDimY() - b3ProcMirror:getDimY()) < ( WD.DOUBLE_HEAD_POCKET_TOLERANCE or 0.5) and
@@ -913,7 +913,7 @@ local function SetMirroredOperations()
EgtSetCurrMachining( nOperId)
local sUserNotes = EgtGetMachiningParam( MCH_MP.USERNOTES)
local bIsDouble = ( EgtGetValInNotes( sUserNotes, 'DOUBLE', 'i') or 0) > 0
if not bIsDouble and EgtGetOperationType( nOperId) == MCH_OY.MILLING then
if EgtGetOperationMode( nOperId) and not bIsDouble and EgtGetOperationType( nOperId) == MCH_OY.MILLING then
table.insert( vMillings, nOperId)
end
nOperId = EgtGetNextOperation( nOperId)
@@ -939,7 +939,7 @@ local function SetMirroredOperations()
-- box percorso lavorazione master
local b3Operation = BBox3d( ptMin, ptMax)
-- lavorazione master adatta alla specchiatura
local bIsMachiningOk = EgtGetOperationMode( nOperIdMaster) and WM.IsMachiningOkForDouble( sMachining)
local bIsMachiningOk = WM.IsMachiningOkForDouble( sMachining)
if bIsMachiningOk then
-- recupero la distanza tra centro di rotazione e punta dell'utensile per aumentare o ridurre l'interasse minimo
local dTipToPivot, dTipToPivotDouble = 999, 999
@@ -981,7 +981,7 @@ local function SetMirroredOperations()
local sOriginalMirrorToolName = EgtGetMachiningParam( MCH_MP.TOOL)
local bIsOriginalMirrorToolSameSize = WM.IsToolDoubleOk( sToolMasterName, sOriginalMirrorToolName)
-- lavorazione mirror adatta alla specchiatura
local bIsMirrorMachiningOk = EgtGetOperationMode( nOperIdMirror) and nOperIdMaster ~= nOperIdMirror
local bIsMirrorMachiningOk = nOperIdMaster ~= nOperIdMirror
-- lavorazione master più a sinistra
local bIsMirrorSideOk = ( b3OperationMirror:getCenter():getY() - b3Operation:getCenter():getY()) > ( WD.DOUBLE_HEAD_POCKET_TOLERANCE or 0.5)
-- box delle stesse dimensioni