DataBeam :

- aggiunta gestione smussi su tagli coincidenti con testa e coda della trave
- correzione nei tagli su pezzi grandi (lato di accesso e dicecut)
- correzione in LapJoint per riconoscimento caso 3facce con lavorazione speciale.
This commit is contained in:
Dario Sassi
2020-06-17 10:29:59 +00:00
parent ce26f4785a
commit bcd393cfb2
6 changed files with 334 additions and 39 deletions
+6 -20
View File
@@ -1,4 +1,4 @@
-- ProcessLapJoint.lua by Egaltech s.r.l. 2020/06/06
-- ProcessLapJoint.lua by Egaltech s.r.l. 2020/06/16
-- Gestione calcolo mezzo-legno per Travi
-- 2019/10/08 Agg. gestione OpenPocket.
@@ -2891,25 +2891,11 @@ local function MakeMoreFaces( Proc, nPhase, nRawId, nPartId, bSinglePart)
-- altrimenti lavoro con svuotatura
else
local bSpecial3faces = false
-- verifico se sono nel caso in cui la faccia esclusa ha elevazione più alta
if not bIsU and bIsL and Proc.Fct <= 3 and nFacInd ~= 0 and nFacInd2 ~= 0 then
-- verifico se l'elevazione della faccia esclusa è maggiore dell'elevazione delle altre due facce
local nFaceMaxElev = 0
if Proc.Fct == 3 then
for i = 1, Proc.Fct do
if (i-1) ~= nFacInd and (i-1) ~= nFacInd2 then
nFaceMaxElev = (i-1)
end
end
end
local rfFac0 = EgtSurfTmFacetMinAreaRectangle( Proc.Id, nFaceMaxElev, GDB_ID.ROOT)
-- ottengo il box con la normale della faccia 0
local bBoxF0 = EgtGetBBoxRef( Proc.Id, GDB_BB.STANDARD, rfFac0)
local dElevF0 = bBoxF0:getDimZ()
-- se effettivamente l'elevazione della faccia esclusa è maggiore delle altre elevazioni segno il flag per le 3 facce speciali
if dElevF0 > dFacElev and dElevF0 > dFacElev2 then
bSpecial3faces = true
end
-- verifico se lavorando la faccia principale rimane esclusa molta sezione trasversale complessiva della feature (da box)
local rfFac, dH, dV = EgtSurfTmFacetMinAreaRectangle( Proc.Id, nFacInd, GDB_ID.ROOT)
local bBoxF = EgtGetBBoxRef( Proc.Id, GDB_BB.STANDARD, rfFac)
if dH * dV < 0.9 * ( bBoxF:getDimX() * bBoxF:getDimY()) then
bSpecial3faces = true
end
-- se riconosciuta gestione 3 facce
-- e limitata per ora alla feature 20