DataWindow :

- gestione errore dimensioni telaio.
This commit is contained in:
Annamaria Sassi
2025-12-02 15:22:52 +01:00
parent a77901fcc3
commit f81856f523
2 changed files with 12 additions and 7 deletions
+8 -5
View File
@@ -133,7 +133,7 @@ local function CreateFrameCurves( nLayerId, nType, vDim)
-- vDim[1] larghezza, vDim[2] altezza complessiva
-- verifico che altezza sia sensata
if vDim[2] < 0.5 * vDim[1] + GEO.EPS_SMALL then
return
return false
end
local nBottomId = EgtLine( nLayerId, ORIG(), Point3d( vDim[1], 0, 0))
EgtSetName( nBottomId, WIN_BOTTOM)
@@ -149,7 +149,7 @@ local function CreateFrameCurves( nLayerId, nType, vDim)
-- vDim[1] larghezza, vDim[2] altezza dei lati verticali, vDim[3] altezza complessiva
-- controllo che non degeneri in arco a tutto sesto
if vDim[3] - vDim[2] > 0.5 * vDim[1] - GEO.EPS_SMALL then
return
return false
end
local nBottomId = EgtLine( nLayerId, ORIG(), Point3d( vDim[1], 0, 0))
EgtSetName( nBottomId, WIN_BOTTOM)
@@ -165,7 +165,7 @@ local function CreateFrameCurves( nLayerId, nType, vDim)
-- vDim[1] larghezza, vDim[2] altezza dei lati verticali, vDim[3] altezza complessiva, vDim[4] raggio di raccordo
-- controllo sulle dimensioni
if vDim[3] - vDim[2] > 0.5 * vDim[1] - GEO.EPS_SMALL or vDim[4] > 0.5 * vDim[1] - GEO.EPS_SMALL then
return
return false
end
local nBottomId = EgtLine( nLayerId, ORIG(), Point3d( vDim[1], 0, 0))
EgtSetName( nBottomId, WIN_BOTTOM)
@@ -188,7 +188,7 @@ local function CreateFrameCurves( nLayerId, nType, vDim)
-- vDim[1] larghezza, vDim[2] altezza dei lati verticali, vDim[3] altezza complessiva
-- verifico che le due altezze abbiano valori sensati per realizzare i due archi
if vDim[3] - vDim[2] < 0.5 * vDim[1] then
return
return false
end
local nBottomId = EgtLine( nLayerId, ORIG(), Point3d( vDim[1], 0, 0))
EgtSetName( nBottomId, WIN_BOTTOM)
@@ -221,6 +221,7 @@ local function CreateFrameCurves( nLayerId, nType, vDim)
EgtSetName( nEdge2Id, WIN_TOP)
end
end
return true
end
----------------------------------------------------------------------------------
@@ -237,7 +238,9 @@ function WinCreate.CreateFrame( nType, vJoints, vDimensions, nAreaNbr)
-- costruisco le curve di outline
local nOutlineLayerId = EgtGroup( nAreaId)
EgtSetName( nOutlineLayerId, WIN_AREAOUTLINE)
CreateFrameCurves( nOutlineLayerId, nType, vDimensions)
if not CreateFrameCurves( nOutlineLayerId, nType, vDimensions) then
return
end
EgtSetInfo( nAreaId, WIN_FRAME_TYPE, nType)
-- imposto tipo giunzioni
EgtSetInfo( nOutlineLayerId, WIN_JOINTS, vJoints)