Compare commits

..

37 Commits

Author SHA1 Message Date
Daniele Bariletti 1c4109e9a2 Merge commit '9144694734e55e22ee227a51ec928897e760ad79' into ExtDimension_Angular 2023-04-19 16:47:30 +02:00
DarioS 9144694734 Include :
- aggiornamento prototipi Vector3d.
2023-04-17 09:28:48 +02:00
Daniele Bariletti db1243aba5 Include :
- aggiornamento prototipi
2023-04-14 10:02:16 +02:00
Daniele Bariletti faa791c428 Merge commit '4c7cf4d0e40a3618fdafee73bd4d484811de6916' into ExtDimension_Angular 2023-04-14 09:56:58 +02:00
DarioS 4c7cf4d0e4 Include :
- aggiornamento prototipi.
2023-04-11 19:34:08 +02:00
DarioS 6c983db4d7 Merge remote-tracking branch 'origin/ExtDimension_Angular' 2023-04-08 11:26:54 +02:00
DarioS d497fb30cd Include :
- aggiornamento codici protezione librerie per cambio mese.
2023-04-03 08:53:01 +02:00
Daniele Bariletti 3f05d8d830 Include :
- aggiunti prototipi per quotature.
2023-03-31 14:58:44 +02:00
DarioS 56a10b43b4 Include :
- miglioramento e irrobustimento a PtrOwner.
2023-03-27 20:39:06 +02:00
DarioS 0288f200f8 Include :
- modifiche a PtrOwner, aggiunta nuova Set.
2023-03-27 18:42:01 +02:00
DarioS c8370b9dc7 Include :
- aggiornato codice di controllo versione.
2023-03-06 08:31:58 +01:00
DarioS 19c2dffa32 Include :
- aggiornamento prototipi.
2023-02-27 17:05:17 +01:00
DarioS 4df6b4f95d Include :
- migliorati test IsXplus,... su Vector3d.
2023-02-27 08:14:24 +01:00
DarioS cb3f9075e6 Include :
- aggiornamento prototipi.
2023-02-20 09:14:45 +01:00
DarioS 992073ea80 Include :
- aggiunti prototipi di nuove funzioni.
2023-02-10 11:26:25 +01:00
DarioS 90bac7ecf8 Include :
- aggiornamento chiavi di protezione.
2023-02-09 10:38:14 +01:00
DarioS d4e0b3183f Include :
- modifica estetica.
2023-02-06 08:12:08 +01:00
SaraP 886e63f1a0 Include :
- aggiornamento prototipo.
2023-02-01 09:35:59 +01:00
SaraP 7f4d123700 Include :
- aggiunto prototipo.
2023-01-31 15:36:12 +01:00
DarioS 29078f12d3 Include :
- aggiornamento prototipi.
2023-01-30 09:41:37 +01:00
DarioS 040b3cc386 Include :
- nessuna modifica sostanziale.
2023-01-18 08:41:27 +01:00
DarioS 997bf37426 Include :
- aggiornamento prototipi
- aggiunte raccolte di coppie double-string.
2023-01-17 11:29:05 +01:00
DarioS 70b81d88c3 Include :
- aggiornamento prototipi.
2023-01-11 14:53:58 +01:00
DarioS e1d42cfca8 Include :
- aggiornamento chiavi di protezione.
2023-01-03 08:58:20 +01:00
DarioS 70ae6c8cb2 Include :
- aggiornamento prototipi.
2022-12-28 19:40:48 +01:00
SaraP dc8b2e1fe6 Include :
- aggiornamento prototipi.
2022-12-28 14:19:02 +01:00
DarioS 58efb93e9f Include :
- aggiornamento prototipi.
2022-12-20 16:36:32 +01:00
DarioS 532a6f487c Include :
- aggiornamento prototipi.
2022-12-12 14:43:18 +01:00
DarioS d50bf5e4da Include :
- aggiornamento a dicembre codici protezione librerie.
2022-12-05 08:10:46 +01:00
SaraP f6429f8361 Include :
- aggiunti prototipi.
2022-12-01 11:25:17 +01:00
DarioS 6b3d3a39be Include :
- aggiornamento prototipi.
2022-11-14 08:38:43 +01:00
DarioS 46baa14304 Include :
- aggiornamento prototipi.
2022-11-08 16:43:19 +01:00
DarioS 9357f8fef0 Include :
- aggiornamento prototipi.
2022-11-04 19:18:37 +01:00
DarioS 966a4ff0c1 Include :
- cambio sottoversione mensile per librerie
- aggiornamento prototipi.
2022-11-02 15:10:03 +01:00
DarioS 4f82bc1a6a Include :
- aggiornamento prototipi.
2022-10-26 18:07:42 +02:00
DarioS 35982ecc97 Include :
- aggiornamento prototipi.
2022-10-24 08:44:59 +02:00
Riccardo Elitropi b6b36bbf01 Merge commit '24c1414752e47a903d107978105b888142d61a98' 2022-10-20 15:59:27 +02:00
22 changed files with 173 additions and 73 deletions
+2
View File
@@ -43,6 +43,8 @@ class __declspec( novtable) IBeamMgr
virtual bool SetPartCount( int nCount) = 0 ;
virtual bool SetPartBox( double dLength, double dHeight, double dWidth, bool bUpdate = true) = 0 ;
virtual bool GetSideData( int nSide, Frame3d& frRef, double& dLength, double& dWidth, double& dHeight) = 0 ;
virtual bool ShowFacesName( bool bShow) = 0 ;
virtual bool ShowLoadingSide( bool bShow, bool bFromLeft) = 0 ;
virtual int AddProcess( int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId,
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ;
+7 -7
View File
@@ -1,12 +1,12 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2014
// EgalTech 2022-2022
//----------------------------------------------------------------------------
// File : EExExportStl.h Data : 07.08.14 Versione : 1.5h2
// File : EExExportThreeJS.h Data : 22.10.22 Versione : 2.4j1
// Contenuto : Dichiarazione della interfaccia IExportStl.
//
//
//
// Modifiche : 07.08.14 DS Creazione modulo.
// Modifiche : 22.10.22 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
@@ -27,16 +27,16 @@
#endif
//-----------------------------------------------------------------------------
class __declspec(novtable) IExportThreeJS
class __declspec( novtable) IExportThreeJS
{
public:
virtual ~IExportThreeJS( void) {}
virtual bool SetOptions( int nFilter) = 0 ;
virtual bool Export( IGeomDB* pGDB, int nId, const std::string& sFile, IEGrScene* pScene, bool bUdm) = 0 ;
};
virtual bool Export( IGeomDB* pGDB, int nId, IEGrScene* pScene, bool bUdm, const std::string& sFile) = 0 ;
} ;
//-----------------------------------------------------------------------------
extern "C" {
EEX_EXPORT bool SetThreeJSAuxDir( const std::string& sThreeJSAuxDir) ;
EEX_EXPORT bool SetThreeJSLibDir( const std::string& sThreeJSLibDir) ;
EEX_EXPORT IExportThreeJS* CreateExportThreeJS( void) ;
}
+5 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2014
// EgalTech 2014-2023
//----------------------------------------------------------------------------
// File : EGkAngle.h Data : 14.07.14 Versione : 1.5g2
// File : EGkAngle.h Data : 10.02.23 Versione : 2.5b1
// Contenuto : Dichiarazione funzioni per gestione angoli.
//
//
@@ -27,3 +27,6 @@ EGK_EXPORT double AngleNearAngle( double dAngDeg, double dAngRefDeg) ;
EGK_EXPORT double DiffAngle( double dAng1Deg, double dAng2Deg) ;
EGK_EXPORT double MediaAngle( double dAng1Deg, double dAng2Deg, double dCoeff) ;
EGK_EXPORT bool AngleInSpan( double dAngDeg, double dAngRefDeg, double dAngSpanDeg) ;
EGK_EXPORT bool AngleInRange( double dAngDeg, double dAngMinDeg, double dAngMaxDeg) ;
EGK_EXPORT bool AdjustAngleInSpan( double& dAngDeg, double dAngRefDeg, double dAngSpanDeg) ;
EGK_EXPORT bool AdjustAngleInRange( double& dAngDeg, double dAngMinDeg, double dAngMaxDeg) ;
+4 -3
View File
@@ -1,13 +1,13 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2015
// EgalTech 2014-2022
//----------------------------------------------------------------------------
// File : EGkArcSpecial.h Data : 15.03.15 Versione : 1.6c2
// File : EGkArcSpecial.h Data : 20.12.22 Versione : 2.4l3
// Contenuto : Dichiarazione funzioni per calcolo speciale archi.
//
//
//
// Modifiche : 12.06.14 DS Creazione modulo.
//
// 20.12.22 DS Aggiunta GetArc2PCN.
//
//----------------------------------------------------------------------------
@@ -28,3 +28,4 @@
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* 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) ;
+2
View File
@@ -56,7 +56,9 @@ class __declspec( novtable) ICurveComposite : public ICurve
virtual bool ModifyCurveToLine( int nCrv) = 0 ;
virtual bool ArcsToBezierCurves( void) = 0 ;
virtual bool ArcsBezierCurvesToArcsPerpExtr( double dLinTol, double dAngTolDeg) = 0 ;
virtual bool StraightArcsToLines( double dLinTol, double dAngTolDeg) = 0 ;
virtual bool MergeCurves( double dLinTol, double dAngTolDeg, bool bStartEnd = true, bool bNeedSameProp = false) = 0 ;
virtual bool RemoveSmallDefects( double dLinTol, double dAngTolDeg, bool bAlsoSpikes = false) = 0 ;
virtual bool RemoveUndercutOnY( double dLinTol, double dAngTolDeg) = 0 ;
virtual bool IsAPoint( void) const = 0 ;
virtual bool IsALine( double dLinTol, Point3d& ptStart, Point3d& ptEnd) const = 0 ;
+6
View File
@@ -32,6 +32,12 @@ class __declspec( novtable) IExtDimension : public IGeoObj
int nDecDigit, const std::string& sFont, double dTextHeight) = 0 ;
virtual bool SetLinear( const Point3d& ptP1, const Point3d& ptP2, const Point3d& ptPos,
const Vector3d& vtN, const Vector3d& vtDir, const std::string& sText) = 0 ;
virtual bool SetRadial( const Point3d& ptCen, const Point3d& ptPos,
const Vector3d& vtN, const std::string& sText) = 0 ;
virtual bool SetDiametral( const Point3d& ptCen, const Point3d& ptPos,
const Vector3d& vtN, const std::string& sText) = 0 ;
virtual bool SetAngular( const Point3d& ptP1, const Point3d& ptV, const Point3d& ptP2, const Point3d& ptPos,
const Vector3d& vtN, const std::string& sText ) = 0 ;
virtual const Vector3d& GetNormVersor( void) const = 0 ;
virtual const Vector3d& GetDirVersor( void) const = 0 ;
virtual const std::string& GetText( void) const = 0 ;
+6 -4
View File
@@ -1,13 +1,13 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2013
// EgalTech 2013-2023
//----------------------------------------------------------------------------
// File : EGkGdbIterator.h Data : 04.12.13 Versione : 1.4a3
// File : EGkGdbIterator.h Data : 29.01.23 Versione : 2.5a2
// Contenuto : Dichiarazione della interfaccia IGdbIterator.
//
//
//
// Modifiche : 04.12.13 DS Creazione modulo.
//
// 29.01.23 DS Aggiunte GetAllInfo e CopyAllInfoFrom.
//
//----------------------------------------------------------------------------
@@ -142,6 +142,8 @@ class __declspec( novtable) IGdbIterator
virtual bool GetInfo( const std::string& sKey, STRVECTOR& vsInfo) const = 0 ;
virtual bool ExistsInfo( const std::string& sKey) const = 0 ;
virtual bool RemoveInfo( const std::string& sKey) = 0 ;
virtual bool GetAllInfo( STRVECTOR& vsInfo) const = 0 ;
virtual bool CopyAllInfoFrom( const IGdbIterator& iIter) = 0 ;
// TextureData
virtual bool SetTextureName( const std::string& sTxrName) = 0 ;
virtual bool SetTextureFrame( const Frame3d& frTxrRef) = 0 ;
@@ -156,4 +158,4 @@ class __declspec( novtable) IGdbIterator
} ;
//-----------------------------------------------------------------------------
EGK_EXPORT IGdbIterator* CreateGdbIterator( IGeomDB* pGDB = nullptr) ;
EGK_EXPORT IGdbIterator* CreateGdbIterator( IGeomDB* pGDB = nullptr) ;
+6
View File
@@ -23,6 +23,12 @@
typedef std::vector<Point3d> PNTVECTOR ; // vettore di punti
typedef std::list<Point3d> PNTLIST ; // lista di punti
typedef std::vector<PNTVECTOR> PNTMATRIX ; // matrice di punti
//----------------------------------------------------------------------------
// Raccolte di coppie Point3d,int
typedef std::pair<Point3d,int> POINTI ; // coppia punto, intero
typedef std::vector<POINTI> PNTIVECTOR ; // vettore di coppie punto, intero
typedef std::list<POINTI> PNTILIST ; // lista di coppie punto, intero
//----------------------------------------------------------------------------
// Raccolte di coppie Point3d,dU
+3
View File
@@ -33,6 +33,9 @@ const double SQ_EPS_ZERO = EPS_ZERO * EPS_ZERO ;
const double INFINITO = 1e10 ;
const double SQ_INFINITO = INFINITO * INFINITO ;
// coefficiente componente di vettore largamente predominante
const double KV_BIG = 1e5 ;
// conversione da gradi a radianti e viceversa
const double PIGRECO = 3.14159265358979323846 ;
const double DEGTORAD = PIGRECO / 180. ;
+4 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2014
// EgalTech 2013-2023
//----------------------------------------------------------------------------
// File : EGkGeomDB.h Data : 03.12.14 Versione : 1.5k1
// File : EGkGeomDB.h Data : 29.01.23 Versione : 2.5a
// Contenuto : Dichiarazione della interfaccia IGeomDB.
//
//
@@ -11,6 +11,7 @@
// 21.05.14 DS Agg. GotoFirst/Next/Last/Prev.
// 30.05.14 DS Agg. metodi di Shear.
// 03.12.14 DS Aggiunta gestione riferimento di griglia.
// 29.01.23 DS Aggiunta GetAllInfo.
//
//----------------------------------------------------------------------------
@@ -176,6 +177,7 @@ class __declspec( novtable) IGeomDB
virtual bool GetInfo( int nId, const std::string& sKey, STRVECTOR& vsInfo) const = 0 ;
virtual bool ExistsInfo( int nId, const std::string& sKey) const = 0 ;
virtual bool RemoveInfo( int nId, const std::string& sKey) = 0 ;
virtual bool GetAllInfo( int nId, STRVECTOR& vsInfo) const = 0 ;
virtual bool CopyAllInfoFrom( int nId, int nSouId) = 0 ;
// TextureData
virtual bool DumpTextureData( int nId, std::string& sOut, bool bMM = true, const char* szNewLine = "\n") const = 0 ;
+2
View File
@@ -135,7 +135,9 @@ typedef std::list<PolyLine> POLYLINELIST ; // lista di PolyLine
//----------------------------------------------------------------------------
EGK_EXPORT bool DistPointPolyLine( const Point3d& ptP, const PolyLine& plPoly, double& dDist) ;
EGK_EXPORT bool DistPointPolyLine( const Point3d& ptP, const PolyLine& plPoly, double& dDist, double& dMinDistPar) ;
EGK_EXPORT bool IsPointInsidePolyLine( const Point3d& ptP, const PolyLine& plPoly, double dToler) ;
EGK_EXPORT bool GetPointParamOnPolyLine( const Point3d& ptP, const PolyLine& plPoly, double dToler, double& dPar) ;
EGK_EXPORT bool ChangePolyLineStart( PolyLine& plPoly, const Point3d& ptNewStart, double dToler) ;
EGK_EXPORT bool SplitPolyLineAtPoint( const PolyLine& plPoly, const Point3d& ptP, double dToler, PolyLine& plPoly1, PolyLine& plPoly2) ;
EGK_EXPORT bool AssociatePolyLinesMinDistPoints( const PolyLine& PL1, const PolyLine& PL2, PNTIVECTOR& vPnt1, PNTIVECTOR& vPnt2, bool& bCommonInternalPoints) ;
+5
View File
@@ -24,6 +24,9 @@
#define EGK_EXPORT __declspec( dllimport)
#endif
//----------------------------------------------------------------------------
enum RS_CAP { RSCAP_NONE = 0, RSCAP_FLAT = 1, RSCAP_ROUND = 2, RSCAP_BEVEL = 3} ;
//----------------------------------------------------------------------------
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshByFlatContour( const ICurve* pCurve, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshByRegion( const CICURVEPVECTOR& vpCurve, double dLinTol = 10 * EPS_SMALL) ;
@@ -35,6 +38,8 @@ EGK_EXPORT ISurfTriMesh* GetSurfTriMeshByRevolve( const ICurve* pCurve, const Po
const Vector3d& vtAx, bool bCapEnds, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshByScrewing( const ICurve* pCurve, const Point3d& ptAx, const Vector3d& vtAx,
double dAngRotDeg, double dMove, bool bCapEnds, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshRectSwept( double dDimH, double dDimV, double dBevelH, double dBevelV,
const ICurve* pGuide, int nCapType, double dLinTol) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshSwept( const ICurve* pSect, const ICurve* pGuide, bool bCapEnds, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshRuled( const Point3d& ptP, const ICurve* pCurve, double dLinTol = 10 * EPS_SMALL) ;
EGK_EXPORT ISurfTriMesh* GetSurfTriMeshRuled( const ICurve* pCurve1, const ICurve* pCurve2, int nType, double dLinTol = 10 * EPS_SMALL) ;
+23 -13
View File
@@ -14,6 +14,7 @@
#pragma once
#include "/EgtDev/Include/EGkGeoConst.h"
#include <algorithm>
#include <cmath>
//----------------------- Macro per import/export -----------------------------
@@ -70,36 +71,43 @@ class EGK_EXPORT Vector3d
{ return ( abs( 1.0 - (x * x + y * y + z * z)) < ( 2 * EPS_ZERO)) ; }
//! Verifica se il vettore è parallelo ed equiverso con X+
bool IsXplus( void) const
{ return ( x > EPS_ZERO && abs( y) < EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( y), abs( z)) ;
return ( x > EPS_ZERO && dMO < 10 * EPS_ZERO && x > KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo ed equiverso con X-
bool IsXminus( void) const
{ return ( x < - EPS_ZERO && abs( y) < EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( y), abs( z)) ;
return ( x < -EPS_ZERO && dMO < 10 * EPS_ZERO && x < -KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo a X
bool IsX( void) const
{ return ( abs( x) > EPS_ZERO && abs( y) < EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( y), abs( z)) ;
return ( abs( x) > EPS_ZERO && dMO < 10 * EPS_ZERO && abs( x) > KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo ed equiverso con Y+
bool IsYplus( void) const
{ return ( abs( x) < EPS_ZERO && y > EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( z), abs( x)) ;
return ( y > EPS_ZERO && dMO < 10 * EPS_ZERO && y > KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo ed equiverso con Y-
bool IsYminus( void) const
{ return ( abs( x) < EPS_ZERO && y < - EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( z), abs( x)) ;
return ( y < -EPS_ZERO && dMO < 10 * EPS_ZERO && y < -KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo a Y
bool IsY( void) const
{ return ( abs( x) < EPS_ZERO && abs( y) > EPS_ZERO && abs( z) < EPS_ZERO) ; }
{ double dMO = std::max( abs( z), abs( x)) ;
return ( abs( y) > EPS_ZERO && dMO < 10 * EPS_ZERO && abs( y) > KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo ed equiverso con Z+
bool IsZplus( void) const
{ return ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO && z > EPS_ZERO) ; }
{ double dMO = std::max( abs( x), abs( y)) ;
return ( z > EPS_ZERO && dMO < 10 * EPS_ZERO && z > KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo ed equiverso con Z-
bool IsZminus( void) const
{ return ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO && z < - EPS_ZERO) ; }
{ double dMO = std::max( abs( x), abs( y)) ;
return ( z < -EPS_ZERO && dMO < 10 * EPS_ZERO && z < -KV_BIG * dMO) ; }
//! Verifica se il vettore è parallelo a Z
bool IsZ( void) const
{ return ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO && abs( z) > EPS_ZERO) ; }
{ double dMO = std::max( abs( x), abs( y)) ;
return ( abs( z) > EPS_ZERO && dMO < 10 * EPS_ZERO && abs( z) > KV_BIG * dMO) ; }
//! Verifica se il vettore è generico
bool IsGeneric( void) const
{ return (( abs( x) > EPS_ZERO && abs( y) > EPS_ZERO) ||
( abs( y) > EPS_ZERO && abs( z) > EPS_ZERO) ||
( abs( z) > EPS_ZERO && abs( x) > EPS_ZERO)) ; }
{ return ( ! IsX() && ! IsY() && ! IsZ()) ; }
//! Somma sul posto con altro vettore
Vector3d& operator +=( const Vector3d& vtV)
{ this->x += vtV.x ; this->y += vtV.y ; this->z += vtV.z ; return *this ; }
@@ -141,7 +149,9 @@ class EGK_EXPORT Vector3d
bool GetAngleXY( const Vector3d& vtEnd, double& dAngDeg) const ;
//! \brief Calcolo angolo di rotazione per portare la componente del vettore perpendicolare
//! all'asse di rotazione sulla stessa direzione della componente perpendicolare di vtEnd
bool GetRotation( const Vector3d& vtEnd, const Vector3d& vtAx, double& dAngDeg, bool& bDet) const ;
bool GetRotation( const Vector3d& vtEnd, const Vector3d& vtAx, double dEpsZero, double& dAngDeg, bool& bDet) const ;
bool GetRotation( const Vector3d& vtEnd, const Vector3d& vtAx, double& dAngDeg, bool& bDet) const
{ return GetRotation( vtEnd, vtAx, EPS_ZERO, dAngDeg, bDet) ;}
public :
union {
+18 -9
View File
@@ -64,18 +64,27 @@ class __declspec( novtable) IVolZmap : public IGeoObj
virtual int GetResolution( void) const = 0 ;
virtual bool ChangeResolution( int nDexvoxRatio) = 0 ;
virtual bool SetToolTolerances( double dLinTol, double dAngTolDeg = 90) = 0 ;
virtual bool SetStdTool( const std::string& sToolName, double dH, double dR, double dCornR, double dCutterH, int nFlag) = 0 ;
virtual bool SetStdTool( const std::string& sToolName,
double dH, double dR, double dCornR, double dCutterH, int nFlag, bool bFirst) = 0 ;
virtual bool SetAdvTool( const std::string& sToolName,
double dH, double dR, double dTipH, double dTipR, double dCornR, double dCutterH, int nFlag) = 0 ;
double dH, double dR, double dTipH, double dTipR, double dCornR, double dCutterH, int nFlag, bool bFirst) = 0 ;
virtual bool SetSawTool( const std::string& sToolName,
double dH, double dR, double dThick, double dStemR, double dCornR, int nFlag) = 0 ;
virtual bool SetGenTool( const std::string& sToolName, const ICurveComposite* pToolOutline, int nFlag) = 0 ;
virtual bool SetMortiserTool( const std::string& sToolName, double dH, double dW, double dTh, double dRc, int nFlag) = 0 ;
virtual bool SetChiselTool( const std::string& sToolName, double dH, double dW, double dTh, int nFlag) = 0 ;
virtual bool ResetTool( void) = 0 ;
double dH, double dR, double dThick, double dStemR, double dCornR, int nFlag, bool bFirst) = 0 ;
virtual bool SetGenTool( const std::string& sToolName,
const ICurveComposite* pToolOutline, int nFlag, bool bFirst) = 0 ;
virtual bool SetMortiserTool( const std::string& sToolName,
double dH, double dW, double dTh, double dRc, int nFlag, bool bFirst) = 0 ;
virtual bool SetChiselTool( const std::string& sToolName,
double dH, double dW, double dTh, int nFlag, bool bFirst) = 0 ;
virtual int GetToolCount( void) const = 0 ;
virtual bool SetCurrTool( int nCurrTool) = 0 ;
virtual bool ResetTools( void) = 0 ;
virtual const ICurveComposite& GetToolOutline( bool bApprox = false) const = 0 ;
virtual bool MillingStep( const Point3d& ptPs, const Vector3d& vtDs, const Point3d& ptPe, const Vector3d& vtDe) = 0 ;
virtual bool MillingStep( const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs,
virtual bool MillingStep( int nCurrTool,
const Point3d& ptPs, const Vector3d& vtDs,
const Point3d& ptPe, const Vector3d& vtDe) = 0 ;
virtual bool MillingStep( int nCurrTool,
const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs,
const Point3d& ptPe, const Vector3d& vtDe, const Vector3d& vtAe) = 0 ;
virtual bool GetDepth( const Point3d& ptP, const Vector3d& vtDir, double& dInLength, double& dOutLength, bool bExact) const = 0 ;
virtual bool GetLineIntersection( const Point3d& ptP, const Vector3d& vtD, ILZIVECTOR& vIntersInfo) const = 0 ;
+3 -5
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2014-2019
// EgalTech 2014-2022
//----------------------------------------------------------------------------
// File : EGrScene.h Data : 13.02.14 Versione : 2.1i2
// File : EGrScene.h Data : 22.10.22 Versione : 2.4j1
// Contenuto : Dichiarazione della interfaccia IEGrScene per scena OpenGL.
//
//
@@ -95,7 +95,7 @@ class IEGrScene
virtual bool SetGridGeo( double dSnapStep, int nMinLineSstep, int nMajLineSstep, int nExtSstep) = 0 ;
virtual bool SetGridColor( Color colMinLine, Color colMajLine) = 0 ;
virtual void GetGridParam( double& dSnapStep, int& nExtStep) const = 0 ;
virtual bool GetShowGrid() = 0 ;
virtual bool GetShowGrid( void) = 0 ;
// Glob Frame
virtual bool SetGlobFrameShow( bool bShow) = 0 ;
// Direct
@@ -142,8 +142,6 @@ class IEGrScene
// Image
virtual bool GetImage( int nShowMode, Color colBackTop, Color colBackBottom,
int nDestWidth, int nDestHeight, const std::string& sFile) = 0 ;
} ;
//-----------------------------------------------------------------------------
+15 -5
View File
@@ -114,10 +114,12 @@ EIN_EXPORT BOOL __stdcall EgtImportStl( const wchar_t* wsFilePath, double dScale
EIN_EXPORT BOOL __stdcall EgtImport3MF( const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtAdvancedImportIsEnabled( void) ;
EIN_EXPORT BOOL __stdcall EgtAdvancedImport( const wchar_t* wsFilePath, double dLinToler) ;
EIN_EXPORT BOOL __stdcall EgtExportDxf( int nId, const wchar_t* wsFilePath, int nFlag) ;
EIN_EXPORT BOOL __stdcall EgtExportStl( int nId, const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtExport3MF( int nId, const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtExportSvg( int nId, const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtExportDxf( int nId, const wchar_t* wsFilePath, int nFlag, int nFilter) ;
EIN_EXPORT BOOL __stdcall EgtExportStl( int nId, const wchar_t* wsFilePath, int nFilter) ;
EIN_EXPORT BOOL __stdcall EgtExport3MF( int nId, const wchar_t* wsFilePath, int nFilter) ;
EIN_EXPORT BOOL __stdcall EgtExportSvg( int nId, const wchar_t* wsFilePath, int nFilter) ;
EIN_EXPORT BOOL __stdcall EgtSetThreeJSLibDir( const wchar_t* wsThreeJSLibDir) ;
EIN_EXPORT BOOL __stdcall EgtExportThreeJS( int nId, const wchar_t* wsFilePath, int nFilter) ;
// BeamManager
EIN_EXPORT BOOL __stdcall EgtInitBeamMgr( int nFlag) ;
@@ -133,6 +135,8 @@ EIN_EXPORT BOOL __stdcall EgtBeamSetPartBox( double dLength, double dHeight, dou
EIN_EXPORT BOOL __stdcall EgtBeamGetSideData( int nSide,
double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3],
double* pdLength, double* pdWidth, double* pdHeight) ;
EIN_EXPORT BOOL __stdcall EgtBeamShowFacesName( BOOL bShow) ;
EIN_EXPORT BOOL __stdcall EgtBeamShowLoadingSide( BOOL bShow, BOOL bFromLeft) ;
EIN_EXPORT int __stdcall EgtBeamAddProcess( int nGroup, int nProc, int nSide, const wchar_t* wsDes, int nProcId,
const double ptOrig[3], const double vX[3], const double vY[3], const double vZ[3],
int nPar, const double vPar[], const wchar_t* wsPar, const wchar_t* wsUAtts,
@@ -174,7 +178,7 @@ EIN_EXPORT BOOL __stdcall EgtLuaCallFunction( const wchar_t* wsFun) ;
EIN_EXPORT BOOL __stdcall EgtLuaEvalNumExpr( const wchar_t* wsExpr, double* pdVal) ;
EIN_EXPORT BOOL __stdcall EgtLuaEvalStringExpr( const wchar_t* wsExpr, wchar_t*& wsVal) ;
EIN_EXPORT BOOL __stdcall EgtLuaExecLine( const wchar_t* wsLine) ;
EIN_EXPORT BOOL __stdcall EgtLuaExecFile( const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtLuaExecFile( const wchar_t* wsFilePath, BOOL bLogInfo) ;
EIN_EXPORT BOOL __stdcall EgtLuaRequire( const wchar_t* wsFilePath) ;
EIN_EXPORT BOOL __stdcall EgtLuaGetLastError( wchar_t*& wsError) ;
@@ -512,10 +516,12 @@ EIN_EXPORT BOOL __stdcall EgtMergeCurvesInCurveCompo( int nId, double dLinTol, B
// GeomDb Surf Modify
EIN_EXPORT BOOL __stdcall EgtInvertSurface( int nId) ;
EIN_EXPORT int __stdcall EgtExplodeSurface( int nId, int* pnCount) ;
EIN_EXPORT BOOL __stdcall EgtApproxSurface( int nId, double dLinTol) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrAdd( int nId1, int nId2) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrSubtract( int nId1, int nId2) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrIntersect( int nId1, int nId2) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrOffset( int nId, double dDist, int nType) ;
EIN_EXPORT int __stdcall EgtSurfTmToTriangles( int nId, int* pnCount) ;
EIN_EXPORT BOOL __stdcall EgtSurfTmRemoveFacet( int nId, int nFacet) ;
EIN_EXPORT BOOL __stdcall EgtCutSurfTmPlane( int nId, const double ptOn[3], const double vtN[3], BOOL bSaveOnEq, int nRefType) ;
EIN_EXPORT BOOL __stdcall EgtCutSurfTmClosedCurve( int nSurfId, int nCurveId, BOOL bSaveOnEq) ;
@@ -562,11 +568,15 @@ EIN_EXPORT BOOL __stdcall EgtArcNormVersor( int nId, int nRefId, double vtNorm[3
EIN_EXPORT BOOL __stdcall EgtCurveCompoCenter( int nId, int nSimpCrv, int nRefId, double ptCen[3]) ;
// GeomDb Surf Get
EIN_EXPORT BOOL __stdcall EgtSurfArea( int nId, double* pdArea) ;
EIN_EXPORT BOOL __stdcall EgtSurfIsClosed( int nId) ;
EIN_EXPORT BOOL __stdcall EgtSurfVolume( int nId, double* pdVol) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrNormVersor( int nId, int nRefId, double vtNorm[3]) ;
EIN_EXPORT BOOL __stdcall EgtSurfFrGrossArea( int nId, double* pdArea) ;
EIN_EXPORT int __stdcall EgtSurfFrChunkCount( int nId) ;
EIN_EXPORT int __stdcall EgtSurfFrChunkSimpleClassify( int nId1, int nChunk1, int nId2, int nChunk2, double dToler) ;
EIN_EXPORT int __stdcall EgtExtractSurfFrChunkLoops( int nId, int nChunk, int nDestGrpId, int* pnCount) ;
EIN_EXPORT int __stdcall EgtSurfTmPartCount( int nId) ;
EIN_EXPORT int __stdcall EgtSurfTmFacetCount( int nId) ;
EIN_EXPORT int __stdcall EgtSurfTmFacetFromTria( int nId, int nT) ;
EIN_EXPORT BOOL __stdcall EgtSurfTmFacetNearestEndPoint( int nId, int nFacet, const double ptNear[3], int nRefId,
+2 -2
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2015-2019
// EgalTech 2015-2023
//----------------------------------------------------------------------------
// File : EmkSimuGenConst.h Data : 05.08.19 Versione : 2.1h1
// File : EmkSimuGenConst.h Data : 16.01.23 Versione : 2.5a2
// Contenuto : Costanti per simulazione e generazione.
//
//
+8
View File
@@ -36,6 +36,7 @@ enum FileType { FT_NULL = 0,
FT_JT = 35,
FT_VRML = 36,
FT_C3D = 37,
FT_HTML = 51,
FT_TSC = 101,
FT_LUA = 102} ;
@@ -84,6 +85,13 @@ enum CrvRegClass { CRC_NULL = 0,
CRC_ON = 3,
CRC_INTERS = 4} ;
//----------------- Costanti tipo estremi di superficie swept con sezione rettangolare ----------
enum RSCapType { RSCT_NONE = 0, // come RSCAP_NONE
RSCT_FLAT = 1, // come RSCAP_FLAT
RSCT_ROUND = 2, // come RSCAP_ROUND
RSCT_BEVEL = 3} ; // come RSCAP_BEVEL
//----------------- Costanti flag import CNC -----------------------------------
enum EicFlag { EIC_FLAG_NONE = 0, // come EImCncFlag::EICFLAG_NONE
EIC_FLAG_CHAIN = 1, // come EImCncFlag::EICFLAG_CHAIN
+34 -15
View File
@@ -66,6 +66,7 @@ EXE_EXPORT bool ExeGetMemoryInfo( std::string& sMem) ;
EXE_EXPORT bool ExeOutLog( const std::string& sMsg, int nDebugLevel = 0) ;
EXE_EXPORT bool ExeSetEnableUI( bool bEnableUI) ;
EXE_EXPORT bool ExeGetEnableUI( void) ;
EXE_EXPORT int ExeMessageBox( const std::string& sText, const std::string& sTitle, int nType) ;
EXE_EXPORT bool ExeSetProcessEvents( pfProcEvents pFun) ;
EXE_EXPORT int ExeProcessEvents( int nProg, int nPause) ;
EXE_EXPORT bool ExeSetOutText( pfOutText pFun) ;
@@ -111,7 +112,6 @@ EXE_EXPORT bool ExeSaveMachGroupToFile( int nMGroupId, const std::string& sFileP
// Exchange
EXE_EXPORT int ExeGetFileType( const std::string& sFilePath) ;
EXE_EXPORT bool ExeSetBtlAuxDir( const std::string& sBtlAuxDir) ;
EXE_EXPORT bool ExeSetThreeJSAuxDir( const std::string & sThreeJSAuxDir) ;
EXE_EXPORT bool ExeImportBtl( const std::string& sFilePath, int nFlag) ;
EXE_EXPORT bool ExeImportBtlx( const std::string& sFilePath, int nFlag) ;
EXE_EXPORT bool ExeImportCnc( const std::string& sFilePath, int nFlag) ;
@@ -122,10 +122,11 @@ EXE_EXPORT bool ExeImportStl( const std::string& sFilePath, double dScaleFactor)
EXE_EXPORT bool ExeImport3MF( const std::string& sFilePath) ;
EXE_EXPORT bool ExeAdvancedImportIsEnabled( void) ;
EXE_EXPORT bool ExeAdvancedImport( const std::string& sFilePath, double dToler = 0.1) ;
EXE_EXPORT bool ExeExportDxf( int nId, const std::string& sFilePath, int nFlag = 1) ;
EXE_EXPORT bool ExeExportStl( int nId, const std::string& sFilePath) ;
EXE_EXPORT bool ExeExport3MF( int nId, const std::string& sFilePath) ;
EXE_EXPORT bool ExeExportDxf( int nId, const std::string& sFilePath, int nFlag = 1, int nFilter = 393) ;
EXE_EXPORT bool ExeExportStl( int nId, const std::string& sFilePath, int nFilter = 393) ;
EXE_EXPORT bool ExeExport3MF( int nId, const std::string& sFilePath, int nFilter = 393) ;
EXE_EXPORT bool ExeExportSvg( int nId, const std::string& sFilePath, int nFilter = 393) ;
EXE_EXPORT bool ExeSetThreeJSLibDir( const std::string & sThreeJSLibDir) ;
EXE_EXPORT bool ExeExportThreeJS( int nId, const std::string& sFilePath, int nFilter = 393) ;
// BeamManager
@@ -140,6 +141,8 @@ EXE_EXPORT bool ExeBeamSetPartName( const std::string& sName) ;
EXE_EXPORT bool ExeBeamSetPartCount( int nCount) ;
EXE_EXPORT bool ExeBeamSetPartBox( double dLength, double dHeight, double dWidth, bool bUpdate = true) ;
EXE_EXPORT bool ExeBeamGetSideData( int nSide, Frame3d& frRef, double& dLength, double& dWidth, double& dHeight) ;
EXE_EXPORT bool ExeBeamShowFacesName( bool bShow) ;
EXE_EXPORT bool ExeBeamShowLoadingSide( bool bShow, bool bFromLeft) ;
EXE_EXPORT int ExeBeamAddProcess( int nGroup, int nProc, int nSide, const std::string& sDes, int nProcId,
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
int nCrvId, int nCrv2Id, bool bUpdate = true) ;
@@ -181,7 +184,7 @@ EXE_EXPORT bool ExeLuaCallFunction( const std::string& sFun) ;
EXE_EXPORT bool ExeLuaEvalNumExpr( const std::string& sExpr, double* pdVal) ;
EXE_EXPORT bool ExeLuaEvalStringExpr( const std::string& sExpr, std::string& sVal) ;
EXE_EXPORT bool ExeLuaExecLine( const std::string& sLine) ;
EXE_EXPORT bool ExeLuaExecFile( const std::string& sFilePath) ;
EXE_EXPORT bool ExeLuaExecFile( const std::string& sFilePath, bool LogInfo = true) ;
EXE_EXPORT bool ExeLuaRequire( const std::string& sFilePath) ;
EXE_EXPORT bool ExeLuaGetLastError( std::string& sError) ;
@@ -222,6 +225,14 @@ EXE_EXPORT int ExeCreateVerticalDimension( int nParentId, const Point3d& ptP1,
const Point3d& ptDim, const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateAlignedDimension( int nParentId, const Point3d& ptP1, const Point3d& ptP2,
const Point3d& ptDim, const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateRadialDimension( int nParentId, int nCrvId, const Point3d& ptDim, const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateDiametralDimension( int nParentId, int nCrvId, const Point3d& ptDim, const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateAngularDimension( int nParentId, const Point3d& ptP1, const Point3d& ptV, const Point3d& ptP2,
const Point3d& ptDim, const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateAngularDimensionFromLines( int nParentId, const INTVECTOR vLineIds, const Point3d& ptDim,
const std::string& sText, int nRefType) ;
EXE_EXPORT int ExeCreateAngularDimensionFromArc( int nParentId, int nCrvId, const Point3d& ptDim,
const std::string& sText, int nRefType) ;
// GeomDB Create Curve
EXE_EXPORT int ExeCreateLine( int nParentId, const Point3d& ptIni, const Point3d& ptFin, int nRefType) ;
@@ -329,6 +340,8 @@ EXE_EXPORT int ExeCreateSurfTmByRevolve( int nParentId, int nCrvId,
EXE_EXPORT int ExeCreateSurfTmByScrewing( int nParentId, int nCrvId,
const Point3d& ptAx, const Vector3d& vtAx,
double dAngRotDeg, double dMove, bool bCapEnds, double dLinTol, int nRefType) ;
EXE_EXPORT int ExeCreateSurfTmRectSwept( int nParentId, double dDimH, double dDimV, double dBevelH, double dBevelV,
int nGuideId, int nCapType, double dLinTol) ;
EXE_EXPORT int ExeCreateSurfTmSwept( int nParentId, int nSectId, int nGuideId, bool bCapEnds, double dLinTol) ;
EXE_EXPORT int ExeCreateSurfTmRuled( int nParentId, int nPtOrCrvId1, int nPtOrCrvId2, int nType, double dLinTol) ;
EXE_EXPORT int ExeCreateSurfTmByTriangles( int nParentId, const INTVECTOR& vIds, bool bErase) ;
@@ -468,6 +481,7 @@ EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, DBLVECTOR& vdInfo)
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, STRVECTOR& vsInfo) ;
EXE_EXPORT bool ExeExistsInfo( int nId, const std::string& sKey) ;
EXE_EXPORT bool ExeRemoveInfo( int nId, const std::string& sKey) ;
EXE_EXPORT bool ExeGetAllInfo( int nId, STRVECTOR& vsInfo) ;
EXE_EXPORT bool ExeSetTextureName( int nId, const std::string& sTxrName) ;
EXE_EXPORT bool ExeSetTextureFrame( int nId, const Frame3d& frTxrRef, int nRefType) ;
EXE_EXPORT bool ExeRemoveTextureData( int nId) ;
@@ -516,7 +530,8 @@ EXE_EXPORT bool ExeChangeClosedCurveStart( int nId, double dU) ;
EXE_EXPORT bool ExeChangeClosedCurveStartPoint( int nId, const Point3d& ptP, int nRefType) ;
EXE_EXPORT bool ExeModifyCurveStartPoint( int nId, const Point3d& ptP, int nRefType) ;
EXE_EXPORT bool ExeModifyCurveEndPoint( int nId, const Point3d& ptP, int nRefType) ;
EXE_EXPORT bool ExeSpiralizeCurve( int nId, double dDelta) ;
EXE_EXPORT bool ExeSpiralizeCurveAlongExtrusion( int nId, double dDelta) ;
EXE_EXPORT bool ExeSpiralizeCurveAlongGuide( int nCrvId, int nGuideId, double dLinTol) ;
EXE_EXPORT bool ExeModifyCurveExtrusion( const INTVECTOR& vIds, const Vector3d& vtExtr, int nRefType) ;
EXE_EXPORT bool ExeModifyCurveThickness( const INTVECTOR& vIds, double dThick) ;
EXE_EXPORT bool ExeTrimCurveStartAtLen( int nId, double dLen) ;
@@ -565,6 +580,7 @@ EXE_EXPORT bool ExeReorderCurvesInGroup( int nGroupId, const Point3d& ptNear, in
// GeomDb Surf Modify
EXE_EXPORT bool ExeInvertSurface( const INTVECTOR& vIds) ;
EXE_EXPORT int ExeExplodeSurface( int nId, int* pnCount) ;
EXE_EXPORT bool ExeApproxSurface( int nId, double dLinTol) ;
EXE_EXPORT bool ExeSurfFrAdd( int nId1, int nId2) ;
EXE_EXPORT bool ExeSurfFrSubtract( int nId1, int nId2) ;
EXE_EXPORT bool ExeSurfFrIntersect( int nId1, int nId2) ;
@@ -589,20 +605,20 @@ EXE_EXPORT int ExeExplodeVolume( int nId, int* pnCount) ;
EXE_EXPORT bool ExeVolZmapChangeResolution( int nId, int nNewRes) ;
EXE_EXPORT bool ExeRemoveVolZmapPart( int nId, int nPart) ;
EXE_EXPORT bool ExeVolZmapSetStdTool( const INTVECTOR& vIds, const std::string& sToolName,
double dLen, double dDiam, double dCornR, double dCutterH, int nFlag) ;
double dLen, double dDiam, double dCornR, double dCutterH, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapSetAdvTool( const INTVECTOR& vIds, const std::string& sToolName,
double dLen, double dDiam, double dTipLen, double dTipDiam, double dCornR, double dCutterH, int nFlag) ;
double dLen, double dDiam, double dTipLen, double dTipDiam, double dCornR, double dCutterH, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapSetSawTool( const INTVECTOR& vIds, const std::string& sToolName,
double dLen, double dDiam, double dThick, double dStemDiam, double dCornR, int nFlag) ;
EXE_EXPORT bool ExeVolZmapSetGenTool( const INTVECTOR& vIds, const std::string& sToolName, int nToolSectId, int nFlag) ;
double dLen, double dDiam, double dThick, double dStemDiam, double dCornR, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapSetGenTool( const INTVECTOR& vIds, const std::string& sToolName, int nToolSectId, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapSetMortiserTool( const INTVECTOR& vIds, const std::string& sToolName,
double dLen, double dWidth, double dThick, double dCornR, int nFlag) ;
double dLen, double dWidth, double dThick, double dCornR, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapSetChiselTool( const INTVECTOR& vIds, const std::string& sToolName,
double dLen, double dWidth, double dThick, int nFlag) ;
EXE_EXPORT bool ExeVolZmapResetTool( const INTVECTOR& vIds) ;
double dLen, double dWidth, double dThick, int nFlag, bool bFirst) ;
EXE_EXPORT bool ExeVolZmapResetTools( const INTVECTOR& vIds) ;
EXE_EXPORT int ExeVolZmapGetToolOutline( int nId, int nDestGrpId, bool bApprox = false) ;
EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vector3d& vtDs,
const Point3d& ptPe, const Vector3d& vtD, int nRefTypee) ;
const Point3d& ptPe, const Vector3d& vtD, int nRefType) ;
EXE_EXPORT bool ExeVolZmapMillingStep( int nId, const Point3d& ptPs, const Vector3d& vtDs, const Vector3d& vtAs,
const Point3d& ptPe, const Vector3d& vtDe, const Vector3d& vtAe, int nRefType) ;
EXE_EXPORT bool ExeCutVolZmapPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, int nRefType) ;
@@ -638,6 +654,7 @@ EXE_EXPORT bool ExeArcRadius( int nId, double* pdRad) ;
EXE_EXPORT bool ExeArcAngCenter( int nId, double* pdAngDeg) ;
EXE_EXPORT bool ExeArcDeltaN( int nId, double* pdDeltaN) ;
EXE_EXPORT bool ExeArcNormVersor( int nId, int nRefId, Vector3d& vtNorm) ;
EXE_EXPORT bool ExeCurveCompoLength( int nId, int nSimpCrv, double& dLen) ;
EXE_EXPORT bool ExeCurveCompoCenter( int nId, int nSimpCrv, int nRefId, Point3d& ptCen) ;
EXE_EXPORT bool ExeCurveCompoRadius( int nId, int nSimpCrv, double& dRad) ;
EXE_EXPORT bool ExeCurveCompoAngCenter( int nId, int nSimpCrv, double& dAngCen) ;
@@ -645,6 +662,7 @@ EXE_EXPORT bool ExeCurveCompoNormVersor( int nId, int nSimpCrv, int nRefId, Vect
// GeomDb Surf Get
EXE_EXPORT bool ExeSurfArea( int nId, double& dArea) ;
EXE_EXPORT bool ExeSurfIsClosed( int nId) ;
EXE_EXPORT bool ExeSurfVolume( int nId, double& dVol) ;
EXE_EXPORT bool ExeSurfFrNormVersor( int nId, int nRefId, Vector3d& vtNorm) ;
EXE_EXPORT bool ExeSurfFrGrossArea( int nId, double& dArea) ;
@@ -654,6 +672,7 @@ EXE_EXPORT int ExeSurfFrChunkSimpleClassify( int nId1, int nChunk1, int nId2, i
EXE_EXPORT int ExeExtractSurfFrChunkLoops( int nId, int nChunk, int nDestGrpId, int* pnCount) ;
EXE_EXPORT int ExeSurfFrGetZigZagInfill( int nId, int nDestGrpId, double dStep, double dAng, bool bStepCorrection,
bool bInvert, int* pnCount) ;
EXE_EXPORT int ExeSurfTmPartCount( int nId) ;
EXE_EXPORT int ExeSurfTmFacetCount( int nId) ;
EXE_EXPORT int ExeSurfTmFacetFromTria( int nId, int nT) ;
EXE_EXPORT bool ExeSurfTmFacetAdjacencies( int nId, int nFacet, INTMATRIX& vAdj) ;
@@ -757,6 +776,7 @@ EXE_EXPORT int ExeParPlanesSurfTmInters( const Point3d& ptOn, const Vector3d& vt
EXE_EXPORT int ExeSurfTmSurfTmInters( int nId1, int nId2, int nDestGrpId, double dToler,
int* pnPntCount, int* pnCrvCount, int* pnSrfCount) ;
EXE_EXPORT int ExePlaneCurveInters( const Point3d& ptOn, const Vector3d& vtN, const int nId, const int nDestGrpId, const int nRefType, int* pnCount) ;
EXE_EXPORT int ExeCurveCurveInters( const int nId1, const int nId2, const int nDestGrpId, int* pnPntCount, int* pnCrvCount) ;
EXE_EXPORT bool ExeLineVolZmapInters( const Point3d& ptP, const Vector3d& vtDir, int nId, int nRefType, INTDBLVECTOR& vInters) ;
EXE_EXPORT int ExePlaneVolZmapInters( const Point3d& ptOn, const Vector3d& vtN, int nId, int nDestGrpId, int nRefType,
int* pnCount) ;
@@ -969,7 +989,6 @@ EXE_EXPORT bool ExeTdbGetToolHolderDir( std::string& sTHolderDir) ;
EXE_EXPORT bool ExeTdbExport( const STRVECTOR& vsToolsNames, const std::string& sOutFile) ;
EXE_EXPORT bool ExeTdbToBeImported( const std::string& sFile, STRVECTOR& vsToolsNames, INTVECTOR& vToolsTypes) ;
EXE_EXPORT bool ExeTdbImport( const std::string& sFile, const STRVECTOR& vsToolsToImport, const STRVECTOR& vsToolsNames, STRVECTOR& vsImported) ;
// Setup
EXE_EXPORT int ExeGetCurrSetup( void) ;
EXE_EXPORT bool ExeGetDefaultSetupName( std::string& sName) ;
+4 -3
View File
@@ -1,7 +1,7 @@
//----------------------------------------------------------------------------
// EgalTech 2015-2022
// EgalTech 2015-2023
//----------------------------------------------------------------------------
// File : EgtKeyCodes.h Data : 05.09.22 Versione : 2.4i1
// File : EgtKeyCodes.h Data : 01.01.23 Versione : 2.5a1
// Contenuto : Costanti per codici di protezione librerie di base.
//
//
@@ -16,6 +16,7 @@
// 04.08.20 DS Portato a 22 KEY_BASELIB_VER.
// 01.01.21 DS Nuova gestione KEY_BASELIB_VER con versione prodotto e mese.
// 01.01.22 DS Passaggio a versione 24.
// 01.01.23 DS Passaggio a versione 25.
//
//----------------------------------------------------------------------------
@@ -23,7 +24,7 @@
//----------------------------------------------------------------------------
const int KEY_BASELIB_PROD = 207 ;
const int KEY_BASELIB_VER = 2410 ;
const int KEY_BASELIB_VER = 2504 ;
const int KEY_BASELIB_LEV = 1 ;
//----------------------------------------------------------------------------
+8 -3
View File
@@ -1,13 +1,13 @@
//----------------------------------------------------------------------------
// EgalTech 2013-2013
// EgalTech 2013-2023
//----------------------------------------------------------------------------
// File : EgtPointerOwner.h Data : 04.12.13 Versione : 1.4a3
// File : EgtPointerOwner.h Data : 27.03.23 Versione : 2.5c3
// Contenuto : Dichiarazione classe template per puntatore con auto rilascio.
//
//
//
// Modifiche : 25.11.13 DS Creazione modulo.
//
// 27.03.23 DS Aggiunta Set( PtrOwner<T2>& RPT).
//
//----------------------------------------------------------------------------
@@ -25,6 +25,11 @@ class PtrOwner
PtrOwner( const PtrOwner<T>& RPT) = delete ;
~PtrOwner( void) { Reset() ; }
bool Set( T* pT) { Reset() ; m_pT = pT ; return ( m_pT != nullptr) ; }
template <class T2> bool Set( PtrOwner<T2>& RPT)
{ if ( (void*) this == (void*) &RPT)
return true ;
return Set( Release( RPT)) ;
}
void Reset( void) { if ( m_pT != nullptr) delete m_pT ; m_pT = nullptr ; }
T& operator*() const { return *m_pT ; }
T* operator->() const { return m_pT ; }
+6
View File
@@ -28,3 +28,9 @@ typedef std::list<std::string> STRLIST ;
typedef std::pair<int,std::string> INTSTR ; // coppia intero, stringa
typedef std::vector<INTSTR> INTSTRVECTOR ; // vettore di coppie intero, stringa
typedef std::list<INTSTR> INTSTRLIST ; // lista di coppie intero, stringa
//----------------------------------------------------------------------------
// Raccolte di coppie double, string
typedef std::pair<double,std::string> DBLSTR ; // coppia double, stringa
typedef std::vector<DBLSTR> DBLSTRVECTOR ; // vettore di coppie double, stringa
typedef std::list<DBLSTR> DBLSTRLIST ; // lista di coppie double, stringa