DataWindow :

- aggiunta funzione che restituisce i profili dei vari pezzi di un'area telaio o anta.
This commit is contained in:
SaraP
2026-01-23 12:47:10 +01:00
parent c2946b8d9c
commit b27b0e6bf6
3 changed files with 29 additions and 5 deletions
+13 -4
View File
@@ -1658,6 +1658,7 @@ local function CalculateOutlineFromAreaOutline( nAreaId)
-- FRAME
if nAreaType == WIN_AREATYPES.FRAME then
-- sistemo le info
local vProfiles = {}
local nAreaOutlineId = EgtGetFirstInGroup( nAreaOutlineLayerId)
while nAreaOutlineId do
local nOutlineId = EgtCopyGlob( nAreaOutlineId, nOutlineLayerId)
@@ -1667,10 +1668,13 @@ local function CalculateOutlineFromAreaOutline( nAreaId)
if EgtGetName( nOutlineId) == WIN_BOTTOM then
CopyInfo( nOutlineId, nAreaId, WIN_BOTTOMRAIL)
end
local sProfile = WIN_FRAME .. '_' .. EgtGetInfo( nOutlineId, WIN_PROFILETYPE)
table.insert( vProfiles, sProfile)
nAreaOutlineId = EgtGetNext( nAreaOutlineId)
end
GetPrevNextOutline( nOutlineLayerId)
-- assegno i profili all'area
EgtSetInfo( nAreaId, WIN_AREA_PROFILES, vProfiles)
-- SPLIT / NULL
elseif nAreaType == WIN_AREATYPES.SPLIT or nAreaType == WIN_AREATYPES.NULL then
@@ -1796,10 +1800,15 @@ local function CalculateOutlineFromAreaOutline( nAreaId)
nBaseOutlineId = EgtGetNext( nBaseOutlineId)
end
-- accorcio gli offset
TrimOrderedCurves( EgtGetAllInGroup( nOutlineLayerId), 1)
local vOutlines = TrimOrderedCurves( EgtGetAllInGroup( nOutlineLayerId), 1)
-- assegno prev e next
GetPrevNextOutline( nOutlineLayerId)
-- assegno i profili all'area
local vProfiles = {}
for i = 1, #vOutlines do
vProfiles[i] = WIN_SASH .. '_' .. EgtGetInfo( vOutlines[i], WIN_PROFILETYPE)
end
EgtSetInfo( nAreaId, WIN_AREA_PROFILES, vProfiles)
-- FILL
elseif nAreaType == WIN_AREATYPES.FILL then
@@ -2642,7 +2651,7 @@ local function CalcMixedMillings( vOutlines, nOutlineProfileId, nSplitId, nSplit
local _, _, dPar4 = EgtPointCurveDist( ptEnd, nCrvFS1)
local nMill2 = EgtCopyParamRange( nCrvFS1, min( dPar4, dPar3), max( dPar3, dPar4), nGrpTmp)
local nMilling
local nMilling
if bPrev then
nMilling = EgtCurveCompo( nGrpTmp, { nMill2, nMill1})
else