- in BeamLib creata funzione GetPartBoxWithHeadTailOvermaterial per recuperare il box della parte con aggiunto il sovramateriale di testa e/o coda; implementata in vari punti
- in LeadInOutLib e PreSimulationLib se necessario si estende il box per contemplare materiale in testa e in coda
This commit is contained in:
@@ -65,6 +65,43 @@ function BeamLib.AddPartEndFace( PartId, b3Solid)
|
||||
return true
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
function BeamLib.GetPartBoxWithHeadTailOvermaterial( Part, sSide)
|
||||
local _sSide = sSide or ''
|
||||
|
||||
-- il box del grezzo contiene sempre il sovramateriale di testa
|
||||
if _sSide == 'Head' then
|
||||
|
||||
local b3WithHead = BBox3d( Part.b3Raw)
|
||||
return b3WithHead
|
||||
|
||||
-- per aggiungere il materiale di coda si aggiunge il box dell'eventuale grezzo successivo
|
||||
elseif _sSide == 'Tail' then
|
||||
|
||||
local b3WithTail = BBox3d( Part.b3Part)
|
||||
local nNextRawId = EgtGetNextRawPart( Part.idRaw)
|
||||
if nNextRawId then
|
||||
local b3Tail = EgtGetRawPartBBox( nNextRawId)
|
||||
b3WithTail:Add( b3Tail)
|
||||
end
|
||||
|
||||
return b3WithTail
|
||||
|
||||
-- per aggiungere entrambi si procede come per la coda ma partendo dal box del grezzo, che già contiene la testa
|
||||
else
|
||||
|
||||
local b3WithHeadTail = BBox3d( Part.b3Raw)
|
||||
local nNextRawId = EgtGetNextRawPart( Part.idRaw)
|
||||
if nNextRawId then
|
||||
local b3Tail = EgtGetRawPartBBox( nNextRawId)
|
||||
b3WithHeadTail:Add( b3Tail)
|
||||
end
|
||||
|
||||
return b3WithHeadTail
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
-------------------------------------------------------------------------------------------------------------
|
||||
function BeamLib.GetPartSplittingPoints( Part)
|
||||
local PartSplittingPoints = {}
|
||||
|
||||
Reference in New Issue
Block a user