DataBean 3.1d3 :
- prime aggiunte per nuova gestione tipo robot di macchina con tre assi rotanti (Scm Oikos).
This commit is contained in:
@@ -883,6 +883,25 @@ function BeamLib.GetBlockedAxis( sMachining, sBlockedAxis, b3Raw, vtTool, vtOut)
|
||||
return ''
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function BeamLib.GetAuxDir( sMachining, sBlockedAxis, b3Raw, vtTool, vtOut)
|
||||
-- informazioni sull'utensile della lavorazione
|
||||
local nToolType, sHead
|
||||
if EgtMdbSetCurrMachining( sMachining) then
|
||||
local sTuuid = EgtMdbGetCurrMachiningParam( MCH_MP.TUUID)
|
||||
if EgtTdbSetCurrTool( EgtTdbGetToolFromUUID( sTuuid) or '') then
|
||||
nToolType = EgtTdbGetCurrToolParam( MCH_TP.TYPE)
|
||||
sHead = EgtTdbGetCurrToolParam( MCH_TP.HEAD)
|
||||
end
|
||||
end
|
||||
-- se presente funzione specifica nella macchina, la richiamo
|
||||
if BD.GetAuxDir then
|
||||
return BD.GetAuxDir( sHead, nToolType, sBlockedAxis, b3Raw, vtTool, vtOut)
|
||||
end
|
||||
-- niente
|
||||
return nil
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- Trova l'Ind (0 based) della faccia meglio orientata come l'asse vtAx. Restituisce anche vtN e ptC della faccia stessa. La faccia di indice (0 based) fctExclude non viene considerata nella ricerca.
|
||||
function BeamLib.FindFaceBestOrientedAsAxis( Proc, vtAx, fctExclude)
|
||||
|
||||
@@ -170,6 +170,12 @@ function MakeParallelOne( nSurfId, nFacet, sCutting, dSawDiam, nFaceUse, dVzLimD
|
||||
end
|
||||
local vtOut = EgtIf( vtN:getX() > 0, X_AX(), -X_AX())
|
||||
EgtSetMachiningParam( MCH_MP.BLOCKEDAXIS, BL.GetBlockedAxis( sCutting, 'perpendicular', b3Raw, vtTool, vtOut))
|
||||
local sAuxDir, sInitAngs = BL.GetAuxDir( sCutting, 'perpendicular', b3Raw, vtTool, vtOut)
|
||||
if sAuxDir then
|
||||
sNotes = EgtSetValInNotes( sNotes, 'VtAuxDir', sAuxDir)
|
||||
EgtSetMachiningParam( MCH_MP.INITANGS, sInitAngs)
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.STD)
|
||||
end
|
||||
-- eventuali note
|
||||
if ( sLeadInOutType == 'PerpendicularOutraw') then
|
||||
sNotes = EgtSetValInNotes( sNotes, 'OutRaw', 3)
|
||||
@@ -631,6 +637,12 @@ function FacesBySaw.MakeOne( nSurfId, nFacet, sCutting, dSawDiam, Par5, dVzLimDw
|
||||
-- imposto angolo 3° asse rot
|
||||
local sBlockedAxis = EgtIf( bMaximizeVerticalDepth, 'parallel', 'perpendicular')
|
||||
EgtSetMachiningParam( MCH_MP.BLOCKEDAXIS, BL.GetBlockedAxis( sCutting, sBlockedAxis, b3Raw, vtN, vtOrthO))
|
||||
local sAuxDir, sInitAngs = BL.GetAuxDir( sCutting, sBlockedAxis, b3Raw, vtN, vtOrthO)
|
||||
if sAuxDir then
|
||||
sNotes = EgtSetValInNotes( sNotes, 'VtAuxDir', sAuxDir)
|
||||
EgtSetMachiningParam( MCH_MP.INITANGS, sInitAngs)
|
||||
EgtSetMachiningParam( MCH_MP.SCC, MCH_SCC.STD)
|
||||
end
|
||||
-- eventuali note
|
||||
if ( sLeadInOutType == 'PerpendicularOutraw') then
|
||||
sNotes = EgtSetValInNotes( sNotes, 'OutRaw', 3)
|
||||
|
||||
+1
-1
@@ -2,5 +2,5 @@
|
||||
-- Gestione della versione di Beam
|
||||
|
||||
NAME = 'Beam'
|
||||
VERSION = '3.1d2'
|
||||
VERSION = '3.1d3'
|
||||
MIN_EXE = '3.1b1'
|
||||
|
||||
Reference in New Issue
Block a user