diff --git a/Designing/WinLib/WinCreate.lua b/Designing/WinLib/WinCreate.lua index d8698ce..4a4ce1b 100644 --- a/Designing/WinLib/WinCreate.lua +++ b/Designing/WinLib/WinCreate.lua @@ -63,27 +63,6 @@ end ---------------------------------------------------------------------------------- ------------------------------------- TELAIO ------------------------------------- ----------------------------------------------------------------------------------- --- funzione che crea il buco per la finestra a partire da curve generiche -function WinCreate.CreateGenFrame( vFrameCrvs, vJoints) - -- creo gruppo per telaio - local nFrameAreaId = EgtGroup( GDB_ID.ROOT) - EgtSetName( nFrameAreaId, WIN_AREA .. '(' .. WIN_FRAME .. ')') - EgtSetLevel( nFrameAreaId, GDB_LV.SYSTEM) - -- imposto il tipo - EgtSetInfo( nFrameAreaId, WIN_AREATYPE, WIN_AREATYPES.FRAME) - -- creo il gruppo con le curve di outline - local nAreaOutlineLayerId = EgtGroup( nFrameAreaId) - EgtSetName( nAreaOutlineLayerId, WIN_AREAOUTLINE) - for i = 1, #vFrameCrvs do - EgtRelocateGlob( vFrameCrvs[i], nAreaOutlineLayerId) - end - -- imposto tipo giunzioni - EgtSetInfo( nAreaOutlineLayerId, WIN_JOINTS, vJoints) - - return nFrameAreaId -end - ---------------------------------------------------------------------------------- -- funzione che crea le curve che definiscono il telaio in base alla geometria richiesta local function CreateFrameCurves( nLayerId, nType, dWidth, dHeight, dVal) @@ -192,15 +171,22 @@ end -- funzione che crea il telaio a partire da una specifica geometria ( rettangolo, chamfer...) function WinCreate.CreateFrame( nType, vJoints, dWidth, dHeight, dHeight2) - -- creo un gruppo temporaneo per le curve di outline - local nTmpLay = EgtGroup( GDB_ID.ROOT) - -- disegno outline - CreateFrameCurves( nTmpLay, nType, dWidth, dHeight, dHeight2) - local nFrameAreaId = WinCreate.CreateGenFrame( EgtGetAllInGroup( nTmpLay), vJoints) - EgtSetInfo( nFrameAreaId, WIN_FRAME_TYPE, nType) - EgtErase( nTmpLay) + -- creo gruppo per telaio + local nAreaId = EgtGroup( GDB_ID.ROOT) + EgtSetName( nAreaId, WIN_AREA .. '(' .. WIN_FRAME .. ')') + EgtSetLevel( nAreaId, GDB_LV.SYSTEM) + -- imposto il tipo + EgtSetInfo( nAreaId, WIN_AREATYPE, WIN_AREATYPES.FRAME) - return nFrameAreaId + -- costruisco le curve di outline + local nOutlineLayerId = EgtGroup( nAreaId) + EgtSetName( nOutlineLayerId, WIN_AREAOUTLINE) + CreateFrameCurves( nOutlineLayerId, nType, dWidth, dHeight, dHeight2) + EgtSetInfo( nAreaId, WIN_FRAME_TYPE, nType) + -- imposto tipo giunzioni + EgtSetInfo( nOutlineLayerId, WIN_JOINTS, vJoints) + + return nAreaId end ----------------------------------------------------------------------------------