DataDoors 3.1c1 :
- aggiunti parametri per smusso/raccordo in angolo interno L di Pivot (richiesta ALS).
This commit is contained in:
+43
-13
@@ -10,22 +10,23 @@
|
||||
-- EEEEEEEEEE GGGGGGGGGG wwwwwwww wwwwwwww
|
||||
-- EEEEEEEEEE GGGGGG wwwwwww wwwwwww
|
||||
--
|
||||
-- _PivotL.lua by EgalWare s.r.l. 2016.07.11
|
||||
-- _PivotL.lua by EgalWare s.r.l. 2026.03.03
|
||||
-- Autore: Filippo Monchi
|
||||
-- PivotL, componente di secondo livello, non può essere chiamato direttamente da un lua dei
|
||||
-- componenti di interfaccia
|
||||
|
||||
-- 2017.09.05 V1.0a2 FM Manage lead-in on opposite side and anti-splint path V lead-in
|
||||
-- 2018.01.08 V1.0a3 FM Manage new R1 parameter to add a fillet on single corner
|
||||
-- 2018.01.12 V1.0a4 FM Manage new anti splint position path when side pivot correspond to side door ( on offset and offsetintermediate type)
|
||||
-- 2018.05.15 V1.0a5 FM Add manage new mode to count entity also on curvecompo path to allow assign note on connection entity
|
||||
-- 2019.07.29 V1.0a6 FM Manage new differents pivot models and submodels: Centerhung pivot with submodel (1), Offset pivot with submodel (1),
|
||||
-- OffsetInpermediate pivot with submodel (1) 4
|
||||
-- the defalult and old one is submodel (1) for all model
|
||||
-- 2019.10.18 V2.000 FM Manage use Materials
|
||||
-- 2019.10.21 V2.001 FM Modify the closed path start point for steel material
|
||||
-- 2020.10.20 V2.002 FM Fix error on insert fillet when L = L3
|
||||
-- 2024.07.19 V2.003 FM Set note 'NotCheckDir' to pocketing and antisplint paths
|
||||
-- 2017.09.05 V1.0a2 FM Manage lead-in on opposite side and anti-splint path V lead-in
|
||||
-- 2018.01.08 V1.0a3 FM Manage new R1 parameter to add a fillet on single corner
|
||||
-- 2018.01.12 V1.0a4 FM Manage new anti splint position path when side pivot correspond to side door ( on offset and offsetintermediate type)
|
||||
-- 2018.05.15 V1.0a5 FM Add manage new mode to count entity also on curvecompo path to allow assign note on connection entity
|
||||
-- 2019.07.29 V1.0a6 FM Manage new differents pivot models and submodels: Centerhung pivot with submodel (1), Offset pivot with submodel (1),
|
||||
-- OffsetInpermediate pivot with submodel (1) 4
|
||||
-- the defalult and old one is submodel (1) for all model
|
||||
-- 2019.10.18 V2.000 FM Manage use Materials
|
||||
-- 2019.10.21 V2.001 FM Modify the closed path start point for steel material
|
||||
-- 2020.10.20 V2.002 FM Fix error on insert fillet when L = L3
|
||||
-- 2024.07.19 V2.003 FM Set note 'NotCheckDir' to pocketing and antisplint paths
|
||||
-- 2026.03.03 v3.1c1 DS Added fillet/chamfer management on opposite corner to single L for Offset type.
|
||||
|
||||
-- Tavola per definizione modulo (serve ma non usata)
|
||||
local PivotL = {}
|
||||
@@ -511,6 +512,35 @@ function PivotL.Draw( EC, EM, tPivotParam, bPreview, bRunByCompo, nDrawMach, Pz,
|
||||
DrawAddLineDrawCircle( pIni, pEnd, Lg, tPocket, bPreview, Dm, 0, false, false, RED(), RED())
|
||||
pIni = pEnd
|
||||
|
||||
-- Eventuale raccordo/smusso su unico angolo interno di L
|
||||
local dRd1 = tPivotParam.Dr2R or 0
|
||||
local dRd2 = tPivotParam.Dr2D or 0
|
||||
if dRd1 > 100 * GEO.EPS_SMALL then
|
||||
local nCLpId = tPocket[#tPocket-1]
|
||||
local nCLcId = tPocket[#tPocket]
|
||||
local dCLp = EgtCurveLength( nCLpId)
|
||||
local dCLc = EgtCurveLength( nCLcId)
|
||||
if dRd2 < 100 * GEO.EPS_SMALL then
|
||||
local dRad = min( dRd1, dCLp - 100 * GEO.EPS_SMALL, dCLc - 100 * GEO.EPS_SMALL)
|
||||
local nFltId = EgtCurveFillet( Lg, nCLpId, EgtMP( nCLpId), nCLcId, EgtMP( nCLcId), dRad, true, GDB_RT.LOC)
|
||||
if nFltId then table.insert( tPocket, #tPocket, nFltId) end
|
||||
else
|
||||
local dCoeff1 = min( ( dCLp - 100 * GEO.EPS_SMALL) / dRd1, 1)
|
||||
local dCoeff2 = min( ( dCLc - 100 * GEO.EPS_SMALL) / dRd2, 1)
|
||||
local dCoeff = min( dCoeff1, dCoeff2)
|
||||
local dDist1 = dCoeff * dRd1
|
||||
local dDist2 = dCoeff * dRd2
|
||||
if dDist1 > 100 * GEO.EPS_SMALL and dDist2 > 100 * GEO.EPS_SMALL then
|
||||
EgtInvertCurve( nCLpId)
|
||||
EgtTrimCurveStartAtLen( nCLpId, dDist1)
|
||||
EgtInvertCurve( nCLpId)
|
||||
EgtTrimCurveStartAtLen( nCLcId, dDist2)
|
||||
local nChmId = EgtLine( Lg, EgtEP( nCLpId), EgtSP( nCLcId), GDB_RT.LOC)
|
||||
if nChmId then table.insert( tPocket, #tPocket, nChmId) end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- se abilitato material steel chiudo il percorso
|
||||
if est then
|
||||
pEnd = Point3d(-((L3/2)-(d/2)-dExtraH),(H3-(H/2)+(d/2)+dExtraH),0)
|
||||
@@ -518,7 +548,7 @@ function PivotL.Draw( EC, EM, tPivotParam, bPreview, bRunByCompo, nDrawMach, Pz,
|
||||
pIni = pEnd
|
||||
end
|
||||
|
||||
hint = EgtCurveCompo( Lg, tPocket, true)
|
||||
hint = EgtCurveCompo( Lg, tPocket, true)
|
||||
if hint then
|
||||
EgtModifyCurveThickness( hint, -T)
|
||||
EgtSetName( hint, LG or '')
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
-- Version.lua by EgalWare s.r.l. 2026/01/07
|
||||
-- Version.lua by EgalWare s.r.l. 2026/03/03
|
||||
-- Gestione della versione di Doors
|
||||
|
||||
NAME = 'Doors'
|
||||
VERSION = '3.1a1'
|
||||
VERSION = '3.1c1'
|
||||
MIN_EXE = '2.6k4'
|
||||
|
||||
Reference in New Issue
Block a user