dfa187838b
- aggiunta memorizzazione dell'ulltimo tipo selezionato nella modalità selezione - se le superfici di selezione generano più di 2 curve di bordo allora vengono definiti degli altri layer di trimming - semplificazione gestione dei layer di sincronizzazione delle curve - aggiunta funzionalità di rimozione delle superfici di Bezier in un layer di trimmatura - miglioramento nella selezione delle curve di sincronizzazione nel caso di curve di bordo chiuse o aperte.
38 lines
1.5 KiB
Lua
38 lines
1.5 KiB
Lua
-- DeleteTrimming.lua by Egalware s.r.l. 2026/01/05
|
|
|
|
require( 'EgtBase')
|
|
_ENV = EgtProtectGlobal()
|
|
EgtEnableDebug( false)
|
|
|
|
-- Carico le costanti di Trimming
|
|
EgtAddToPackagePath( EgtGetSourceDir() .. '?.lua')
|
|
local GlobVar = require( 'TrimmingLib')
|
|
-- Costante di Errore
|
|
local ERROR_DELETING_TRIMMING = 'Error in Deleting New Trimming : '
|
|
|
|
-- Recupero il Part e il Layer corrente di Trimming
|
|
local nCurrPartId = EgtGetCurrPart()
|
|
local nCurrLayerId = EgtGetCurrLayer()
|
|
|
|
local nTrimmingLayerId = nil
|
|
-- Se il Layer corrente è di Trimming, memorizzo il suo Id
|
|
if GlobVar.IsTrimmingLayer( nCurrLayerId) then nTrimmingLayerId = nCurrLayerId
|
|
-- Se invece è un altro Layer, recupero il Layer di Trimmatura a cui si riferisce
|
|
else nTrimmingLayerId = GlobVar.GetTrimmingLayerRefId( nCurrLayerId) end
|
|
if nTrimmingLayerId == nil or nTrimmingLayerId == GDB_ID.NULL then
|
|
EgtOutBox( ERROR_DELETING_TRIMMING.. 'No Trimming Machinining Layer Found', 'Error', 'ERROR', 'OK')
|
|
return
|
|
end
|
|
|
|
-- Chiedo all'Utente la conferma per eliminare il Layer di Trimming corrente ed eventuali gruppi temporanei
|
|
local bDelete = EgtOutBox( 'Do you want to delete the current Trimming machining ?', 'Deleting', 'QUESTION', 'YESNO')
|
|
if not bDelete then return end
|
|
|
|
-- Recupero ed eventualmente elimino il Layer delle curve di Sincronizzazione associato
|
|
local nLayerSynEditId = GlobVar.GetCurrentEditSyncCurvesLayer( nCurrPartId, nCurrLayerId)
|
|
if nLayerSynEditId ~= nil and nLayerSynEditId ~= GDB_ID.NULL then EgtErase( nLayerSynEditId) end
|
|
EgtErase( nTrimmingLayerId)
|
|
|
|
-- Aggiorno la Grafica
|
|
EgtDraw()
|