DataBeam :

- migliorie varie.
This commit is contained in:
Dario Sassi
2019-08-07 18:30:58 +00:00
parent e865cc6726
commit 0bf374a53f
5 changed files with 46 additions and 19 deletions
+10 -8
View File
@@ -1,4 +1,4 @@
-- DiceCut.lua by Egaltech s.r.l. 2019/07/01
-- DiceCut.lua by Egaltech s.r.l. 2019/08/07
-- Gestione dei piano paralleli nei tagli lunghi
-- Tabella per definizione modulo
@@ -359,15 +359,17 @@ function DiceCut.GetDice( nParent, BBoxRawPart, ptCPlanes, vtNPlanes, bGetOrtoPl
end
-- calcolo la direzione dei piani ortogonali
local vtO = VectorFromUprightOrtho( vtNInner)
vtO:rotate( vtNInner, 90)
-- se diretto troppo ortogonalmente all'asse trave e taglio non da sotto, lo ruoto ulteriormente
if abs( vtO:getY()) > abs( vtO:getX()) and vtNInner:getZ() > -0.5 then
if vtNInner:getZ() > -0.05 or vtNInner:getZ() < -0.5 then
vtO:rotate( vtNInner, 90)
else
if ptCInner:getX() > BBoxRawPart:getCenter():getX() then
if vtO:getX() < 0 then vtO = - vtO end
-- se diretto troppo ortogonalmente all'asse trave e taglio non da sotto, lo ruoto ulteriormente
if abs( vtO:getY()) > abs( vtO:getX()) and vtNInner:getZ() > -0.5 then
vtO:rotate( vtNInner, 90)
else
if vtO:getX() > 0 then vtO = - vtO end
if ptCInner:getX() > BBoxRawPart:getCenter():getX() then
if vtO:getX() < 0 then vtO = - vtO end
else
if vtO:getX() > 0 then vtO = - vtO end
end
end
end
-- calcolo le dimensioni dell'offset e se dove posizionare la prima faccia: