Piccole modifiche per demo
This commit is contained in:
+17
-17
@@ -865,41 +865,41 @@ end
|
||||
-- TODO funziona solo con attacco perpendicolare - da aggiungere gestione in caso di attacco tangenziale
|
||||
function MachiningLib.AddMachinings( Proc, Machining, AuxiliaryData)
|
||||
local bMachiningAdded = false
|
||||
local NewAuxiliaryData = {}
|
||||
|
||||
-- se esistono i dati ausiliari li copio in locale perchè il parametro è una tabella per riferimento
|
||||
if AuxiliaryData then
|
||||
NewAuxiliaryData = BeamLib.TableCopyDeep( AuxiliaryData)
|
||||
end
|
||||
|
||||
if Machining.CloneStepsRadial and Machining.CloneStepsRadial.nCount > 1 then
|
||||
if not AuxiliaryData then
|
||||
AuxiliaryData = {}
|
||||
end
|
||||
AuxiliaryData.Clones = {}
|
||||
NewAuxiliaryData.Clones = {}
|
||||
|
||||
local dOriginalRadialOffset = Machining.dRadialOffset
|
||||
local dOriginalLeadInPerpDistance = Machining.LeadIn.dPerpDistance
|
||||
local dOriginalLeadOutPerpDistance = Machining.LeadOut.dPerpDistance
|
||||
for i = 1, Machining.CloneStepsRadial.nCount do
|
||||
AuxiliaryData.Clones[i] = {}
|
||||
AuxiliaryData.Clones[i].dRadialOffset = dOriginalRadialOffset + Machining.CloneStepsRadial.dStep * ( Machining.CloneStepsRadial.nCount - i)
|
||||
NewAuxiliaryData.Clones[i] = {}
|
||||
NewAuxiliaryData.Clones[i].dRadialOffset = dOriginalRadialOffset + Machining.CloneStepsRadial.dStep * ( Machining.CloneStepsRadial.nCount - i)
|
||||
-- update distanza perpendicolare attacco per contemplare l'offset applicato
|
||||
if abs( dOriginalLeadInPerpDistance) > 10 * GEO.EPS_SMALL and abs( dOriginalLeadOutPerpDistance) > 10 * GEO.EPS_SMALL then
|
||||
AuxiliaryData.Clones[i].LeadIn = {}
|
||||
AuxiliaryData.Clones[i].LeadOut = {}
|
||||
AuxiliaryData.Clones[i].LeadIn.dPerpDistance = dOriginalLeadInPerpDistance - AuxiliaryData.Clones[i].dRadialOffset + dOriginalRadialOffset
|
||||
AuxiliaryData.Clones[i].LeadOut.dPerpDistance = dOriginalLeadOutPerpDistance - AuxiliaryData.Clones[i].dRadialOffset + dOriginalRadialOffset
|
||||
NewAuxiliaryData.Clones[i].LeadIn = {}
|
||||
NewAuxiliaryData.Clones[i].LeadOut = {}
|
||||
NewAuxiliaryData.Clones[i].LeadIn.dPerpDistance = dOriginalLeadInPerpDistance - NewAuxiliaryData.Clones[i].dRadialOffset + dOriginalRadialOffset
|
||||
NewAuxiliaryData.Clones[i].LeadOut.dPerpDistance = dOriginalLeadOutPerpDistance - NewAuxiliaryData.Clones[i].dRadialOffset + dOriginalRadialOffset
|
||||
end
|
||||
end
|
||||
elseif Machining.CloneStepsLongitudinal and Machining.CloneStepsLongitudinal.nCount > 1 then
|
||||
if not AuxiliaryData then
|
||||
AuxiliaryData = {}
|
||||
end
|
||||
AuxiliaryData.Clones = {}
|
||||
NewAuxiliaryData.Clones = {}
|
||||
|
||||
local dOriginalRadialOffset = Machining.dRadialOffset
|
||||
for i = Machining.CloneStepsLongitudinal.nCount, 1, -1 do
|
||||
AuxiliaryData.Clones[i] = {}
|
||||
AuxiliaryData.Clones[i].dRadialOffset = dOriginalRadialOffset + Machining.CloneStepsLongitudinal.dStep * ( i - 1)
|
||||
NewAuxiliaryData.Clones[i] = {}
|
||||
NewAuxiliaryData.Clones[i].dRadialOffset = dOriginalRadialOffset + Machining.CloneStepsLongitudinal.dStep * ( i - 1)
|
||||
end
|
||||
end
|
||||
|
||||
bMachiningAdded = AddNewMachining( Proc, Machining, AuxiliaryData)
|
||||
bMachiningAdded = AddNewMachining( Proc, Machining, NewAuxiliaryData)
|
||||
|
||||
return bMachiningAdded
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user