DataBeam :

- in LapJoint migliorata gestione tagli con lama quando 2 facce
- in LapJoint tolto controllo volume per caso 2 facce con fresa
- in Mortise si recupera la dimensione minima per scegliere l'utensile adeguato.
This commit is contained in:
Dario Sassi
2019-11-11 07:36:37 +00:00
parent 9be8d4b1b7
commit 6aac5da9b6
2 changed files with 31 additions and 14 deletions
+8 -5
View File
@@ -1,4 +1,4 @@
-- ProcessMortise.lua by Egaltech s.r.l. 2019/10/08
-- ProcessMortise.lua by Egaltech s.r.l. 2019/11/10
-- Gestione calcolo mortase per Travi
-- Tabella per definizione modulo
@@ -54,23 +54,26 @@ function ProcessMortise.Make( Proc, nPhase, nRawId, nPartId)
EgtSetInfo( AuxId, 'OPEN', nCount)
end
-- recupero i dati del bottom
local ptC, vtN = EgtSurfTmFacetCenter( Proc.Id, 0, GDB_ID.ROOT)
local frMor, dL, dW = EgtSurfTmFacetMinAreaRectangle( Proc.Id, 0, GDB_ID.ROOT)
local ptC = frMor:getOrigin()
local vtN = frMor:getVersZ()
EgtOutLog( 'ptC=' .. tostring( ptC) ..' vtN=' .. tostring( vtN), 3)
-- verifico che la mortasa non sia orientata verso il basso (-5 deg)
-- verifico che la mortasa non sia orientata verso il basso (limite -5 deg)
if vtN:getZ() < - 0.1 then
local sErr = 'Error on process ' .. tostring( Proc.Id) .. ' Mortise from bottom impossible'
EgtOutLog( sErr)
return false, sErr
end
-- determino altezza della mortasa
local frMor = Frame3d( ptC, vtN)
local b3Mor = EgtGetBBoxRef( Proc.Id, GDB_BB.STANDARD, frMor)
local dMorH = b3Mor:getDimZ()
-- elevazione del punto centro
local _, dCenElev = BL.GetPointDirDepth( nPartId, ptC, vtN)
dMorH = max( dMorH, dCenElev or 0)
-- determino larghezza della mortasa
if dL < dW then dL, dW = dW, dL end
-- recupero la lavorazione
local sPocketing = ML.FindPocketing( 'Pocket', 30)
local sPocketing = ML.FindPocketing( 'Pocket', dW)
if not sPocketing then
local sErr = 'Error on process ' .. tostring( Proc.Id) .. ' pocketing not found in library'
EgtOutLog( sErr)