8ce7008a76
- aggiunto calcolo del solido della trave tramite operatori booleani su Stm.
48 lines
1.4 KiB
Lua
48 lines
1.4 KiB
Lua
-- DisableFeatures.lua by Egaltech s.r.l. 2019/11/22
|
|
-- Gestione disabilitazione delle feature selezionate
|
|
|
|
-- Intestazioni
|
|
require( 'EgtBase')
|
|
_ENV = EgtProtectGlobal()
|
|
EgtEnableDebug( false)
|
|
|
|
if EgtGetSelectedObjCount() == 0 then
|
|
EgtOutBox( 'Nessuna lavorazione selezionata', 'Disabilita lavorazioni', 'ERROR')
|
|
end
|
|
|
|
-- Elenco dei pezzi interessati
|
|
local vParts = {}
|
|
|
|
-- Disabilito features selezionate
|
|
local nId = EgtGetFirstSelectedObj()
|
|
while nId do
|
|
-- verifico sia una feature
|
|
local nParentId = EgtGetParent( nId)
|
|
if EgtIsLayer( nParentId or GDB_ID.NULL) and EgtGetName( nParentId) == 'Processings' and
|
|
EgtGetInfo( nId, 'GRP', 'i') and EgtGetInfo( nId, 'PRC', 'i') then
|
|
EgtSetInfo( nId, 'DO', 0)
|
|
EgtSetColor( nId, Color3d( 160, 160, 160))
|
|
local nAuxId = EgtGetInfo( nId, 'AUXID', 'i')
|
|
if nAuxId then
|
|
EgtSetColor( nId + nAuxId, Color3d( 160, 160, 160))
|
|
end
|
|
table.insert( vParts, EgtGetParent( nParentId))
|
|
end
|
|
nId = EgtGetNextSelectedObj()
|
|
end
|
|
|
|
-- Cancello eventuale solido dei pezzi interessati
|
|
table.sort( vParts)
|
|
local PrevPartId = GDB_ID.NULL
|
|
for i = 1, #vParts do
|
|
if vParts[i] ~= PrevPartId then
|
|
local SolidLy = EgtGetFirstNameInGroup( vParts[i], 'Solid')
|
|
EgtErase( SolidLy or GDB_ID.NULL)
|
|
PrevPartId = vParts[i]
|
|
end
|
|
end
|
|
|
|
EgtDeselectAll()
|
|
EgtZoom( SCE_ZM.ALL)
|
|
|
|
-- end |