- in FACEBYBLADE migliorie ai tagli

- in STR0012 implementata funzione generale per verifica problemi pinzaggio
This commit is contained in:
luca.mazzoleni
2026-01-19 09:15:40 +01:00
parent 583aa789c4
commit fc7432a97a
3 changed files with 23 additions and 20 deletions
+21 -16
View File
@@ -293,28 +293,19 @@ function FACEBYBLADE.Make( Proc, Part, FaceToMachine, EdgeToMachine, OptionalPar
-- parametri della lavorazione
-- profondità (parametro DEPTH)
Cutting.sDepth = sDepth
Cutting.sDepth = sDepth
-- inizio e fine aperti o chiusi
Cutting.bIsStartClosed = not EdgeToMachine.bIsStartOpen
Cutting.bIsEndClosed = not EdgeToMachine.bIsEndOpen
Cutting.bIsStartClosed = not EdgeToMachine.bIsStartOpen
Cutting.bIsEndClosed = not EdgeToMachine.bIsEndOpen
-- se dicing, lato di lavoro e inversione per avere taglio sempre verso l'alto
if bIsDicing and ( Cutting.vtEdgeDirection:getZ() > 100 * GEO.EPS_SMALL) then
Cutting.nWorkside = MCH_MILL_WS.LEFT
Cutting.bInvert = false
elseif bIsDicing and ( Cutting.vtEdgeDirection:getZ() < -100 * GEO.EPS_SMALL) then
-- si settano lato di lavoro e inversione per avere concordanza
if TOOLS[Cutting.nToolIndex].bIsCCW then
Cutting.nWorkside = MCH_MILL_WS.RIGHT
Cutting.bInvert = true
-- altrimenti comanda la rotazione
else
if TOOLS[Cutting.nToolIndex].bIsCCW then
Cutting.nWorkside = MCH_MILL_WS.RIGHT
Cutting.bInvert = true
else
Cutting.nWorkside = MCH_MILL_WS.LEFT
Cutting.bInvert = false
end
Cutting.nWorkside = MCH_MILL_WS.LEFT
Cutting.bInvert = false
end
-- ToolInvert
@@ -323,6 +314,20 @@ function FACEBYBLADE.Make( Proc, Part, FaceToMachine, EdgeToMachine, OptionalPar
Cutting.bInvert = not Cutting.bInvert
end
-- TODO al momento commentato per trovare i casi in cui nei riposizionamenti scende sul pezzo; poi valutare se lasciare o togliere
-- se dicing, lato di lavoro e inversione per avere taglio sempre verso l'alto
-- if bIsDicing
-- and ( Cutting.bInvert and Cutting.vtEdgeDirection:getZ() > 100 * GEO.EPS_SMALL)
-- or ( ( not Cutting.bInvert) and Cutting.vtEdgeDirection:getZ() < -100 * GEO.EPS_SMALL) then
-- Cutting.bInvert = not Cutting.bInvert
-- if Cutting.nWorkside == MCH_MILL_WS.LEFT then
-- Cutting.nWorkside = MCH_MILL_WS.RIGHT
-- else
-- Cutting.nWorkside = MCH_MILL_WS.LEFT
-- end
-- end
-- analisi fattibilità lavorazione dal lato opposto
if OppositeToolDirectionMode ~= 'Disabled' then