From b60c76e64bad2d203defd339432996972e01b058 Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Wed, 28 Dec 2022 19:18:35 +0100 Subject: [PATCH] Feature/FindMirroredFeatures: - piccola correzione nel riconoscimento mortase specchiate --- LuaLibs/BeamExec.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/LuaLibs/BeamExec.lua b/LuaLibs/BeamExec.lua index d402a87..6f101f2 100644 --- a/LuaLibs/BeamExec.lua +++ b/LuaLibs/BeamExec.lua @@ -1402,18 +1402,18 @@ local function CheckMirrorDtMortise( Proc, ProcMirror, b3Raw, AuxId) local ptCenRaw = b3Raw:getCenter() -- controllo che il centro delle due mortase sia allineato e che queste siano equidistanti dalla mezzeria della trave if AreSameOrOppositeVectorApprox( vtExtr, Y_AX()) then - bIsMirror = vtDisplacement:getX() < 500 * GEO.EPS_SMALL and vtDisplacement:getZ() < 500 * GEO.EPS_SMALL and + bIsMirror = abs( vtDisplacement:getX()) < 500 * GEO.EPS_SMALL and abs( vtDisplacement:getZ()) < 500 * GEO.EPS_SMALL and ( abs( ptBC:getY() - ptCenRaw:getY()) - abs( ptBCMirror:getY() - ptCenRaw:getY())) < 500 * GEO.EPS_SMALL elseif AreSameOrOppositeVectorApprox( vtExtr, Z_AX()) then - bIsMirror = vtDisplacement:getX() < 500 * GEO.EPS_SMALL and vtDisplacement:getY() < 500 * GEO.EPS_SMALL and + bIsMirror = abs( vtDisplacement:getX()) < 500 * GEO.EPS_SMALL and abs( vtDisplacement:getY()) < 500 * GEO.EPS_SMALL and ( abs( ptBC:getZ() - ptCenRaw:getZ()) - abs( ptBCMirror:getZ() - ptCenRaw:getZ())) < 500 * GEO.EPS_SMALL end -- controllo che le dimensioni dei due box siano le stesse - bIsMirror = abs( b3DtMrt:getDimX() - b3DtMrtMirror:getDimX()) < 500 * GEO.EPS_SMALL and + bIsMirror = bIsMirror and abs( b3DtMrt:getDimX() - b3DtMrtMirror:getDimX()) < 500 * GEO.EPS_SMALL and abs( b3DtMrt:getDimY() - b3DtMrtMirror:getDimY()) < 500 * GEO.EPS_SMALL and abs( b3DtMrt:getDimZ() - b3DtMrtMirror:getDimZ()) < 500 * GEO.EPS_SMALL -- controllo che l'asse delle due mortase sia allineato - bIsMirror = AreSameVectorApprox( vtAx, vtAxMirror) + bIsMirror = bIsMirror and AreSameVectorApprox( vtAx, vtAxMirror) end return bIsMirror end