diff --git a/Designing/WinLib/WinCreate.lua b/Designing/WinLib/WinCreate.lua index b3c66e8..5c4d703 100644 --- a/Designing/WinLib/WinCreate.lua +++ b/Designing/WinLib/WinCreate.lua @@ -255,17 +255,10 @@ local function IdentifySashShape( nAreaId, nOutlineLayerId) EgtSetInfo( nAreaId, WIN_SASH_SHAPE, WIN_SASH_SHAPES.SEGMENTAL_ARC) else -- verifico se metà di arco a tutto sesto o ribassato - if abs( dAngCenter - 90) < GEO.EPS_SMALL then + if AreSameVectorApprox( EgtEV( vOutlines[2]), EgtSV( vOutlines[3])) or AreSameVectorApprox( EgtEV( vOutlines[3]), EgtSV( vOutlines[4])) then EgtSetInfo( nAreaId, WIN_SASH_SHAPE, WIN_SASH_SHAPES.SEMI_ROUND_ARC) else - local ptS = EgtSP( vOutlines[3]) - local ptE = EgtEP( vOutlines[3]) - local ptC = EgtCP( vOutlines[3]) - if abs( ptS:getX() - ptC:getX()) < GEO.EPS_SMALL or abs( ptE:getX() - ptC:getX()) < GEO.EPS_SMALL then - EgtSetInfo( nAreaId, WIN_SASH_SHAPE, WIN_SASH_SHAPES.SEMI_SEGMENTAL_ARC) - else - EgtSetInfo( nAreaId, WIN_SASH_SHAPE, WIN_SASH_SHAPES.GENERIC) - end + EgtSetInfo( nAreaId, WIN_SASH_SHAPE, WIN_SASH_SHAPES.SEMI_SEGMENTAL_ARC) end end end