DataBeam :

- in BeamLib.GetNearestOrthoOpposite premio direzioni destra/sinistra (per risolvere problemi tagli doppi convessi)
- in lavorazione LapJoint migliorie e correzioni su svuotature e pulitura spigoli.
This commit is contained in:
DarioS
2021-07-02 08:58:42 +02:00
parent c356e92b8d
commit 5c42d2a033
3 changed files with 97 additions and 109 deletions
+6 -4
View File
@@ -1,4 +1,4 @@
-- BeamLib.lua by Egaltech s.r.l. 2021/06/27
-- BeamLib.lua by Egaltech s.r.l. 2021/07/01
-- Libreria globale per Travi
-- 2020/07/28 Corretto calcolo attacchi e uscite di lame per non uscire dalla faccia sotto.
-- 2020/08/18 Aggiunto a GetNearestParalOpposite e GetNearestOrthoOpposite parametro opzionale vtNorm.
@@ -11,6 +11,7 @@
-- 2021/03/22 Attacchi e uscite di tagli longitudinali da sotto con lama solo ortogonali.
-- 2021/04/27 Migliorati controlli per attacchi e uscite Tg con lama.
-- 2021/06/27 Aggiunta funzione GetOtherFaceElevation.
-- 2021/07/01 In GetNearestOrthoOpposite premio direzioni destra/sinistra.
-- Tabella per definizione modulo
local BeamLib = {}
@@ -305,9 +306,10 @@ function BeamLib.GetNearestOrthoOpposite( vtRef, vtNorm)
-- devo confrontare la componente orizzontale con quella verticale
local dHorSq = vtMyRef:getX() * vtMyRef:getX() + vtMyRef:getY() * vtMyRef:getY()
local dVertSq = vtMyRef:getZ() * vtMyRef:getZ()
-- se prevalente la componente orizzontale
if dHorSq >= dVertSq then
if abs( vtMyRef:getX()) > abs( vtMyRef:getY()) - GEO.EPS_SMALL then
-- se prevalente la componente orizzontale (con piccolo vantaggio)
if dHorSq >= 0.9 * dVertSq then
-- se prevale la componente destra/sinistra (con piccolo vantaggio)
if abs( vtMyRef:getX()) > 0.9 * abs( vtMyRef:getY()) then
if vtMyRef:getX() > -GEO.EPS_SMALL then
return MCH_MILL_FU.ORTHO_LEFT
else