In ProcessCut angolo Z minimo ora gestito tramite costante da WallData CUT_VZ_MIN (default -0.5)
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
-- WProcessCut.lua by Egaltech s.r.l. 2020/11/25
|
||||
-- Gestione calcolo taglio di testa o longitudinale per Pareti
|
||||
-- 2023/07/26 Angolo Z minimo ora gestito tramite costante da WallData CUT_VZ_MIN (default sempre -0.5).
|
||||
|
||||
-- Tabella per definizione modulo
|
||||
local WPC = {}
|
||||
@@ -31,7 +32,7 @@ function WPC.Classify( Proc, b3Raw)
|
||||
if Proc.Fct ~= 1 then return false end
|
||||
-- controllo la normale
|
||||
local vtN = EgtSurfTmFacetNormVersor( Proc.Id, 0, GDB_ID.ROOT)
|
||||
if vtN:getZ() < - 0.5 then return false end
|
||||
if vtN:getZ() < ( WD.CUT_VZ_MIN or - 0.5) then return false end
|
||||
return true
|
||||
end
|
||||
|
||||
@@ -40,29 +41,29 @@ end
|
||||
-- return nFlip0, nFlip1
|
||||
function WPC.FlipClassify( Proc)
|
||||
-- verifico abbia una sola faccia
|
||||
if Proc.Fct ~= 1 then return 0, 0 end
|
||||
if Proc.Fct ~= 1 then return 0, 0 end
|
||||
-- controllo la normale
|
||||
local vtN = EgtSurfTmFacetNormVersor( Proc.Id, 0, GDB_ID.ROOT)
|
||||
local vtNZ = vtN:getZ()
|
||||
if vtNZ > - GEO.EPS_SMALL then
|
||||
nFlip0 = 100
|
||||
elseif vtNZ < -0.5 then
|
||||
elseif vtNZ < ( WD.CUT_VZ_MIN or - 0.5) then
|
||||
nFlip0 = 0
|
||||
else
|
||||
nFlip0 = 50
|
||||
end
|
||||
nFlip0 = 50
|
||||
end
|
||||
|
||||
if - vtNZ > - GEO.EPS_SMALL then
|
||||
nFlip1 = 100
|
||||
elseif - vtNZ < -0.5 then
|
||||
elseif - vtNZ < ( WD.CUT_VZ_MIN or - 0.5) then
|
||||
nFlip1 = 0
|
||||
else
|
||||
nFlip1 = 50
|
||||
end
|
||||
end
|
||||
|
||||
--nFlip0 = EgtIf( vtN:getZ() < -0.5, 0, 100)
|
||||
--nFlip1 = EgtIf( - vtN:getZ() < -0.5, 0, 100)
|
||||
return nFlip0, nFlip1
|
||||
return nFlip0, nFlip1
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user