From 9b54f331c473cd78450805ae73890ec4cdc2ab9b Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Wed, 26 Oct 2016 16:04:51 +0000 Subject: [PATCH] EgtExecutor 1.6v6 : - modificata in Exe e Lua ImportCnc per aggiunta del parametro nFlag - corretta ExeAdjustFlatPartLayer per non trasformare in composite cerchi completi. --- EXE_Exchange.cpp | 4 ++-- EXE_NstCreateFlatParts.cpp | 7 ++++--- EgtExecutor.rc | Bin 11694 -> 11694 bytes LUA_Exchange.cpp | 7 +++++-- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/EXE_Exchange.cpp b/EXE_Exchange.cpp index e1d6b38..318f00f 100644 --- a/EXE_Exchange.cpp +++ b/EXE_Exchange.cpp @@ -132,7 +132,7 @@ ExeImportStl( const string& sFilePath, double dScaleFactor) //----------------------------------------------------------------------------- bool -ExeImportCnc( const string& sFilePath) +ExeImportCnc( const string& sFilePath, int nFlag) { GseContext* pGseCtx = GetCurrGseContext() ; VERIFY_CTX_GEOMDB( pGseCtx, false) @@ -144,7 +144,7 @@ ExeImportCnc( const string& sFilePath) PtrOwner pImpCnc( MyCreateImportCnc()) ; bOk = bOk && ! IsNull( pImpCnc) ; // eseguo l'importazione - bOk = bOk && pImpCnc->Import( sFilePath, pGseCtx->m_pGeomDB, nPartId) ; + bOk = bOk && pImpCnc->Import( sFilePath, pGseCtx->m_pGeomDB, nPartId, nFlag) ; // aggiorno stato file corrente pGseCtx->m_sFilePath = sFilePath ; ExeSetModified() ; diff --git a/EXE_NstCreateFlatParts.cpp b/EXE_NstCreateFlatParts.cpp index 96faa38..5266344 100644 --- a/EXE_NstCreateFlatParts.cpp +++ b/EXE_NstCreateFlatParts.cpp @@ -631,16 +631,17 @@ ExeAdjustFlatPartLayer( int nLayerId) // Passo all'entità successiva nId = nNextId ; } - // Unisco gli archi consecutivi con la stessa concavità + // Unisco gli archi consecutivi con la stessa concavità (escluse circonferenze) INTVECTOR vAccwIds ; INTVECTOR vAcwIds ; nId = pGeomDB->GetFirstInGroup( nLayerId) ; while ( nId != GDB_ID_NULL && bOk) { const ICurveArc* pArc = GetCurveArc( pGeomDB->GetGeoObj( nId)) ; if ( pArc != nullptr) { - if ( pArc->GetAngCenter() > 0) + double dAngCen = pArc->GetAngCenter() ; + if ( dAngCen > EPS_ANG_SMALL && dAngCen < ANG_FULL - EPS_ANG_SMALL) vAccwIds.emplace_back( nId) ; - else + else if ( dAngCen < - EPS_ANG_SMALL && dAngCen > - ANG_FULL + EPS_ANG_SMALL) vAcwIds.emplace_back( nId) ; } nId = pGeomDB->GetNext( nId) ; diff --git a/EgtExecutor.rc b/EgtExecutor.rc index 450fe8b9815874758ccb6c83a722ff552b2be8ee..9b90cdd44b6b8955288c7b706e93b2a51f97ea70 100644 GIT binary patch delta 105 zcmZ1%y)JsgA2vp_%@@V4Gflq2nKwB}L}GFQr`YBKt{N7g_(8eLOp^}?BE$`p+!!}6 e64qk|YjR~q(%{Fqd6G0(;-H)(Lc&0)jvD~(JR=+c delta 97 zcmZ1%y)JsgA2vqQ%@@V4Gflq2na5~4Ignd-a{*Tk3sCf++-0W82LxfF21;&>n->Y| cF@rU@0x76sKgP|Iq`|@m