From 3413e43f62580fd07ec724d4a7b4258f1ff11ecd Mon Sep 17 00:00:00 2001 From: "luca.mazzoleni" Date: Thu, 11 Jun 2026 18:29:32 +0200 Subject: [PATCH] - update BeamDataNew --- Beam/BeamDataNew.lua | 90 ++------------------------------------------ 1 file changed, 3 insertions(+), 87 deletions(-) diff --git a/Beam/BeamDataNew.lua b/Beam/BeamDataNew.lua index 6457d03..f89a014 100644 --- a/Beam/BeamDataNew.lua +++ b/Beam/BeamDataNew.lua @@ -123,9 +123,9 @@ local function GetBlockedAxis( sHead, nToolType, sBlockedAxis) elseif nToolType == MCH_TY.MORTISE_STD then if sHead == 'H3' then if sBlockedAxis == 'parallel' then - return 'A=0' + return 'A1=0' elseif sBlockedAxis == 'perpendicular' then - return 'A=90' + return 'A1=90' end else return '' @@ -175,87 +175,6 @@ local function GetSCC( vtToolDirection, vtEdgeDirection, vtNFace) return nSCC end ---------------------------------------------------------------------- --- sAxis può essere AB, C, Z; restituisce direzioni, profondità di estrusione e punti per il controllo precollisione -local function GetPreCollisionData( sAxis, vtC, vtHead) - - local PreCollisionData = {} - - -- Pivot uguale per tutti; non c'è aggregato quindi non dipende da SCC - -- riferimento vtPivot --- - vtHead (Z): asse rotazione utensile, guarda il mandrino --- - vtToolSCC (X): direzione asse C o aggregato --- - vtEdge (Y): direzione lato, verso in base a X e Z --- - punto di applicazione: naso mandrino o aggregato - PreCollisionData.vtMovePivot = Vector3d( 0, 0, -MldeParameters.SawOffs) - - -- carro Z - if sAxis == 'Z' then - - PreCollisionData.Directions = { vtDirectionX = X_AX(), vtDirectionY = Z_AX(), vtDirectionZ = -Y_AX()} - PreCollisionData.bSurfTmByRevolve = true - PreCollisionData.Points = { - Point3d( 0, 523, 0), - Point3d( 109.556, 523, 0), - Point3d( 109.556, 583, 0), - Point3d( 143.113, 583, 0), - Point3d( 143.113, 2533, 0), - Point3d( 0, 2533, 0) - } - - -- motore (asse A o B) - elseif sAxis == 'AB' then - - PreCollisionData.Directions = { vtDirectionX = vtC, vtDirectionY = -vtHead, vtDirectionZ = vtC ^ -vtHead} - PreCollisionData.dExtrusionDepth = 180 - PreCollisionData.Points = { - Point3d( 100,-122,0), - Point3d( 100, -232.5, 0), - Point3d( -90, -232.5, 0), - Point3d( -90, 204.505, 0), - Point3d( -77.5, 216.55, 0), - Point3d( -89, 234.05, 0), - Point3d( -89, 242.55, 0), - Point3d( 89, 242.55, 0), - Point3d( 89, 234.05, 0), - Point3d( 77.5, 216.55, 0), - Point3d( 90, 204.505, 0), - Point3d( 90, 93, 0), - Point3d( 125, 93, 0), - Point3d( 125, -122, 0), - Point3d( 100, -122, 0) - } - - -- asse C - elseif sAxis == 'C' then - - PreCollisionData.Directions = { vtDirectionX = vtC, vtDirectionY = Z_AX(), vtDirectionZ = vtC ^ Z_AX()} - PreCollisionData.dExtrusionDepth = 200 - PreCollisionData.Points = { - Point3d( 125, -92.752, 0), - Point3d( 203.5, -92.752, 0), - Point3d( 203.5, -100, 0), - Point3d( 400, -100, 0), - Point3d( 450, -50, 0), - Point3d( 450, 400, 0), - Point3d( 360, 490, 0), - Point3d( 170, 490, 0), - Point3d( 170, 523, 0), - Point3d( EgtIf( MldeParameters.NewTopC, -110, -175), 523, 0), - Point3d( EgtIf( MldeParameters.NewTopC, -110, -175), 400, 0), - Point3d( 230.858, 400, 0), - Point3d( 325, 305.858, 0), - Point3d( 325, 146, 0), - Point3d( 203.5, 146, 0), - Point3d( 203.5, 93, 0), - Point3d( 125, 93, 0), - Point3d( 125, -92.752, 0) - } - end - - return PreCollisionData -end - --------------------------------------------------------------------- local function GetSetupInfo( sHead) local SetupInfo = {} @@ -265,21 +184,18 @@ local function GetSetupInfo( sHead) SetupInfo.dCAxisEncumbrance = 180 SetupInfo.dCAxisSideEncumbrance = 200 SetupInfo.bToolOnAggregate = false - SetupInfo.vtRotationAxisC = EgtGetAxisDir( 'C') - SetupInfo.vtRotationAxisAB = EgtGetAxisDir( 'B') -- testa 5 assi da sopra if sHead == 'H1' then SetupInfo.HeadType = { bTop = true, bBottom = false} SetupInfo.PreferredSide = {} SetupInfo.dPivot = MldeParameters.MillOffs -- per uscita fresa, diverso da uscita lama - SetupInfo.GetMinNz = function() return sin( -45) end + SetupInfo.GetMinNz = function() return sin( -25) end -- lama su testa 5 assi da sopra elseif sHead == 'H2' then SetupInfo.HeadType = { bTop = true, bBottom = false} SetupInfo.PreferredSide = {} SetupInfo.GetMinNz = function() return sin( -45) end - SetupInfo.GetPreCollisionData = GetPreCollisionData SetupInfo.GetSCC = GetSCC -- motosega elseif sHead == 'H3' then