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
+3 -2
View File
@@ -369,8 +369,9 @@ end
-- bGetOrtoPlanes*: se voglio calcolare i piani ortogonali al piano passato (se non esistono altre superfici può essere omesso)
-- ptCBond*: il punto centrale della superfice limitante (se non esistono altre superfici può essere omesso)
-- vtNBond*: il versore normale della superfice limitante (se non esistono altre superfici può essere omesso)
-- dOrthoMaxDim : massima profondità taglio se faccia singola perpendicolare facce laterali trave
----------------------------------------------------------------------------------------------------------------------------------------------------
function DiceCut.GetDice( nParent, BBoxRawPart, ptCPlanes, vtNPlanes, bGetOrtoPlanes, ptCBond, vtNBond)
function DiceCut.GetDice( nParent, BBoxRawPart, ptCPlanes, vtNPlanes, bGetOrtoPlanes, ptCBond, vtNBond, dOrthoMaxDim)
local dTolerance = 0 -- distanza di sicurezza per i tagli ortogonali
local OffsetP = BD.MAX_DIM_DICE -- distanza tra i piani paralleli
@@ -395,7 +396,7 @@ function DiceCut.GetDice( nParent, BBoxRawPart, ptCPlanes, vtNPlanes, bGetOrtoPl
-- se normali senza componenti in Y con faccia quasi verticale e trave non alta, uso per offset i limiti dei tagli di testa e coda
if abs( vtNPlanes:getY()) < 0.1 and vtNPlanes:getZ() < 0.7071 and ( not vtNBond or abs( vtNBond:getY()) < 0.1) and BBoxRawPart:getDimZ() < BD.MIN_DIM_HBEAM then
OffsetO = BD.MAX_DIM_HTCUT
OffsetO = dOrthoMaxDim or BD.MAX_DIM_HTCUT
end
-- aggiungo piccolo extra agli offset