- modifiche parziali per scrittura ingombri su disposizione

This commit is contained in:
luca.mazzoleni
2025-05-20 11:16:40 +02:00
parent f947f761f1
commit 3198287dfe
3 changed files with 22 additions and 13 deletions
+17 -7
View File
@@ -104,18 +104,28 @@ function BeamLib.GetPartSplittingPoints( Part)
end
-------------------------------------------------------------------------------------------------------------
function BeamLib.AddPhaseWithRawParts( nRawId, OriXR, PosXR, dDeltaSucc)
function BeamLib.AddPhaseWithRawParts( Part, OriXR, PosXR, dDeltaSucc)
local idRaw = Part.idRaw
-- TODO scrittura ingombri sulla disposizione
-- deve arrivare un valore per ogni rotazione
-- deve essere spostato in configurazione macchina???
local nPhase = EgtGetCurrPhase()
local idDisp = EgtGetPhaseDisposition( nPhase)
EgtSetInfo( idDisp, 'HCING', Part.NotClampableLength.dNotClampableLengthHead)
EgtSetInfo( idDisp, 'TCING', Part.NotClampableLength.dNotClampableLengthTail)
EgtAddPhase()
-- si aprono i limiti tavola per permettere rotazioni di pezzi più larghi della tavola
EgtSetTableAreaOffset( 2000, 2000, 2000, 2000)
local dRawMove = 0
while nRawId do
EgtKeepRawPart( nRawId)
EgtMoveToCornerRawPart( nRawId, OriXR, PosXR)
EgtMoveRawPart( nRawId, Vector3d( - dRawMove, 0, 0))
while idRaw do
EgtKeepRawPart( idRaw)
EgtMoveToCornerRawPart( idRaw, OriXR, PosXR)
EgtMoveRawPart( idRaw, Vector3d( - dRawMove, 0, 0))
if dRawMove == 0 then dRawMove = dRawMove + dDeltaSucc end
dRawMove = dRawMove + EgtGetRawPartBBox( nRawId):getDimX()
nRawId = EgtGetNextRawPart( nRawId)
dRawMove = dRawMove + EgtGetRawPartBBox( idRaw):getDimX()
idRaw = EgtGetNextRawPart( idRaw)
end
end
+2 -6
View File
@@ -80,12 +80,8 @@ function FeatureLib.NeedTopologyFeature( Proc)
return true
elseif ID.IsBlockHaus( Proc) then
return true
elseif ID.IsRidgeLap( Proc) then
if Proc.nFct == 3 then
return false
else
return true
end
elseif ID.IsRidgeLap( Proc) and Proc.nFct ~= 3 then
return true
end
-- se feature non tra quelle sopra, riconoscimento topologico non necessario
+3
View File
@@ -979,6 +979,9 @@ function MachiningLib.AddOperations( vProc, Part, sRotation)
RESULT[MACHININGS[i].Proc.nIndexInResult].ChosenStrategy.sStatus = 'Not-Applicable'
RESULT[MACHININGS[i].Proc.nIndexInResult].ChosenStrategy.sApplyInfo = sErr
RESULT[MACHININGS[i].Proc.nIndexInResult].ChosenStrategy.nApplyError = nErr
else
-- TODO qui scrivere .NotClampableLength nella parte
end
RESULT[MACHININGS[i].Proc.nIndexInResult].ChosenStrategy.bIsApplyOk = bIsApplyOk