-- -- EEEEEEEEEE GGGGGG WW WW WW -- EEEEEEEEEE GGGGGGGGGG WW WW WW -- EEEE GGGG GGGG WW WW WW -- EEEE GGGG WWW WWWW WWW -- EEEEEEE GGGG GGGGGGG WW WWWW WW -- EEEEEEE GGGG GGGGGGG WWW WWWW WWW -- EEEE GGGG GGGG WWWW WWWW -- EEEE GGGG GGGG WWWW WWWW -- EEEEEEEEEE GGGGGGGGGG WWW WWW -- EEEEEEEEEE GGGGGG WW WW -- -- by Egalware s.r.l. -- Window project software by Egalware s.r.l. 2023/05/02 require( 'EgtBase') _ENV = EgtProtectGlobal() EgtEnableDebug( false) -- Imposto direttorio per librerie local sBaseDir = EgtGetSourceDir() EgtOutLog("BaseDir=" .. sBaseDir) EgtAddToPackagePath( sBaseDir .. '?.lua') EgtAddToPackagePath( sBaseDir .. 'WinLib\\' .. '?.lua') _G.package.loaded.WinConst = nil _G.package.loaded.WinJWDConst = nil _G.package.loaded.WinCreate = nil _G.package.loaded.WinCalculate = nil _G.package.loaded.WinManageProject = nil _G.package.loaded.JSON = nil _G.package.loaded.xml2lua = nil _G.package.loaded.xml2lua_tree = nil require( 'WinConst') local WinCreate = require( 'WinCreate') local WinCalculate = require( 'WinCalculate') ------------------------------------------- PARAMETERS ------------------------------------------- local WindowWidth = 1500 local WindowHeight = 1800 local FrameJointType = WIN_JNT.FULL_H local SashJointType = WIN_JNT.FULL_V local vFrameJoints = { FrameJointType, FrameJointType, FrameJointType, FrameJointType} local vSashJoints = { SashJointType, SashJointType, SashJointType, SashJointType} local dFrameDim = 78 local dSashDim = 78 local vFrameDims = { dFrameDim, dFrameDim, dFrameDim, dFrameDim} local vSashDims = { dSashDim, dSashDim, dSashDim, dSashDim} local sProfilePath = 'C:\\EgtData\\EgtWindowMaker\\Profiles\\Profilo78.nge' -- local sProfilePath = 'C:\\EgtData\\EgtWindowMaker\\Profiles\\ProfiloSaomad.nge' ------------------------------------------- ************** ------------------------------------------- EgtNewFile() EgtStartCounter() -- importo profilo prescelto WinCreate.ImportProfile( sProfilePath) -- creo telaio local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.RECT, { WindowWidth, WindowHeight}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.CHAMFER_SIDE, { WindowWidth, WindowHeight, WindowHeight + 800}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.CHAMFER_SIDE, { WindowWidth, WindowHeight + 500, WindowHeight}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.ROUND_ARC, { WindowWidth, WindowHeight}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.SEGMENTAL_ARC, { 1500, 1800, 2200}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.CHAMFER, { WindowWidth, WindowHeight, WindowHeight + 500}, vFrameJoints, { dFrameDim, dFrameDim, dFrameDim, dFrameDim, dFrameDim}) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.POINTED_ARC, { 1500, 1500, 2400}, vFrameJoints, { dFrameDim, dFrameDim, dFrameDim, dFrameDim, dFrameDim}) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.TRG, { 1500, 1500, 500}, { FrameJointType, FrameJointType, FrameJointType}, { dFrameDim, dFrameDim, dFrameDim}) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.THREE_CENTER_ARC, { 1500, 1500, 1800, 200}, vFrameJoints, { dFrameDim, dFrameDim, dFrameDim, dFrameDim, dFrameDim, dFrameDim}) ------------------------ Aggiunta split a griglia ------------------------ -- WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE}, { 150, 300, 150, 300}, -- { WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE}, { 500, 600, 850}, false) -- WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 25}, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 50, 30}, false) -- WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL}, { 1, 4, 1, 2, 1}, -- { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL}, { 1, 2, 1, 2, 1}, false) -- WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.ABSOLUTE}, { 2, 1, 200}, -- { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PROPORTIONAL}, { 1, 50, 1}) ------------------------ Cambi profilo ------------------------ -- vetro / anta -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 120}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- local nSashId = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_RIGHT) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- vetro / anta in orizzontale -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 120}) -- local nSashId = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- anta / vetro -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- local nSashId = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- vetro / anta / vetro -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { 90, 120}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- local nSashId = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[3], WIN_FILLTYPES.GLASS) -- vetro / anta / anta -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33, 33}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- local nSashId1 = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims) -- local nSashId2 = WinCreate.AddSash( vAreas[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId1, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( nSashId2, WIN_FILLTYPES.GLASS) -- anta battente / anta ricevente / vetro -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 66}, { 90}) -- local vSashes = WinCreate.AddSashGroup( vAreas[1], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- vetro / anta / vetro / anta (1) -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- local vAreas2 = WinCreate.AddSplits( vAreas[1], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- local vAreas3 = WinCreate.AddSplits( vAreas[2], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- WinCreate.AddFill( vAreas2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas3[1], WIN_FILLTYPES.GLASS) -- local nSashId1 = WinCreate.AddSash( vAreas2[2], vSashJoints) -- local nSashId2 = WinCreate.AddSash( vAreas3[2], vSashJoints) -- WinCreate.AddFill( nSashId1, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( nSashId2, WIN_FILLTYPES.GLASS) -- vetro / anta / vetro / anta (2) -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, { 90, 120, 90}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- local nSashId1 = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId1, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[3], WIN_FILLTYPES.GLASS) -- local nSashId2 = WinCreate.AddSash( vAreas[4], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId2, WIN_FILLTYPES.GLASS) -- vetro / vetro / anta / anta -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, { 90, 90, 90}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- local nSashId1 = WinCreate.AddSash( vAreas[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId1, WIN_FILLTYPES.GLASS) -- local nSashId2 = WinCreate.AddSash( vAreas[4], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId2, WIN_FILLTYPES.GLASS) -- anta / vetro con split -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 90}) -- local nSashId = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- local vAreas2 = WinCreate.AddSplits( vAreas[2], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 60}) -- WinCreate.AddFill( vAreas2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas2[2], WIN_FILLTYPES.GLASS) -- anta con split / vetro -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 90}) -- local nSashId = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims) -- local vAreasSash = WinCreate.AddSplits( nSashId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 80}) -- WinCreate.AddFill( vAreasSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreasSash[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- ante ( divise da split orizzontale) / vetro -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 90}) -- local vAreas2 = WinCreate.AddSplits( vAreas[1], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 30}, { 95}) -- local nSashId1 = WinCreate.AddSash( vAreas2[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId1, WIN_FILLTYPES.GLASS) -- local nSashId2 = WinCreate.AddSash( vAreas2[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSashId2, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) ------------------------ Alzante Scorrevole ------------------------ -- vFrameDims = { 55, 55, 55, 55} -- vSashDims = { 135, 80, 80, 80} -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.RECT, { WindowWidth, WindowHeight}, vFrameJoints, vFrameDims) -- WinCreate.AddThreshold( nFrameId, 'Threshold') -- anta mobile a sx -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_FIXED}, { WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.FIXED}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000592', 'Sx') -- anta mobile a dx -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_FIXED, WIN_SASHTYPES.SLIDE_MOVABLE}, { WIN_OPENING_TYPES.FIXED, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000592', 'Dx') -- 2 ante mobili, sx davanti -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_MOVABLE_BACK}, { WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000593', 'Sx') -- 2 ante mobili, dx davanti -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_MOVABLE_BACK, WIN_SASHTYPES.SLIDE_MOVABLE}, { WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000593', 'Dx') -- 4 ante, le centrali sono mobili -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.RECT, { 4500, 2100}, vFrameJoints, vFrameDims) -- -- WinCreate.AddThreshold( nFrameId, 'Threshold') -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, -- { vSashJoints, vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_FIXED, WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_FIXED}, -- { WIN_OPENING_TYPES.FIXED, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT, WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.FIXED}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[4], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000594', 'Dx') -- 4 ante mobili -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.RECT, { 4500, 2100}, vFrameJoints, vFrameDims) -- -- WinCreate.AddThreshold( nFrameId, 'Threshold') -- local vSash = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, -- { vSashJoints, vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.SLIDE_MOVABLE_BACK, WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_MOVABLE, WIN_SASHTYPES.SLIDE_MOVABLE_BACK}, -- { WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT, WIN_OPENING_TYPES.COPLANARSLIDE_RIGHT, WIN_OPENING_TYPES.COPLANARSLIDE_LEFT}) -- WinCreate.AddFill( vSash[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSash[4], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSash[1]) -- WinCreate.AddHardware( nSashGrpId, '000595', 'Dx') ------------------------ Finestre vetro fisso ------------------------ -- standard -- WinCreate.AddBottomRail( nFrameId, 2, { 90, 78}) -- WinCreate.AddFill( nFrameId, WIN_FILLTYPES.GLASS) -- divisione orizzontale / verticale -- WinCreate.AddBottomRail( nFrameId, 2) -- -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 70}, { 60}) -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 70}, { 60}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- divisione verticale ed orizzontale (1) -- WinCreate.AddBottomRail( nFrameId, 1, { 60}) -- local vAreas1 = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 100}) -- local vAreas2 = WinCreate.AddSplits( vAreas1[1], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 60}) -- local vAreas3 = WinCreate.AddSplits( vAreas1[2], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 60}) -- WinCreate.AddFill( vAreas2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas2[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas3[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas3[2], WIN_FILLTYPES.GLASS) -- divisione verticale ed orizzontale (2) -- WinCreate.AddBottomRail( nFrameId, 1) -- local vAreas = WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { WIN_MEASURE.PERCENTAGE}, { 50}, true, { 100, 60, 60}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[4], WIN_FILLTYPES.GLASS) ------------------------ Finestre con anta singola ------------------------ -- standard -- local nSashId = WinCreate.AddSash( nFrameId, vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddBottomRail( nSashId, 2, { 90, 60}) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- divisione orizzontale / verticale -- local nSashId = WinCreate.AddSash( nFrameId, vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddBottomRail( nSashId, 1, { 100}) -- -- local vAreas = WinCreate.AddSplits( nSashId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- local vAreas = WinCreate.AddSplits( nSashId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}) -- WinCreate.AddFill( vAreas[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas[2], WIN_FILLTYPES.GLASS) -- divisione verticale e orizzontale -- local nSashId = WinCreate.AddSash( nFrameId, vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- local vAreas1 = WinCreate.AddSplits( nSashId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 100}) -- local vAreas2 = WinCreate.AddSplits( vAreas1[1], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 60}) -- local vAreas3 = WinCreate.AddSplits( vAreas1[2], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 60}) -- WinCreate.AddFill( vAreas2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas2[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas3[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreas3[2], WIN_FILLTYPES.GLASS) ------------------------ Finestre con più ante singole ------------------------ -- due ante divisione verticale -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 120}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_RIGHT) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- due ante divisione orizzontale -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 120}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTONLY_TOP) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTONLY_TOP) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- tre ante -- -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.ABSOLUTE, WIN_MEASURE.ABSOLUTE}, { WindowWidth / 3, WindowWidth / 3}, { 95, 95}) -- -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL}, { 1, 1, 1}, { 95, 95}) -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { 95, 95}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- local nSash3Id = WinCreate.AddSash( vAreas[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash3Id, WIN_FILLTYPES.GLASS) -- tre ante una sopra e due sotto -- local vAreas1 = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 115}) -- local vAreas2 = WinCreate.AddSplits( vAreas1[2], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 95}) -- local nSash1Id = WinCreate.AddSash( vAreas1[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.FIXED) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas2[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- local nSash3Id = WinCreate.AddSash( vAreas2[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_RIGHT) -- WinCreate.AddFill( nSash3Id, WIN_FILLTYPES.GLASS) -- sei ante (1) -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 105}) -- local vAreas1 = WinCreate.AddSplits( vAreas[1], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { 95, 95}) -- local vAreas2 = WinCreate.AddSplits( vAreas[2], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { 95, 95}) -- local nSash1Id = WinCreate.AddSash( vAreas1[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas1[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- local nSash3Id = WinCreate.AddSash( vAreas1[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash3Id, WIN_FILLTYPES.GLASS) -- local nSash4Id = WinCreate.AddSash( vAreas2[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash4Id, WIN_FILLTYPES.GLASS) -- local nSash5Id = WinCreate.AddSash( vAreas2[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash5Id, WIN_FILLTYPES.GLASS) -- local nSash6Id = WinCreate.AddSash( vAreas2[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash6Id, WIN_FILLTYPES.GLASS) -- sei ante (2) -- local vAreas = WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { WIN_MEASURE.PERCENTAGE}, { 50}, false, { 120, 100, 85, 100, 85}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- local nSash3Id = WinCreate.AddSash( vAreas[3], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash3Id, WIN_FILLTYPES.GLASS) -- local nSash4Id = WinCreate.AddSash( vAreas[4], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash4Id, WIN_FILLTYPES.GLASS) -- local nSash5Id = WinCreate.AddSash( vAreas[5], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash5Id, WIN_FILLTYPES.GLASS) -- local nSash6Id = WinCreate.AddSash( vAreas[6], vSashJoints, vSashDims) -- WinCreate.AddFill( nSash6Id, WIN_FILLTYPES.GLASS) ------------------------ Finestre con ante battenti e riceventi ------------------------ -- battente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- battente / ricevente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.INACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- battente / battente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33.333, 33.333}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE_OUT, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- battente / battente / ricevente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL, WIN_MEASURE.PROPORTIONAL}, { 1, 1, 1, 1}, -- { vSashJoints, vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE_OUT, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.INACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[4], WIN_FILLTYPES.GLASS) ------------------------ Finestre con ante singole e ante battenti/riceventi ------------------------ -- tre ante : singola / ricevente / battente -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 33}, { 115}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local vSashes = WinCreate.AddSashGroup( vAreas[2], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.INACTIVE, WIN_SASHTYPES.ACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- tre ante ( singola / ricevente/ battente) con split nelle ante -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 33}, { 95}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- local vAreasSash1 = WinCreate.AddSplits( nSash1Id, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.ABSOLUTE}, { WindowHeight * 3 / 5}, { 60}) -- WinCreate.AddFill( vAreasSash1[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreasSash1[2], WIN_FILLTYPES.GLASS) -- local vSashes2 = WinCreate.AddSashGroup( vAreas[2], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.INACTIVE, WIN_SASHTYPES.ACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- local vAreasSash2 = WinCreate.AddSplits( vSashes2[1], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.ABSOLUTE}, { WindowHeight * 3 / 5}, { 60}) -- WinCreate.AddFill( vAreasSash2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreasSash2[2], WIN_FILLTYPES.GLASS) -- local vAreasSash3 = WinCreate.AddSplits( vSashes2[2], WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.ABSOLUTE}, { WindowHeight * 3 / 5}, { 60}) -- WinCreate.AddFill( vAreasSash3[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vAreasSash3[2], WIN_FILLTYPES.GLASS) -- 3 ante : sopra battente / ricevente, sotto singola -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 70}, { 105}) -- local nSash0Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.FIXED) -- WinCreate.AddFill( nSash0Id, WIN_FILLTYPES.GLASS) -- local vSashes = WinCreate.AddSashGroup( vAreas[1], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- 4 ante : sopra anta singola e sotto singola ( con split) / battente / ricevente -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 30}, { 95}) -- local vAreas1 = WinCreate.AddSplits( vAreas[2], WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 30}, { 95}) -- local nSash0Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTONLY_TOP) -- WinCreate.AddFill( nSash0Id, WIN_FILLTYPES.GLASS) -- local nSash1Id = WinCreate.AddSash( vAreas1[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- local vSashAreas = WinCreate.AddSplits( nSash1Id, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 60}, { 60}) -- WinCreate.AddFill( vSashAreas[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashAreas[2], WIN_FILLTYPES.GLASS) -- local vSashes = WinCreate.AddSashGroup( vAreas1[2], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- sei ante : divisione orizzontale e per ogni divisione anta singola / battente/ ricevente -- local vAreas = WinCreate.AddGridSplits( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 33}, { WIN_MEASURE.PERCENTAGE}, { 50}, false, { 115, 95, 95}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims,WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- local nSash2Id = WinCreate.AddSash( vAreas[3], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- local vSashes1 = WinCreate.AddSashGroup( vAreas[2], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes1[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes1[2], WIN_FILLTYPES.GLASS) -- local vSashes2 = WinCreate.AddSashGroup( vAreas[4], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes2[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes2[2], WIN_FILLTYPES.GLASS) ------------------------ Ferramenta ------------------------ -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.RECT, { 1500, 2100}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.ROUND_ARC, { 1500, 2100}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.SEGMENTAL_ARC, { 1500, 1500, 1700}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.CHAMFER_SIDE, { 1500, 1800 + 1200, 1800}, vFrameJoints, vFrameDims) -- local nFrameId = WinCreate.CreateFrame( WIN_FRAME_TYPES.CHAMFER, { 1500, 1500, 1800}, vFrameJoints, vFrameDims) -- anta singola -- local nSashId = WinCreate.AddSash( nFrameId, vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- WinCreate.AddHardware( nSashId, '000558', 'Sx') -- -- WinCreate.AddHardware( nSashId, '000545', 'Sx') -- aria 4, errato ma crea alcune lavorazioni in più -- -- WinCreate.AddHardware( nSashId, '000596', 'Sx') -- arco a tutto sesto -- -- WinCreate.AddHardware( nSashId, '000597', 'Sx') -- arco ribassato -- -- WinCreate.AddHardware( nSashId, '000604', 'Sx') -- trapezio -- 2 ante singole -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 95}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_RIGHT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- WinCreate.AddHardware( nSash1Id, '000558', 'Sx') -- WinCreate.AddHardware( nSash2Id, '000558', 'Dx') -- -- WinCreate.AddHardware( nSash1Id, '000610', 'Sx') -- arco a tutto sesto -- -- WinCreate.AddHardware( nSash2Id, '000610', 'Dx') -- -- WinCreate.AddHardware( nSash1Id, '000611', 'Sx') -- arco ribassato -- -- WinCreate.AddHardware( nSash2Id, '000611', 'Dx') -- -- WinCreate.AddHardware( nSash1Id, '000604', 'Sx') -- trapezio -- -- WinCreate.AddHardware( nSash2Id, '000604', 'Dx') -- 2 ante singole con apertura sul montante -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.VERTICAL, { WIN_MEASURE.PERCENTAGE}, { 50}, { 120}) -- local nSash1Id = WinCreate.AddSash( vAreas[1], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- local nSash2Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( nSash2Id, WIN_FILLTYPES.GLASS) -- WinCreate.AddHardware( nSash1Id, '000558', 'Sx') -- WinCreate.AddHardware( nSash2Id, '000558', 'Sx') -- 3 ante : sotto singola, sopra battente / ricevente -- local vAreas = WinCreate.AddSplits( nFrameId, WIN_SPLITORIENTATION.HORIZONTAL, { WIN_MEASURE.PERCENTAGE}, { 60}, { 95}) -- local nSash1Id = WinCreate.AddSash( vAreas[2], vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTTURN_LEFT) -- WinCreate.AddFill( nSash1Id, WIN_FILLTYPES.GLASS) -- WinCreate.AddHardware( nSash1Id, '000558', 'Sx') -- local vSashes = WinCreate.AddSashGroup( vAreas[1], { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000559', 'Sx') -- 2 ante : battente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000559', 'Sx') -- -- WinCreate.AddHardware( nSashGrpId, '000598', 'Sx') -- arco tutto sesto -- -- WinCreate.AddHardware( nSashGrpId, '000599', 'Sx') -- arco ribassato -- 2 ante : ricevente / battente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE}, { 50}, { vSashJoints, vSashJoints}, { vSashDims, vSashDims}, { WIN_SASHTYPES.INACTIVE, WIN_SASHTYPES.ACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000559', 'Dx') -- 3 ante : battente / battente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33, 33}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE_OUT, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.INACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000564', 'Sx') -- 3 ante : ricevente / battente / battente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33, 33}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.INACTIVE, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.ACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000564', 'Dx') -- 3 ante : battente / ricevente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33, 33}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.INACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000565', 'Sx') -- 3 ante : ricevente / ricevente / battente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 33, 33}, { vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.INACTIVE_OUT, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.ACTIVE}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000565', 'Dx') -- 4 ante : battente / battente / ricevente / ricevente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, -- { vSashJoints, vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.ACTIVE_OUT, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.INACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[4], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000575', 'Sx') -- 4 ante : ricevente / ricevente / battente / battente -- local vSashes = WinCreate.AddSashGroup( nFrameId, { WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE, WIN_MEASURE.PERCENTAGE}, { 25, 25, 25}, -- { vSashJoints, vSashJoints, vSashJoints, vSashJoints}, { vSashDims, vSashDims, vSashDims, vSashDims}, -- { WIN_SASHTYPES.INACTIVE_OUT, WIN_SASHTYPES.INACTIVE_IN, WIN_SASHTYPES.ACTIVE_IN, WIN_SASHTYPES.ACTIVE_OUT}, -- { WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_LEFT, WIN_OPENING_TYPES.TURNONLY_RIGHT, WIN_OPENING_TYPES.TURNONLY_RIGHT}) -- WinCreate.AddFill( vSashes[1], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[2], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[3], WIN_FILLTYPES.GLASS) -- WinCreate.AddFill( vSashes[4], WIN_FILLTYPES.GLASS) -- local nSashGrpId = EgtGetParent( vSashes[1]) -- WinCreate.AddHardware( nSashGrpId, '000575', 'Dx') -- vasistas -- local nSashId = WinCreate.AddSash( nFrameId, vSashJoints, vSashDims, WIN_OPENING_TYPES.TILTONLY_TOP) -- WinCreate.AddFill( nSashId, WIN_FILLTYPES.GLASS) -- WinCreate.AddHardware( nSashId, '000573', 'Sx') ----------------------------------------------------------------------------------- -- imposto se calcolare solidi/preview o meno WinCalculate.SetCalcSolid( true) WinCalculate.SetCalcPreview( true) -- creo i pezzi WinCalculate.CreatePartFromArea( nFrameId) -- WinCalculate.AddHardware( nFrameId, true, false, false, false) -- WinCalculate.AddAccessories( nFrameId, true) -- tronchetti -- local nLogsNbr = 7 -- local vSections = { 100, 150, 80, 130, 120, 180} -- local nLogsNbr = 0 -- numero minimo -- local vSections = { 120} -- local bAlign = false -- local dOverMatOut = 10 -- local dOverMatIn = 7 -- local dOverMatExt = 5 -- local dOverMatInt = 3 -- local bCutExtremities = true -- -- cerco i pezzi ad arco -- local vParts = EgtGetAllInGroup( 0) -- for i = 1, #vParts do -- local nOutline = EgtGetInfo( vParts[i], WIN_REF_OUTLINE, 'i') or GDB_ID.NULL -- if EgtGetType( nOutline) == GDB_TY.CRV_ARC then -- -- se anta richiedo allineamento con telaio -- local nAreaId = EgtGetParent( EgtGetParent( nOutline)) -- local nAreaType = EgtGetInfo( nAreaId, WIN_AREATYPE, 'i') -- if nAreaType == WIN_AREATYPES.SASH then -- bAlign = true -- nLogsNbr = 0 -- end -- WinCalculate.CreateArcLogs( vParts[i], nLogsNbr, vSections, bAlign, dOverMatOut, dOverMatIn, dOverMatExt, dOverMatInt, bCutExtremities) -- end -- end EgtZoom( SCE_ZM.ALL) -- riporto tempi di esecuzione local sOut = string.format( ' ExecTime = %.2f ms', EgtStopCounter()) EgtOutLog( sOut)