From 63c5f940d8ed16586091e592245ccb00e1c697d1 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Fri, 4 Aug 2023 13:20:38 +0200 Subject: [PATCH 1/4] Include : - aggiornamento prototipi. --- EGkArcSpecial.h | 6 ++++-- EXeExecutor.h | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/EGkArcSpecial.h b/EGkArcSpecial.h index 2f9237e..941388a 100644 --- a/EGkArcSpecial.h +++ b/EGkArcSpecial.h @@ -1,13 +1,14 @@ //---------------------------------------------------------------------------- -// EgalTech 2014-2022 +// EgalTech 2014-2023 //---------------------------------------------------------------------------- -// File : EGkArcSpecial.h Data : 20.12.22 Versione : 2.4l3 +// File : EGkArcSpecial.h Data : 04.08.23 Versione : 2.5h1 // Contenuto : Dichiarazione funzioni per calcolo speciale archi. // // // // Modifiche : 12.06.14 DS Creazione modulo. // 20.12.22 DS Aggiunta GetArc2PCN. +// 04.08.23 DS Aggiunta GetArc2PNB. // //---------------------------------------------------------------------------- @@ -27,5 +28,6 @@ //---------------------------------------------------------------------------- EGK_EXPORT ICurve* GetArc2PD( const Point3d& ptStart, const Point3d& ptEnd, double dDirStartDeg) ; EGK_EXPORT ICurve* GetArc2PVN( const Point3d& ptStart, const Point3d& ptEnd, const Vector3d& vtDirS, const Vector3d& vtN) ; +EGK_EXPORT ICurve* GetArc2PNB( const Point3d& ptStart, const Point3d& ptEnd, const Vector3d& vtN, double dBulge) ; EGK_EXPORT ICurve* GetArc3P( const Point3d& ptStart, const Point3d& ptOther, const Point3d& ptEnd, bool bCirc) ; EGK_EXPORT ICurveArc* GetArc2PCN( const Point3d& ptStart, const Point3d& ptEnd, const Point3d& ptNearCen, const Vector3d& vtN) ; diff --git a/EXeExecutor.h b/EXeExecutor.h index 93fe0cc..e997a69 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -266,6 +266,8 @@ EXE_EXPORT int ExeCreateArcC2PEx( int nParentId, const Point3d& ptCen, const Point3d& ptNearEnd, int nRefType) ; EXE_EXPORT int ExeCreateArc3P( int nParentId, const Point3d& ptP1, const Point3d& ptP2, const Point3d& ptP3, int nRefType) ; +EXE_EXPORT int ExeCreateArc2PB( int nParentId, const Point3d& ptStart, const Point3d& ptEnd, + double dBulge, int nRefType) ; EXE_EXPORT int ExeCreateArc2PD( int nParentId, const Point3d& ptStart, const Point3d& ptEnd, double dDirSDeg, int nRefType) ; EXE_EXPORT int ExeCreateArc2PDEx( int nParentId, const Point3d& ptStart, From fdb7209f3fe555f23f268a1c9e2a22c4c235142e Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Sat, 19 Aug 2023 11:46:50 +0200 Subject: [PATCH 2/4] Include : - piccola modifica in Clamp. --- EgtNumUtils.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/EgtNumUtils.h b/EgtNumUtils.h index 7b229d5..a43ed9f 100644 --- a/EgtNumUtils.h +++ b/EgtNumUtils.h @@ -1,7 +1,7 @@ //---------------------------------------------------------------------------- -// EgalTech 2016-2018 +// EgalTech 2016-2023 //---------------------------------------------------------------------------- -// File : EgtNumUtils.h Data : 05.11.16 Versione : 1.6w1 +// File : EgtNumUtils.h Data : 16.08.23 Versione : 2.5h2 // Contenuto : Funzioni numeriche di base. // // @@ -17,14 +17,14 @@ inline int Clamp( int nVal, int nMin, int nMax) { - return ( nVal < nMin ? nMin : nMax < nVal ? nMax : nVal) ; + return ( nVal < nMin ? nMin : ( nVal > nMax ? nMax : nVal)) ; } //---------------------------------------------------------------------------- inline double Clamp( double dVal, double dMin, double dMax) { - return ( dVal < dMin ? dMin : dMax < dVal ? dMax : dVal) ; + return ( dVal < dMin ? dMin : ( dVal > dMax ? dMax : dVal)) ; } //---------------------------------------------------------------------------- From 6962aeced4615085ab17154dd0457aba281909c3 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Wed, 23 Aug 2023 16:45:11 +0200 Subject: [PATCH 3/4] Include : - aggiunto P_INVALID Pointt3d non definito (IsValid ritorna false) - aggiunto V_INVALID Vector3d non definito (IsValid ritorna false) - aggiunte raccolte di puntatori a ICurveLine. --- EGkCurveLine.h | 7 +++++++ EGkPoint3d.h | 7 +++++-- EGkVector3d.h | 7 +++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/EGkCurveLine.h b/EGkCurveLine.h index 8ab95f0..380c10a 100644 --- a/EGkCurveLine.h +++ b/EGkCurveLine.h @@ -45,3 +45,10 @@ inline ICurveLine* GetCurveLine( IGeoObj* pGObj) { if ( pGObj == nullptr || pGObj->GetType() != CRV_LINE) return nullptr ; return (static_cast(pGObj)) ; } + +//---------------------------------------------------------------------------- +// Raccolte di puntatori a ICurveLine +typedef std::vector CICRVLINEVECTOR ; // vettore di puntatori a const ICurveLine +typedef std::vector ICRVLINEPVECTOR ; // vettore di puntatori a ICurveLine +typedef std::list ICRVLINEPLIST ; // lista di puntatori a ICurveLine +typedef std::vector> ICRVLINEPOVECTOR ; // vettore di puntatori esclusivi a ICurveLine diff --git a/EGkPoint3d.h b/EGkPoint3d.h index 3d23f4c..eb82b46 100644 --- a/EGkPoint3d.h +++ b/EGkPoint3d.h @@ -1,12 +1,13 @@ //---------------------------------------------------------------------------- -// EgalTech 2013-2022 +// EgalTech 2013-2023 //---------------------------------------------------------------------------- -// File : EGkPoint3d.h Data : 22.08.224 Versione : 2.4h2 +// File : EGkPoint3d.h Data : 23.08.23 Versione : 2.5h2 // Contenuto : Dichiarazione della classe Punto 3d. // // // // Modifiche : 30.12.12 DS Creazione modulo. +// 23.08.23 DS Aggiunto P_INVALID. // // //---------------------------------------------------------------------------- @@ -99,6 +100,8 @@ class EGK_EXPORT Point3d //---------------------------------------------------------------------------- // Punti notevoli //---------------------------------------------------------------------------- +//! Punto non valido +const Point3d P_INVALID( NAN, NAN, NAN) ; //! Punto origine const Point3d ORIG( 0, 0, 0) ; diff --git a/EGkVector3d.h b/EGkVector3d.h index a4f0f69..2dc1764 100644 --- a/EGkVector3d.h +++ b/EGkVector3d.h @@ -1,13 +1,14 @@ //---------------------------------------------------------------------------- -// EgalTech 2013-2022 +// EgalTech 2013-2023 //---------------------------------------------------------------------------- -// File : EGkVector3d.h Data : 27.08.22 Versione : 2.4h2 +// File : EGkVector3d.h Data : 23.08.23 Versione : 2.5h2 // Contenuto : Dichiarazione della classe Vettore 3d. // // // // Modifiche : 31.12.13 DS Creazione modulo. // 14.12.19 DS Aggiunti confronti con Epsilon. +// 23.08.23 DS Aggiunto V_INVALID. // //---------------------------------------------------------------------------- @@ -170,6 +171,8 @@ class EGK_EXPORT Vector3d //---------------------------------------------------------------------------- // Vettori notevoli //---------------------------------------------------------------------------- +//! Vettore non valido +const Vector3d V_INVALID( NAN, NAN, NAN) ; //! Vettore nullo const Vector3d V_NULL( 0, 0, 0) ; //! Versore asse X From 921f764bb6f56bd87b7fd1ae2b344907dcb15015 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Sun, 27 Aug 2023 18:28:40 +0200 Subject: [PATCH 4/4] Include : - aggiornamento prototipi. --- EInAPI.h | 1 + EMkMachMgr.h | 6 ++++-- EXeExecutor.h | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/EInAPI.h b/EInAPI.h index 10b24fb..a8a0b25 100644 --- a/EInAPI.h +++ b/EInAPI.h @@ -716,6 +716,7 @@ EIN_EXPORT int __stdcall EgtGetLastMachGroup( void) ; EIN_EXPORT int __stdcall EgtGetPrevMachGroup( int nId) ; EIN_EXPORT BOOL __stdcall EgtGetMachGroupNewName( const wchar_t* wsName, wchar_t*& wsNewName) ; EIN_EXPORT int __stdcall EgtAddMachGroup( const wchar_t* wsName, const wchar_t* wsMachineName) ; +EIN_EXPORT int __stdcall EgtCopyMachGroup( const wchar_t* wsSouName, const wchar_t* wsName) ; EIN_EXPORT BOOL __stdcall EgtRemoveMachGroup( int nMGroupId) ; EIN_EXPORT BOOL __stdcall EgtGetMachGroupName( int nMGroupId, wchar_t*& wsName) ; EIN_EXPORT BOOL __stdcall EgtGetMachGroupMachineName( int nMGroupId, wchar_t*& wsMachineName) ; diff --git a/EMkMachMgr.h b/EMkMachMgr.h index aa95c54..a9c3de7 100644 --- a/EMkMachMgr.h +++ b/EMkMachMgr.h @@ -1,7 +1,7 @@ //---------------------------------------------------------------------------- -// EgalTech 2015-2022 +// EgalTech 2015-2023 //---------------------------------------------------------------------------- -// File : EMkMachMgr.h Data : 21.09.22 Versione : 2.4i4 +// File : EMkMachMgr.h Data : 25.08.23 Versione : 2.5h3 // Contenuto : Dichiarazione della interfaccia IMachMgr. // // @@ -13,6 +13,7 @@ // 10.11.20 DS Portate in interfaccia funzioni di calcolo con vettori di angoli. // 13.01.21 DS Aggiunte in interfaccia GetCalcHead e GetCalcExit. // 21.09.22 DS Aggiunta in interfaccia GetAxisOffset. +// 25.08.23 DS Aggiunta in interfaccia CopyMachGroup. // //---------------------------------------------------------------------------- @@ -57,6 +58,7 @@ class __declspec( novtable) IMachMgr virtual int GetPrevMachGroup( int nId) const = 0 ; virtual bool GetMachGroupNewName( std::string& sName) const = 0 ; virtual int AddMachGroup( const std::string& sName, const std::string& sMachineName) = 0 ; + virtual int CopyMachGroup( const std::string& sSouName, const std::string& sName) = 0 ; virtual bool RemoveMachGroup( int nId) = 0 ; virtual std::string GetMachGroupName( int nId) const = 0 ; virtual std::string GetMachGroupMachineName( int nId) const = 0 ; diff --git a/EXeExecutor.h b/EXeExecutor.h index e997a69..f15a448 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -899,6 +899,7 @@ EXE_EXPORT int ExeGetLastMachGroup( void) ; EXE_EXPORT int ExeGetPrevMachGroup( int nId) ; EXE_EXPORT bool ExeGetMachGroupNewName( std::string& sName) ; EXE_EXPORT int ExeAddMachGroup( const std::string& sName, const std::string& sMachineName) ; +EXE_EXPORT int ExeCopyMachGroup( const std::string& sSouName, const std::string& sName) ; EXE_EXPORT bool ExeRemoveMachGroup( int nMGroupId) ; EXE_EXPORT bool ExeGetMachGroupName( int nId, std::string& sName) ; EXE_EXPORT bool ExeGetMachGroupMachineName( int nId, std::string& sMachineName) ;