Compare commits
117 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1c4109e9a2 | |||
| 9144694734 | |||
| db1243aba5 | |||
| faa791c428 | |||
| 4c7cf4d0e4 | |||
| 6c983db4d7 | |||
| d497fb30cd | |||
| 3f05d8d830 | |||
| 56a10b43b4 | |||
| 0288f200f8 | |||
| c8370b9dc7 | |||
| 19c2dffa32 | |||
| 4df6b4f95d | |||
| cb3f9075e6 | |||
| 992073ea80 | |||
| 90bac7ecf8 | |||
| d4e0b3183f | |||
| 886e63f1a0 | |||
| 7f4d123700 | |||
| 29078f12d3 | |||
| 040b3cc386 | |||
| 997bf37426 | |||
| 70b81d88c3 | |||
| e1d42cfca8 | |||
| 70ae6c8cb2 | |||
| dc8b2e1fe6 | |||
| 58efb93e9f | |||
| 532a6f487c | |||
| d50bf5e4da | |||
| f6429f8361 | |||
| 6b3d3a39be | |||
| 46baa14304 | |||
| 9357f8fef0 | |||
| 966a4ff0c1 | |||
| 4f82bc1a6a | |||
| 35982ecc97 | |||
| b6b36bbf01 | |||
| 24c1414752 | |||
| d54c5cf3a3 | |||
| 63bc857b1c | |||
| c79c941621 | |||
| b52b844857 | |||
| c0073596fd | |||
| 8f3a5c8d67 | |||
| dd73dd5783 | |||
| b5a1142d5b | |||
| 0dd071a104 | |||
| b7f2dadcfe | |||
| d28f8a1038 | |||
| 12e3b407b0 | |||
| 0b696228d7 | |||
| 50b03f11cd | |||
| 78974f8045 | |||
| acfea6a2d3 | |||
| 3e045e7ab6 | |||
| 2c8ffb13ea | |||
| 83e545b466 | |||
| ea621cd6e0 | |||
| 34599980fe | |||
| 27b9bc8979 | |||
| ebae52195d | |||
| b46df7b95e | |||
| 72e5aac4bd | |||
| d7d3cd1d2f | |||
| 2724fd7da2 | |||
| 34e4585cb0 | |||
| 2e15477a6b | |||
| 281385250b | |||
| cc7de574ea | |||
| a783f67a1c | |||
| 9bcc1d8208 | |||
| 88d7bd76dd | |||
| 6243972bb8 | |||
| c8faafd10b | |||
| c0cecd27ae | |||
| 5457f4707c | |||
| 87fdfbb689 | |||
| 32a81f8382 | |||
| 6c196ca7da | |||
| 70c3695ee9 | |||
| 799548c17c | |||
| f1fb3a8b6a | |||
| b0d59a283d | |||
| c87395f201 | |||
| a8339f748a | |||
| 329e56cb9f | |||
| b552b36101 | |||
| 7e4d8cb061 | |||
| 9e53331f4b | |||
| 3c9fee6701 | |||
| 53d855cc80 | |||
| f7a539ff8d | |||
| ab8ec30e29 | |||
| 8640bd9ec0 | |||
| b2f7fa94f7 | |||
| afd6dd7855 | |||
| 1767036299 | |||
| bbb6ff6ef5 | |||
| 80588fc44c | |||
| e994bb1836 | |||
| 103ea771b4 | |||
| d07cc81d83 | |||
| 4733040613 | |||
| 236a0625f4 | |||
| 13b742e04d | |||
| 45b3427c76 | |||
| d374680aec | |||
| d16330e412 | |||
| b5b2490da5 | |||
| 130d508286 | |||
| bcae60ae52 | |||
| 4a2e309b61 | |||
| 34b4b82928 | |||
| 3223628941 | |||
| 8e8709682f | |||
| 7178e9715c | |||
| 4628b536ba |
+12
-10
@@ -1,23 +1,25 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2020-2020
|
||||
// EgalTech 2020-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EExBeamConst.h Data : 30.08.20 Versione : 2.2i1
|
||||
// File : EExBeamConst.h Data : 04.04.22 Versione : 2.4d2
|
||||
// Contenuto : Dichiarazione delle costanti per travi e pareti con BTL.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 30.08.20 DS Creazione modulo.
|
||||
//
|
||||
// 04.04.22 DS Aggiunto EIBFLAG_TRIM_WITH_OUTLINE.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
enum EImBtlFlag { EIBFLAG_NONE = 0x0000,
|
||||
EIBFLAG_FLAT_POS = 0x0001, // pezzi di piatto (prevale sul successivo)
|
||||
EIBFLAG_VERT_POS = 0x0002, // pezzi in verticale
|
||||
EIBFLAG_SPECIAL_TRIM = 0x0004, // trim speciale per pareti
|
||||
EIBFLAG_TS3_POS = 0x0008, // pezzi come in TechnoEssetre (prevale sui precedenti POS)
|
||||
EIBFLAG_SORT = 0x0010, // ordina i pezzi nel DB in base al nome
|
||||
EIBFLAG_USEUATTR = 0x0020} ; // utilizza i parametri utente U per modificare la geometria delle features
|
||||
enum EImBtlFlag { EIBFLAG_NONE = 0x0000,
|
||||
EIBFLAG_FLAT_POS = 0x0001, // pezzi di piatto (prevale sul successivo)
|
||||
EIBFLAG_VERT_POS = 0x0002, // pezzi in verticale
|
||||
EIBFLAG_SPECIAL_TRIM = 0x0004, // trim speciale per pareti
|
||||
EIBFLAG_TS3_POS = 0x0008, // pezzi come in TechnoEssetre (prevale sui precedenti POS)
|
||||
EIBFLAG_SORT = 0x0010, // ordina i pezzi nel DB in base al nome
|
||||
EIBFLAG_USEUATTR = 0x0020, // utilizza i parametri utente U per modificare la geometria delle features
|
||||
EIBFLAG_OUTL_FLAT_POS = 0x0040, // pezzi secondo outline o di piatto (prevale sui precedenti POS)
|
||||
EIBFLAG_TRIM_WITH_OUTLINE = 0x0080} ; // esegui il trim delle feature con l'outline (se presente)
|
||||
+12
-5
@@ -1,19 +1,20 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2020-2021
|
||||
// EgalTech 2020-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EExBeamMgr.h Data : 01.06.21 Versione : 2.2f1
|
||||
// File : EExBeamMgr.h Data : 06.07.22 Versione : 2.4g2
|
||||
// Contenuto : Dichiarazione della interfaccia IBeamMgr.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 30.08.20 DS Creazione modulo.
|
||||
// 01.06.21 DS Aggiunti parametri vsUAtt per Process.
|
||||
// 06.07.22 DS Aggiunta GetSideData.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExBeamConst.h"
|
||||
#include <string>
|
||||
|
||||
@@ -32,6 +33,7 @@ class __declspec( novtable) IBeamMgr
|
||||
virtual ~IBeamMgr( void) {}
|
||||
|
||||
virtual bool Init( IGeomDB* pGDB, int nFlag = 0) = 0 ;
|
||||
virtual bool SetFlag( int nFlag) = 0 ;
|
||||
virtual int CreatePart( void) = 0 ;
|
||||
virtual bool SetPart( int nPartId) = 0 ;
|
||||
virtual bool ErasePart( void) = 0 ;
|
||||
@@ -40,10 +42,15 @@ class __declspec( novtable) IBeamMgr
|
||||
virtual bool SetPartName( const std::string& sName) = 0 ;
|
||||
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, bool bUpdate = true) = 0 ;
|
||||
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
|
||||
int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ;
|
||||
virtual int ModifyProcess( int nGeomId, 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, bool bUpdate = true) = 0 ;
|
||||
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
|
||||
int nCrvId, int nCrv2Id, bool bUpdate = true) = 0 ;
|
||||
virtual bool EraseProcess( int nGeomId, bool bUpdate = true) = 0 ;
|
||||
virtual bool EnableProcess( int nGeomId, bool bEnable, bool bUpdate = true) = 0 ;
|
||||
virtual bool CalcSolid( int nPartId, bool bRecalc = false) = 0 ;
|
||||
|
||||
@@ -34,6 +34,8 @@ extern "C" {
|
||||
EEX_EXPORT void SetEExLogger( ILogger* pLogger) ;
|
||||
// imposta la chiave di protezione
|
||||
EEX_EXPORT void SetEExKey( const std::string& sKey) ;
|
||||
// imposta se chiave hardware di rete
|
||||
EEX_EXPORT void SetEExNetHwKey( bool bNetHwKey) ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgnCmdExecutor.h"
|
||||
#include "/EgtDev/Include/EGnCmdExecutor.h"
|
||||
|
||||
class IGeomDB ;
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExExportConst.h"
|
||||
#include <string>
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExExportConst.h"
|
||||
#include <string>
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExExportConst.h"
|
||||
#include <string>
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExExportConst.h"
|
||||
#include <string>
|
||||
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2022-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EExExportThreeJS.h Data : 22.10.22 Versione : 2.4j1
|
||||
// Contenuto : Dichiarazione della interfaccia IExportStl.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 22.10.22 DS Creazione modulo.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include "/EgtDev/Include/EExExportConst.h"
|
||||
#include <string>
|
||||
#include "/EgtDev/Include/EGrScene.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EEK_EXPORT
|
||||
#if defined( I_AM_EEX) // da definirsi solo nella DLL
|
||||
#define EEX_EXPORT __declspec( dllexport)
|
||||
#else
|
||||
#define EEX_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
class __declspec( novtable) IExportThreeJS
|
||||
{
|
||||
public:
|
||||
virtual ~IExportThreeJS( void) {}
|
||||
virtual bool SetOptions( int nFilter) = 0 ;
|
||||
virtual bool Export( IGeomDB* pGDB, int nId, IEGrScene* pScene, bool bUdm, const std::string& sFile) = 0 ;
|
||||
} ;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
extern "C" {
|
||||
EEX_EXPORT bool SetThreeJSLibDir( const std::string& sThreeJSLibDir) ;
|
||||
EEX_EXPORT IExportThreeJS* CreateExportThreeJS( void) ;
|
||||
}
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkGeomDB.h"
|
||||
#include "/EgtDev/Include/EGkGeomDB.h"
|
||||
#include <string>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
|
||||
+5
-2
@@ -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) ;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkArcCenTgCurvePnt.h Data : 15.03.15 Versione : 1.6c2
|
||||
// File : EGkArcCenTgCurvePnt.h Data : 15.03.15 Versione : 1.6c2
|
||||
// Contenuto : Dichiarazione funzioni per calcolo arco dati centro,
|
||||
// tangente a curva e punto vicino a finale.
|
||||
//
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkArcPntDirTgCurve.h Data : 13.03.15 Versione : 1.6c2
|
||||
// File : EGkArcPntDirTgCurve.h Data : 13.03.15 Versione : 1.6c2
|
||||
// Contenuto : Dichiarazione funzioni per calcolo arco dato punto iniziale
|
||||
// direzione e tangente a curva.
|
||||
//
|
||||
|
||||
+4
-3
@@ -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) ;
|
||||
|
||||
+7
-3
@@ -1,19 +1,20 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
// EgalTech 2013-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkBBox3d.h Data : 14.01.14 Versione : 1.5a4
|
||||
// File : EGkBBox3d.h Data : 17.08.22 Versione : 2.4h1
|
||||
// Contenuto : Dichiarazione della classe axis aligned bounding box BBox3d.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 14.01.13 DS Creazione modulo.
|
||||
// 17.08.22 DS Aggiunte GetDimX, GetDimY, GetDimZ.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGKPoint3d.h"
|
||||
#include "/EgtDev/Include/EGkPoint3d.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
@@ -72,6 +73,9 @@ class EGK_EXPORT BBox3d
|
||||
{ return m_ptMax ; }
|
||||
bool GetMinMax( Point3d& ptMin, Point3d& ptMax) const ;
|
||||
bool GetMinDim( Point3d& ptMin, double& dDimX, double& dDimY, double& dDimZ) const ;
|
||||
double GetDimX( void) const ;
|
||||
double GetDimY( void) const ;
|
||||
double GetDimZ( void) const ;
|
||||
bool GetCenterExtent( Point3d& ptCenter, Vector3d& vtExtent) const ;
|
||||
bool GetCenter( Point3d& ptCenter) const ;
|
||||
bool GetRadius( double& dRad) const ;
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkCurve.h"
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2022-202
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkCircle2Pe.h Data : 18.08.22 Versione : 2.4h2
|
||||
// Contenuto : Dichiarazione funzioni per calcolo circonferenze per 2 punti
|
||||
// diametrali.
|
||||
//
|
||||
//
|
||||
// Modifiche : 18.08.22 DS Creazione modulo.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkCurveArc.h"
|
||||
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
#if defined( I_AM_EGK) // da definirsi solo nella DLL
|
||||
#define EGK_EXPORT __declspec( dllexport)
|
||||
#else
|
||||
#define EGK_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
EGK_EXPORT ICurveArc* GetCircle2P( const Point3d& ptP1, const Point3d& ptP2, const Vector3d& vtN) ;
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCircleCenTgCurve.h Data : 12.03.15 Versione : 1.6c2
|
||||
// File : EGkCircleCenTgCurve.h Data : 12.03.15 Versione : 1.6c2
|
||||
// Contenuto : Dichiarazione funzioni per calcolo circonferenze di centro
|
||||
// dato tangenti a curve.
|
||||
//
|
||||
|
||||
@@ -60,6 +60,10 @@ class Color
|
||||
{ m_Col[ALPHA] = (( nAlpha < 0) ? 0 : (( nAlpha > MAX_ALPHA) ? MAX_ALPHA : nAlpha)) ; }
|
||||
void SetAlpha( double dAlpha)
|
||||
{ m_Col[ALPHA] = (( dAlpha < 0) ? 0 : (( dAlpha > 1) ? MAX_ALPHA : int( lround( dAlpha * MAX_ALPHA)))) ; }
|
||||
void Intensify( double dCoeff)
|
||||
{ Set( int( m_Col[RED] * dCoeff), int( m_Col[GREEN] * dCoeff), int( m_Col[BLUE] * dCoeff), m_Col[ALPHA]) ;
|
||||
if ( dCoeff > 1 && m_Col[RED] < 64 && m_Col[GREEN] < 64 && m_Col[BLUE] < 64)
|
||||
Set( 64, 64, 64, m_Col[ALPHA]) ; }
|
||||
int GetIntRed( void) const
|
||||
{ return m_Col[RED] ; }
|
||||
int GetIntGreen( void) const
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurve.h Data : 06.05.14 Versione : 1.5e3
|
||||
// File : EGkCurve.h Data : 06.05.14 Versione : 1.5e3
|
||||
// Contenuto : Dichiarazione della interfaccia ICurve.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurveArc.h Data : 22.11.13 Versione : 1.3a1
|
||||
// File : EGkCurveArc.h Data : 22.11.13 Versione : 1.3a1
|
||||
// Contenuto : Dichiarazione della interfaccia ICurveArc.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurveAux.h Data : 23.05.14 Versione : 1.5e9
|
||||
// File : EGkCurveAux.h Data : 23.05.14 Versione : 1.5e9
|
||||
// Contenuto : Dichiarazione funzioni ausiliarie per ICurve.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurveBezier.h Data : 22.11.13 Versione : 1.3a1
|
||||
// File : EGkCurveBezier.h Data : 22.11.13 Versione : 1.3a1
|
||||
// Contenuto : Dichiarazione della interfaccia ICurveBezier.
|
||||
//
|
||||
//
|
||||
|
||||
+10
-3
@@ -1,13 +1,15 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2021
|
||||
// EgalTech 2013-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurveComposite.h Data : 03.04.21 Versione : 2.3g2
|
||||
// File : EGkCurveComposite.h Data : 24.03.22 Versione : 2.4c2
|
||||
// Contenuto : Dichiarazione della interfaccia ICurveComposite.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 22.11.13 DS Creazione modulo.
|
||||
// 21.07.21 LM Aggiunto parametro opzionale a Set/GetCurveTempProp.
|
||||
// 23.01.22 DS Aggiunti metodi IsARectangle e IsATrapezoid.
|
||||
// 24.03.22 DS Aggiunto metodo AddLineTg.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -43,8 +45,9 @@ class __declspec( novtable) ICurveComposite : public ICurve
|
||||
virtual bool ChangeStartPoint( double dU) = 0 ;
|
||||
virtual bool AddPoint( const Point3d& ptStart) = 0 ;
|
||||
virtual bool AddLine( const Point3d& ptNew, bool bEndOrStart = true) = 0 ;
|
||||
virtual bool AddArcTg( const Point3d& ptNew, bool bEndOrStart = true) = 0 ;
|
||||
virtual bool AddLineTg( double dLen, bool bEndOrStart = true) = 0 ;
|
||||
virtual bool AddArc2P( const Point3d& ptOther, const Point3d& ptNew, bool bEndOrStart = true) = 0 ;
|
||||
virtual bool AddArcTg( const Point3d& ptNew, bool bEndOrStart = true) = 0 ;
|
||||
virtual bool AddJoint( double dU) = 0 ;
|
||||
virtual bool ModifyJoint( int nU, const Point3d& ptNewJoint) = 0 ;
|
||||
virtual bool RemoveJoint( int nU) = 0 ;
|
||||
@@ -53,11 +56,15 @@ 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 ;
|
||||
virtual bool IsACircle( double dLinTol, Point3d& ptCen, Vector3d& vtN, double& dRad, bool& bCCW) const = 0 ;
|
||||
virtual bool IsARectangle( double dLinTol, Point3d& ptP, Vector3d& vtL1, Vector3d& vtL2) const = 0 ;
|
||||
virtual bool IsATrapezoid( double dLinTol, Point3d& ptP, Vector3d& vtB1, Vector3d& vtL1, Vector3d& vtB2) const = 0 ;
|
||||
virtual bool SetCurveTempProp( int nCrv, int nProp, int nPropInd = 0) = 0 ;
|
||||
virtual bool GetCurveTempProp( int nCrv, int& nProp, int nPropInd = 0) const = 0 ;
|
||||
} ;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurveLine.h Data : 22.11.13 Versione : 1.3a1
|
||||
// File : EGkCurveLine.h Data : 22.11.13 Versione : 1.3a1
|
||||
// Contenuto : Dichiarazione della interfaccia ICurveLine.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
#include "/EgtDEv/Include/EgkGeomDB.h"
|
||||
#include "/EgtDEv/Include/EGkGeomDB.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
class CurveLocal
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkCurvePointDiffGeom.h Data : 26.12.13 Versione : 1.4l4
|
||||
// File : EGkCurvePointDiffGeom.h Data : 26.12.13 Versione : 1.4l4
|
||||
// Contenuto : Tipi generali per calcoli geometrici.
|
||||
//
|
||||
//
|
||||
|
||||
+3
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2020
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkDllMain.h Data : 19.09.20 Versione : 2.2i2
|
||||
// File : EGkDllMain.h Data : 19.09.20 Versione : 2.2i2
|
||||
// Contenuto : Prototipi funzioni generali della DLL.
|
||||
//
|
||||
//
|
||||
@@ -38,6 +38,8 @@ EGK_EXPORT void SetEGkLogger( ILogger* pLogger) ;
|
||||
EGK_EXPORT void SetEGkKey( const std::string& sKey) ;
|
||||
// imposta il tipo di chiave di protezione
|
||||
EGK_EXPORT void SetEGkKeyType( int nType) ;
|
||||
// imposta se chiave hardware di rete
|
||||
EGK_EXPORT void SetEGkNetHwKey( bool bNetHwKey) ;
|
||||
// permette di inizializzare il font manager
|
||||
EGK_EXPORT void InitFontManager( const std::string& sNfeFontDir, const std::string& sDefaultFont) ;
|
||||
// restituisce il direttorio dei font proprietari (Nfe)
|
||||
|
||||
@@ -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 ;
|
||||
|
||||
+5
-5
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkFrame3d.h Data : 30.05.14 Versione : 1.5e10
|
||||
// File : EGkFrame3d.h Data : 30.05.14 Versione : 1.5e10
|
||||
// Contenuto : Dichiarazione della classe Reference Frame 3d.
|
||||
//
|
||||
//
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGKPoint3d.h"
|
||||
#include "/EgtDev/Include/EGkPoint3d.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
@@ -30,8 +30,8 @@ class EGK_EXPORT Frame3d
|
||||
enum Type { ERR = 0, TOP = 1, BOTTOM = 2, FRONT = 3,
|
||||
BACK = 4, LEFT = 5, RIGHT = 6, GEN = 7} ;
|
||||
public :
|
||||
Frame3d( void)
|
||||
: m_nType( TOP), m_nZType( TOP), m_ptOrig( ORIG),
|
||||
Frame3d( bool bGlob = true)
|
||||
: m_nType( bGlob ? TOP : ERR), m_nZType( bGlob ? TOP : ERR), m_ptOrig( ORIG),
|
||||
m_vtVersX( X_AX), m_vtVersY( Y_AX), m_vtVersZ( Z_AX) {}
|
||||
Frame3d( const Point3d& ptOrig)
|
||||
: m_nType( TOP), m_nZType( TOP), m_ptOrig( ptOrig),
|
||||
@@ -43,7 +43,7 @@ class EGK_EXPORT Frame3d
|
||||
bool Set( const Point3d& ptOrig, const Vector3d& vtDirZ, const Vector3d& vtNearDirX) ;
|
||||
bool Set( const Point3d& ptOrig, Type nType) ;
|
||||
bool Set( const Point3d& ptOrig, double dAngCDeg, double dAngADeg, double dAngC1Deg) ;
|
||||
bool Reset( void) ;
|
||||
bool Reset( bool bGlob = true) ;
|
||||
bool ChangeOrig( const Point3d& ptOrig) ;
|
||||
bool Translate( const Vector3d& vtMove) ;
|
||||
bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dAngDeg) ;
|
||||
|
||||
+6
-5
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkGdbConst.h Data : 17.06.14 Versione : 1.5f5
|
||||
// File : EGkGdbConst.h Data : 17.06.14 Versione : 1.5f5
|
||||
// Contenuto : Costanti generali per DB geometrico.
|
||||
//
|
||||
//
|
||||
@@ -83,7 +83,8 @@ const std::string GDB_SI_LIST = "!LST" ; // Vettore Id entit
|
||||
const std::string GDB_SI_COPY = "!COP" ; // Id entità
|
||||
const std::string GDB_SI_MGRPONLY = "!MGO" ; // Id entità
|
||||
const std::string GDB_SI_DRAWMODE = "!DRM" ; // Flag
|
||||
const std::string GDB_SI_DUPSOU = "!DSOU" ; // Id entità
|
||||
const std::string GDB_SI_DUPLIST = "!DLST" ; // Vettore Id entità
|
||||
const std::string GDB_SI_DUPMODIF = "!DMOD" ; // Flag
|
||||
|
||||
const std::string GDB_SI_DUPSOU = "!DSOU" ; // Duplo Id entità originale
|
||||
const std::string GDB_SI_DUPLIST = "!DLST" ; // Duplo Vettore Id entità duplicate
|
||||
const std::string GDB_SI_DUPMODIF = "!DMOD" ; // Flag di sorgente per duplo modificato
|
||||
const std::string GDB_SI_DUPLOCKED = "!DLOK" ; // Flag di duplo bloccato (da non aggiornare seguendo originale)
|
||||
const std::string GDB_SI_DUPTOUPDATE = "!DTUP" ; // Flag di duplo da aggiornare quando sbloccato
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkGdbExecutor.h Data : 25.11.13 Versione : 1.3a1
|
||||
// File : EGkGdbExecutor.h Data : 25.11.13 Versione : 1.3a1
|
||||
// Contenuto : Dichiarazione della interfaccia IGdbExecutor.
|
||||
//
|
||||
//
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgnCmdExecutor.h"
|
||||
#include "/EgtDev/Include/EGnCmdExecutor.h"
|
||||
|
||||
class IGeomDB ;
|
||||
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkGdbFunct.h Data : 13.03.14 Versione : 1.5c6
|
||||
// File : EGkGdbFunct.h Data : 13.03.14 Versione : 1.5c6
|
||||
// Contenuto : Funzioni generali per DB geometrico.
|
||||
//
|
||||
//
|
||||
|
||||
+6
-4
@@ -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) ;
|
||||
|
||||
+7
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2019
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkGeoCollection.h Data : 05.11.19 Versione : 2.1k1
|
||||
// File : EGkGeoCollection.h Data : 05.11.19 Versione : 2.1k1
|
||||
// Contenuto : Raccolte di oggetti geometrici.
|
||||
//
|
||||
//
|
||||
@@ -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
|
||||
|
||||
+4
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2019
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkGeoConst.h Data : 23.11.19 Versione : 2.1k5
|
||||
// File : EGkGeoConst.h Data : 23.11.19 Versione : 2.1k5
|
||||
// Contenuto : Costanti generali per calcoli geometrici.
|
||||
//
|
||||
//
|
||||
@@ -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. ;
|
||||
|
||||
+6
-2
@@ -1,12 +1,13 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2017-2017
|
||||
// EgalTech 2017-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkGeoObjSave.h Data : 30.10.17 Versione : 1.8j5
|
||||
// File : EGkGeoObjSave.h Data : 25.04.22 Versione : 2.4d4
|
||||
// Contenuto : Funzione per salvare su file un Oggetto Geometrico.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 30.10.17 DS Creazione modulo.
|
||||
// 25.04.22 DS Aggiunti controlli.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -20,6 +21,9 @@
|
||||
bool
|
||||
SaveGeoObj( IGeoObj* pGObj, const std::string& sFile, int nFlag = GDB_SV_BIN)
|
||||
{
|
||||
// verifico validità oggetto
|
||||
if ( pGObj == nullptr || ! pGObj->IsValid())
|
||||
return false ;
|
||||
// creo GeomDB temporaneo
|
||||
PtrOwner<IGeomDB> pGeomDB( CreateGeomDB()) ;
|
||||
if ( IsNull( pGeomDB))
|
||||
|
||||
+4
-2
@@ -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 ;
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2018
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkHashGrids1d.h Data : 02.05.21 Versione : 2.4e1
|
||||
// Contenuto : Dichiarazione della classe HashGrids1d.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 04.07.15 DS Creazione modulo.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "EgtDev/Include/EGkBBox3d.h"
|
||||
#include "EgtDev/Include/EgtNumCollection.h"
|
||||
#include <unordered_map>
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
#if defined( I_AM_EGK) // da definirsi solo nella DLL
|
||||
#define EGK_EXPORT __declspec( dllexport)
|
||||
#else
|
||||
#define EGK_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
class HashGrids1d
|
||||
{
|
||||
public :
|
||||
EGK_EXPORT HashGrids1d( void) ;
|
||||
EGK_EXPORT ~HashGrids1d( void) ;
|
||||
EGK_EXPORT void SetActivationGrid( bool bActivate) ;
|
||||
EGK_EXPORT bool Add( int nObjId, const BBox3d& box) ;
|
||||
EGK_EXPORT bool Modify( int nObjId, const BBox3d& box) ;
|
||||
EGK_EXPORT bool Remove( int nObjId) ;
|
||||
EGK_EXPORT bool Update( void) ;
|
||||
EGK_EXPORT bool Find( const BBox3d& b3Test, INTVECTOR& vnIds) const ;
|
||||
EGK_EXPORT void Clear( void) ;
|
||||
|
||||
friend class HashGrid1d ;
|
||||
|
||||
private :
|
||||
struct ObjData {
|
||||
int nId ;
|
||||
BBox3d box ;
|
||||
HashGrid1d* pHGrid ;
|
||||
size_t nHash ;
|
||||
size_t nCellId ;
|
||||
ObjData( void)
|
||||
: nId( -1), box(), pHGrid( nullptr), nHash( 0), nCellId( 0) {}
|
||||
ObjData( int nI, const BBox3d& bb, HashGrid1d* pHG, size_t nH, size_t nCI)
|
||||
: nId( nI), box( bb), pHGrid( pHG), nHash( nH), nCellId( nCI) {}
|
||||
} ;
|
||||
typedef std::list<ObjData> ObjList ;
|
||||
typedef std::vector<ObjData*> PtrObjVector ;
|
||||
typedef std::unordered_map<int,ObjData*> IntPObjUmap ;
|
||||
|
||||
private :
|
||||
typedef std::list<HashGrid1d*> GridList ; // Tipo per lista di hash grid
|
||||
|
||||
private :
|
||||
void addGrid( ObjData& obj) ;
|
||||
void addList( ObjData& obj) ;
|
||||
|
||||
private :
|
||||
ObjList m_ObjsList ; // Lista degli oggetti
|
||||
IntPObjUmap m_ObjsMap ; // Map da Id a PtrObj
|
||||
PtrObjVector m_objsToAdd ; // Vettore di puntatori agli oggetti da inserire
|
||||
PtrObjVector m_nonGridObjs ; // Vettore di puntatori agli oggetti non assegnati alle griglie (per dimensioni o perchè pochi)
|
||||
GridList m_GridList ; // Lista delle griglie di dimensione fissa ( in ordine crescente di dimensione di cella)
|
||||
bool m_bActivate ; // Flag che abilita l'attivazione delle griglie
|
||||
bool m_bGridActive ; // Flag di attivazione delle griglie
|
||||
BBox3d m_b3Objs ; // Box totale di tutti gli oggetti inseriti
|
||||
} ;
|
||||
+2
-2
@@ -124,7 +124,7 @@ class IntersCurveCurve
|
||||
//! Restituisce il punto di intersezione più vicino al punto passato
|
||||
EGK_EXPORT bool GetIntersPointNearTo( int nCrv, const Point3d& ptNear, Point3d& ptI) ;
|
||||
//! Restituisce la classificazione di una curva rispetto all'altra ( nCrv=0 -> CurvaA, nCrv=1 -> CurvaB)
|
||||
EGK_EXPORT bool GetCurveClassification( int nCrv, CRVCVECTOR& ccClass) ;
|
||||
EGK_EXPORT bool GetCurveClassification( int nCrv, double dLenMin, CRVCVECTOR& ccClass) ;
|
||||
//! Restituisce la classificazione di curve chiuse secondo le regole delle regioni
|
||||
EGK_EXPORT int GetRegionCurveClassification( void) ;
|
||||
|
||||
@@ -142,7 +142,7 @@ class IntersCurveCurve
|
||||
void CrvCompoCrvCompoCalculate( const ICurve& CurveA, const ICurve& CurveB) ;
|
||||
bool AdjustIntersParams( bool bAdjCrvA, bool bAdjCrvB) ;
|
||||
bool SwapInfoAB( ICCIVECTOR& Info, int IndCrvOrd) ;
|
||||
bool CalcCurveClassification( const ICurve* pCurve, const ICCIVECTOR& Info, CRVCVECTOR& ccClass) ;
|
||||
bool CalcCurveClassification( const ICurve* pCurve, const ICCIVECTOR& Info, double dLenMin, CRVCVECTOR& ccClass) ;
|
||||
bool CalcCurveInOrOut( const ICurve* pCurveA, const ICurve* pCurveB, CRVCVECTOR& ccClass) ;
|
||||
bool GetCurveOutClass( const ICurve* pCurve, int& nClass) ;
|
||||
|
||||
|
||||
+3
-3
@@ -1,8 +1,8 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2020-2020
|
||||
// EgalTech 2020-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkIntersLineBox.h Data : 07.05.20 Versione : 2.2e1
|
||||
// Contenuto : Dichiarazione della classe intersezione linea/box.
|
||||
// File : EGkIntersLineBox.h Data : 08.01.22 Versione : 2.4a3
|
||||
// Contenuto : Dichiarazione delle funzioni intersezione linea/box.
|
||||
//
|
||||
//
|
||||
//
|
||||
|
||||
+6
-4
@@ -1,18 +1,19 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2020-2020
|
||||
// EgalTech 2020-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkIntersPlaneBox.h Data : 08.05.20 Versione : 2.2e1
|
||||
// File : EGkIntersPlaneBox.h Data : 09.01.22 Versione : 2.4a3
|
||||
// Contenuto : Dichiarazione della classe intersezione piano/box.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 08.05.20 DS Creazione modulo.
|
||||
//
|
||||
// 09.01.22 DS Aggiunta TestIntersPlaneBox.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkPlane3d.h"
|
||||
#include "/EgtDev/Include/EGkBBox3d.h"
|
||||
#include "/EgtDev/Include/EGkGeoCollection.h"
|
||||
|
||||
@@ -25,5 +26,6 @@
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
EGK_EXPORT bool IntersPlaneBox( const Point3d& ptOn, const Vector3d& vtN, const BBox3d& b3Box,
|
||||
EGK_EXPORT bool TestIntersPlaneBox( const Plane3d& plPlane, const BBox3d& b3Box) ;
|
||||
EGK_EXPORT bool IntersPlaneBox( const Plane3d& plPlane, const BBox3d& b3Box,
|
||||
PNTVECTOR& vPnt, BIPNTVECTOR& vBpt, TRIA3DVECTOR& vTria) ;
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkSurfTriMesh.h"
|
||||
#include "/EgtDev/Include/EGkHashGrids1d.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
@@ -26,3 +27,18 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
EGK_EXPORT bool IntersPlaneSurfTm( const Plane3d& plPlane, const ISurfTriMesh& Stm,
|
||||
PNTVECTOR& vPnt, BIPNTVECTOR& vBpt, TRIA3DVECTOR& vTria) ;
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
class IntersParPlanesSurfTm
|
||||
{
|
||||
public :
|
||||
EGK_EXPORT IntersParPlanesSurfTm( const Frame3d& frPlanes, const ISurfTriMesh& Stm) ;
|
||||
EGK_EXPORT bool GetInters( double dDist, PNTVECTOR& vPnt, BIPNTVECTOR& vBpt, TRIA3DVECTOR& vTria) const ;
|
||||
|
||||
private :
|
||||
bool m_bOk ;
|
||||
const Frame3d m_frPlanes ;
|
||||
const ISurfTriMesh* m_pSTm ;
|
||||
HashGrids1d m_HGrids ;
|
||||
} ;
|
||||
+13
-12
@@ -32,16 +32,17 @@ EGK_EXPORT int IntersTriaTria( const Triangle3d& trTria1, const Triangle3d& trTr
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Tipo di intersezione triangolo-triangolo
|
||||
enum IntTriaTriaType { ITTT_NO = 0, // non c'è intersezione
|
||||
ITTT_OVERLAPS = 1, // i triangoli si sovrappongono (i triangoli del poligono sono in vTria)
|
||||
ITTT_VERT_VERT = 2, // intersezione coppia di vertici
|
||||
ITTT_VERT_EDGE = 3, // vertice del primo su lato del secondo
|
||||
ITTT_EDGE_VERT = 4, // vertice del secondo su lato del primo
|
||||
ITTT_VERT_INT = 5, // vertice del primo nell'interno del secondo
|
||||
ITTT_INT_VERT = 6, // vertice del secondo nell'interno del primo
|
||||
ITTT_EDGE_EDGE_PNT = 7, // punto sull'intersezione di due lati
|
||||
ITTT_EDGE_EDGE_SEG = 8, // sovrapposizione di lati
|
||||
ITTT_EDGE_INT = 9, // lato del primo nell'interno del secondo
|
||||
ITTT_INT_EDGE = 10, // lato del secondo nell'interno del primo
|
||||
ITTT_INT_INT_SEG = 11, // segmento all'interno di entrambi i triangoli
|
||||
enum IntTriaTriaType { ITTT_NO = 0, // non c'è intersezione
|
||||
ITTT_OVERLAPS = 1, // i triangoli si sovrappongono (i triangoli del poligono sono in vTria)
|
||||
ITTT_VERT_VERT = 2, // intersezione coppia di vertici
|
||||
ITTT_VERT_EDGE = 3, // vertice del primo su lato del secondo
|
||||
ITTT_EDGE_VERT = 4, // vertice del secondo su lato del primo
|
||||
ITTT_VERT_INT = 5, // vertice del primo nell'interno del secondo
|
||||
ITTT_INT_VERT = 6, // vertice del secondo nell'interno del primo
|
||||
ITTT_EDGE_EDGE_PNT = 7, // punto sull'intersezione di due lati
|
||||
ITTT_EDGE_EDGE_SEG = 8, // sovrapposizione di lati
|
||||
ITTT_EDGE_INT = 9, // lato del primo nell'interno del secondo
|
||||
ITTT_INT_EDGE = 10, // lato del secondo nell'interno del primo
|
||||
ITTT_INT_INT_SEG = 11, // segmento all'interno di entrambi i triangoli
|
||||
ITTT_COUNTER_OVERLAPS = 12 // triangoli sovrapposti controversi (i triangoli del poligono sono in vTria)
|
||||
} ;
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@
|
||||
#include "/EgtDev/Include/EGkColor.h"
|
||||
#include "/EgtDev/Include/EGkGeoCollection.h"
|
||||
#include "/EgtDev/Include/EGkSelection.h"
|
||||
#include "/EgtDev/Include/EgnLuaAux.h"
|
||||
#include "/EgtDev/Include/EGnLuaAux.h"
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2022-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : MedialAxis.h Data : 22.08.22 Versione : 2.4h2
|
||||
// Contenuto : Dichiarazione funzione calcolo MedialAxis principale.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 22.08.22 DS Creazione modulo.
|
||||
//
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
#undef EGK_EXPORT
|
||||
#if defined( I_AM_EGK) // da definirsi solo nella DLL
|
||||
#define EGK_EXPORT __declspec( dllexport)
|
||||
#else
|
||||
#define EGK_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
EGK_EXPORT bool CurveSimpleMedialAxis( const ICurve* pCrv, PolyLine& PL) ;
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2019
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkObjGraphics.h Data : 08/03/19 Versione : 2.1c1
|
||||
// File : EGkObjGraphics.h Data : 08/03/19 Versione : 2.1c1
|
||||
// Contenuto : Dichiarazione della interfaccia IObjGraphics.
|
||||
//
|
||||
//
|
||||
|
||||
+35
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
// EgalTech 2013-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGkPoint3d.h Data : 30.05.14 Versione : 1.5e10
|
||||
// File : EGkPoint3d.h Data : 22.08.224 Versione : 2.4h2
|
||||
// Contenuto : Dichiarazione della classe Punto 3d.
|
||||
//
|
||||
//
|
||||
@@ -364,3 +364,36 @@ AreSamePointXYExact( const Point3d& ptP1, const Point3d& ptP2)
|
||||
{
|
||||
return ( SqDistXY( ptP1, ptP2) < SQ_EPS_ZERO) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia in locale del punto passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Point3d
|
||||
GetToLoc( const Point3d& ptP, const Frame3d& frRef)
|
||||
{
|
||||
Point3d ptQ = ptP ;
|
||||
ptQ.ToLoc( frRef) ;
|
||||
return ptQ ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia in globale del punto passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Point3d
|
||||
GetToGlob( const Point3d& ptP, const Frame3d& frRef)
|
||||
{
|
||||
Point3d ptQ = ptP ;
|
||||
ptQ.ToGlob( frRef) ;
|
||||
return ptQ ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia dal primo al secondo riferimento del punto passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Point3d
|
||||
GetLocToLoc( const Point3d& ptP, const Frame3d& frOri, const Frame3d& frDest)
|
||||
{
|
||||
Point3d ptQ = ptP ;
|
||||
ptQ.LocToLoc( frOri, frDest) ;
|
||||
return ptQ ;
|
||||
}
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkBBox3d.h"
|
||||
#include "/EgtDev/Include/EGkBBox3d.h"
|
||||
#include "/EgtDev/Include/EgtNumCollection.h"
|
||||
#include <unordered_map>
|
||||
|
||||
|
||||
@@ -132,3 +132,12 @@ class PolyLine
|
||||
// Raccolte di PolyLine
|
||||
typedef std::vector<PolyLine> POLYLINEVECTOR ; // vettore di PolyLine
|
||||
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) ;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkSelection.h Data : 11.06.15 Versione : 1.6f2
|
||||
// File : EGkSelection.h Data : 11.06.15 Versione : 1.6f2
|
||||
// Contenuto : Strutture e raccolte per indici di selezione,
|
||||
// con funzioni di conversione da e verso stringhe.
|
||||
//
|
||||
|
||||
+5
-1
@@ -23,13 +23,17 @@
|
||||
#define EGK_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
class Triangle3d ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionRectangle( double dWidth, double dLen) ;
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionStadium( double dWidth, double dLen) ;
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionDisk( double dRadius) ;
|
||||
// la curva ingrassata non deve autointersecarsi
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromFatCurve( ICurve* pCrv, double dRadius,
|
||||
bool bSquareEnds, bool bSquareMids) ;
|
||||
// NB : la curva ingrassata non deve autointersecarsi
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromTriangle( const Triangle3d& Tria) ;
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLine( const PolyLine& ContourPolyLine) ;
|
||||
EGK_EXPORT ISurfFlatRegion* GetSurfFlatRegionFromPolyLineVector( const POLYLINEVECTOR& vContoursPolyLineVec) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
+6
-1
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgkCurve.h"
|
||||
#include "/EgtDev/Include/EGkCurve.h"
|
||||
#include "/EgtDev/Include/EGkSurfTriMesh.h"
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
@@ -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) ;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkStringUtils3d.h Data : 10.03.14 Versione : 1.5c3
|
||||
// File : EGkStringUtils3d.h Data : 10.03.14 Versione : 1.5c3
|
||||
// Contenuto : Dichiarazione delle funzioni di utilità 3d per le stringhe.
|
||||
//
|
||||
//
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2019
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkSurf.h Data : 06.06.19 Versione : 2.1f1
|
||||
// File : EGkSurf.h Data : 06.06.19 Versione : 2.1f1
|
||||
// Contenuto : Dichiarazione della interfaccia ISurf.
|
||||
//
|
||||
//
|
||||
|
||||
+4
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkSurfFlatRegion.h Data : 05.08.15 Versione : 1.6h2
|
||||
// File : EGkSurfFlatRegion.h Data : 05.08.15 Versione : 1.6h2
|
||||
// Contenuto : Dichiarazione della interfaccia ISurfFlatRegion.
|
||||
//
|
||||
//
|
||||
@@ -15,6 +15,7 @@
|
||||
|
||||
#include "/EgtDev/Include/EGkSurf.h"
|
||||
#include "/EgtDev/Include/EGkIntersCurves.h"
|
||||
#include "/EgtDev/Include/EgkCurveComposite.h"
|
||||
#include "/EgtDev/Include/EgtPointerOwner.h"
|
||||
|
||||
class ISurfTriMesh ;
|
||||
@@ -45,8 +46,9 @@ class __declspec( novtable) ISurfFlatRegion : public ISurf
|
||||
virtual const ISurfTriMesh* GetAuxSurf( void) const = 0 ;
|
||||
virtual ISurfFlatRegion* CloneChunk( int nChunk) const = 0 ;
|
||||
virtual bool GetChunkCentroid( int nChunk, Point3d& ptCen) const ;
|
||||
virtual bool GetCurveClassification( const ICurve& Crv, CRVCVECTOR& ccClass) const = 0 ;
|
||||
virtual bool GetCurveClassification( const ICurve& Crv, double dLenMin, CRVCVECTOR& ccClass) const = 0 ;
|
||||
virtual int GetChunkSimpleClassification( int nChunk, const ISurfFlatRegion& Other, int nOthChunk) const ; // compare only outsides
|
||||
virtual bool GetZigZagInfill( double dSideStep, bool bAllowStepCorrection, bool bInvert, ICRVCOMPOPOVECTOR& vpCrvs) const = 0 ;
|
||||
} ;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkSurf.h"
|
||||
#include "/EgtDEv/Include/EgkGeomDB.h"
|
||||
#include "/EgtDEv/Include/EGkGeomDB.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
class SurfLocal
|
||||
|
||||
+12
-5
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2020
|
||||
// EgalTech 2014-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkSurfTriMesh.h Data : 15.10.20 Versione : 2.2j2
|
||||
// File : EGkSurfTriMesh.h Data : 10.10.22 Versione : 2.4i4
|
||||
// Contenuto : Dichiarazione della interfaccia ISurfTriMesh.
|
||||
//
|
||||
//
|
||||
@@ -25,12 +25,16 @@ const int SVT_DEL = - 2 ; // vertice o triangolo cancellato
|
||||
inline bool IsValidSvt( int nSvt)
|
||||
{ return ( nSvt != SVT_NULL && nSvt != SVT_DEL) ; }
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
const double MAX_EDGE_LEN_STD = 5000.0 ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
{
|
||||
public :
|
||||
enum RuledType { RLT_ISOPAR = 0, // con parametrizzazione simile tra le due curve
|
||||
RLT_MINDIST = 1} ; // con distanza minima tra le due curve
|
||||
enum RuledType { RLT_ISOPAR = 0, // con parametrizzazione simile tra le due curve
|
||||
RLT_MINDIST = 1, // con distanza minima tra le due curve
|
||||
RLT_ISOPAR_SMOOTH = 2} ; // con parametrizzazione simile tra le due curve e lisciatura delle parti torte
|
||||
public : // IGeoObj
|
||||
ISurfTriMesh* Clone( void) const override = 0 ;
|
||||
public :
|
||||
@@ -54,6 +58,7 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
double dAngRot, double dStepRot, double dMove) = 0 ;
|
||||
virtual bool DoCompacting( double dTol = EPS_SMALL) = 0 ;
|
||||
virtual bool DoSewing( const ISurfTriMesh& stmOther, const Frame3d& frOther = GLOB_FRM, double dTol = 2 * EPS_SMALL) = 0 ;
|
||||
virtual bool IsEmpty( void) const = 0 ;
|
||||
virtual int GetVertexCount( void) const = 0 ;
|
||||
virtual int GetTriangleCount( void) const = 0 ;
|
||||
virtual int GetTriangleCount( int nTFlag) const = 0 ;
|
||||
@@ -77,8 +82,9 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
virtual bool GetVertexSmoothNormal( int nV, int nT, Vector3d& vtN) const = 0 ;
|
||||
virtual bool GetTriangleBoundaryEdges( int nId, TriFlags3d& TFlags) const = 0 ;
|
||||
virtual bool GetTriangleSmoothNormals( int nId, TriNormals3d& TNrms) const = 0 ;
|
||||
virtual ISurfTriMesh* CloneTriangle( int nTria) const = 0 ;
|
||||
virtual bool GetLoops( POLYLINEVECTOR& vPL) const = 0 ;
|
||||
virtual bool GetSilhouette( const Vector3d& vtDir, POLYLINEVECTOR& vPL) const = 0 ;
|
||||
virtual bool GetSilhouette( const Vector3d& vtDir, double dTol, POLYLINEVECTOR& vPL) const = 0 ;
|
||||
virtual int GetFacetCount( void) const = 0 ;
|
||||
virtual int GetFacetSize( void) const = 0 ;
|
||||
virtual int GetFacetFromTria( int nT) const = 0 ;
|
||||
@@ -104,6 +110,7 @@ class __declspec( novtable) ISurfTriMesh : public ISurf
|
||||
virtual bool GetSurfClassification( const ISurfTriMesh& ClassifierSurf,
|
||||
INTVECTOR& vTriaIn, INTVECTOR& vTriaOut, INTVECTOR& vTriaOnP, INTVECTOR& vTriaOnM, INTVECTOR& vTriaIndef) = 0 ;
|
||||
virtual bool CutWithOtherSurf( const ISurfTriMesh& CutterSurf, bool bInVsOut, bool bSaveOnEq) = 0 ;
|
||||
virtual bool Repair( double dMaxEdgeLen = MAX_EDGE_LEN_STD) = 0 ;
|
||||
virtual bool GetAllTriaOverlapBox( const BBox3d& b3Box, INTVECTOR& vT) const = 0 ;
|
||||
virtual const BBox3d& GetAllTriaBox( void) const = 0 ;
|
||||
virtual int GetPartCount( void) const = 0 ;
|
||||
|
||||
+28
-18
@@ -97,28 +97,28 @@ class Triangle3d
|
||||
return Rotate( ptAx, vtAx, cos( dAngRad), sin( dAngRad)) ;
|
||||
}
|
||||
bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dCosAng, double dSinAng)
|
||||
{ m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_vtN.Rotate( vtAx, dCosAng, dSinAng) ;
|
||||
{ return ( m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_vtN.Rotate( vtAx, dCosAng, dSinAng)) ;
|
||||
}
|
||||
bool Scale( const Frame3d& frRef, double dCoeffX, double dCoeffY, double dCoeffZ)
|
||||
{ m_ptP[0].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
m_ptP[1].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
m_ptP[2].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
Validate( true) ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool Mirror( const Point3d& ptOn, const Vector3d& vtNorm)
|
||||
{ m_ptP[0].Mirror( ptOn, vtNorm) ;
|
||||
m_ptP[1].Mirror( ptOn, vtNorm) ;
|
||||
m_ptP[2].Mirror( ptOn, vtNorm) ;
|
||||
Validate( true) ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool Shear( const Point3d& ptOn, const Vector3d& vtNorm, const Vector3d& vtDir, double dCoeff)
|
||||
{ m_ptP[0].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
m_ptP[1].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
m_ptP[2].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
Validate( true) ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool ToGlob( const Frame3d& frRef)
|
||||
{ return ( m_ptP[0].ToGlob( frRef) && m_ptP[1].ToGlob( frRef) && m_ptP[2].ToGlob( frRef) && m_vtN.ToGlob( frRef)) ; }
|
||||
@@ -172,6 +172,15 @@ class Triangle3d
|
||||
else
|
||||
return ( std::max( dSqDistA, std::max( dSqDistB, dSqDistC)) / dTwoArea) ;
|
||||
}
|
||||
double GetSqMinHeight( void) const
|
||||
{ Vector3d vtV1 = m_ptP[1] - m_ptP[0] ;
|
||||
Vector3d vtV2 = m_ptP[2] - m_ptP[1] ;
|
||||
Vector3d vtN = vtV1 ^ vtV2 ;
|
||||
double dSqN = vtN.SqLen() ;
|
||||
if ( dSqN < SQ_EPS_ZERO)
|
||||
return 0 ;
|
||||
return ( dSqN / std::max( { vtV1.SqLen(), vtV2.SqLen(), ( vtV1 + vtV2).SqLen()})) ;
|
||||
}
|
||||
|
||||
protected :
|
||||
Point3d m_ptP[3] ;
|
||||
@@ -277,20 +286,21 @@ class Triangle3dEx : public Triangle3d
|
||||
{ double dAngRad = dAngDeg * DEGTORAD ;
|
||||
return Rotate( ptAx, vtAx, cos( dAngRad), sin( dAngRad)) ; }
|
||||
bool Rotate( const Point3d& ptAx, const Vector3d& vtAx, double dCosAng, double dSinAng)
|
||||
{ m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) ;
|
||||
m_vtN.Rotate( vtAx, dCosAng, dSinAng) ;
|
||||
for ( int i = 0 ; i < 3 ; ++ i)
|
||||
m_triN.vtN[i].Rotate( vtAx, dCosAng, dSinAng) ;
|
||||
{ return ( m_ptP[0].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_ptP[1].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_ptP[2].Rotate( ptAx, vtAx, dCosAng, dSinAng) &&
|
||||
m_vtN.Rotate( vtAx, dCosAng, dSinAng) &&
|
||||
m_triN.vtN[0].Rotate( vtAx, dCosAng, dSinAng) &&
|
||||
m_triN.vtN[1].Rotate( vtAx, dCosAng, dSinAng) &&
|
||||
m_triN.vtN[2].Rotate( vtAx, dCosAng, dSinAng)) ;
|
||||
}
|
||||
bool Scale( const Frame3d& frRef, double dCoeffX, double dCoeffY, double dCoeffZ)
|
||||
{ m_ptP[0].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
m_ptP[1].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
m_ptP[2].Scale( frRef, dCoeffX, dCoeffY, dCoeffZ) ;
|
||||
for ( int i = 0 ; i < 3 ; ++ i)
|
||||
m_triN.vtN[i] = V_NULL ;
|
||||
Validate( true) ;
|
||||
m_triN.vtN[i] = V_NULL ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool Mirror( const Point3d& ptOn, const Vector3d& vtNorm)
|
||||
{ m_ptP[0].Mirror( ptOn, vtNorm) ;
|
||||
@@ -298,15 +308,15 @@ class Triangle3dEx : public Triangle3d
|
||||
m_ptP[2].Mirror( ptOn, vtNorm) ;
|
||||
for ( int i = 0 ; i < 3 ; ++ i)
|
||||
m_triN.vtN[i].Mirror( vtNorm) ;
|
||||
Validate( true) ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool Shear( const Point3d& ptOn, const Vector3d& vtNorm, const Vector3d& vtDir, double dCoeff)
|
||||
{ m_ptP[0].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
m_ptP[1].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
m_ptP[2].Shear( ptOn, vtNorm, vtDir, dCoeff) ;
|
||||
for ( int i = 0 ; i < 3 ; ++ i)
|
||||
m_triN.vtN[i] = V_NULL ;
|
||||
Validate( true) ;
|
||||
m_triN.vtN[i] = V_NULL ;
|
||||
return Validate( true) ;
|
||||
}
|
||||
bool ToGlob( const Frame3d& frRef)
|
||||
{ return ( m_ptP[0].ToGlob( frRef) && m_ptP[1].ToGlob( frRef) && m_ptP[2].ToGlob( frRef) && m_vtN.ToGlob( frRef) &&
|
||||
|
||||
+78
-15
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2019
|
||||
// EgalTech 2013-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkVector3d.h Data : 14.12.19 Versione : 2.1l4
|
||||
// File : EGkVector3d.h Data : 27.08.22 Versione : 2.4h2
|
||||
// Contenuto : Dichiarazione della classe Vettore 3d.
|
||||
//
|
||||
//
|
||||
@@ -14,6 +14,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EGkGeoConst.h"
|
||||
#include <algorithm>
|
||||
#include <cmath>
|
||||
|
||||
//----------------------- Macro per import/export -----------------------------
|
||||
@@ -70,27 +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
|
||||
{ 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
|
||||
{ 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
|
||||
{ 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 ; }
|
||||
@@ -132,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 {
|
||||
@@ -172,6 +191,11 @@ EGK_EXPORT Vector3d FromPolar( double dLen, double dAngDeg) ;
|
||||
//----------------------------------------------------------------------------
|
||||
EGK_EXPORT Vector3d FromUprightOrtho( const Vector3d& vtV) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Definizione come ortogonale al primo ricevuto, orizzontale e più vicino al secondo
|
||||
//----------------------------------------------------------------------------
|
||||
EGK_EXPORT Vector3d FromNearestHorizontalOrtho( const Vector3d& vtV, const Vector3d& vtNear) ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Opposto di un vettore
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -269,7 +293,7 @@ CrossXY( const Vector3d& vtV1, const Vector3d& vtV2)
|
||||
//! Somma mediata di due vettori (baricentrica)
|
||||
//----------------------------------------------------------------------------
|
||||
inline Vector3d
|
||||
Media( const Vector3d& vtV1, const Vector3d& vtV2, double dCoeff)
|
||||
Media( const Vector3d& vtV1, const Vector3d& vtV2, double dCoeff = 0.5)
|
||||
{
|
||||
return ( Vector3d( ( 1 - dCoeff) * vtV1.x + dCoeff * vtV2.x,
|
||||
( 1 - dCoeff) * vtV1.y + dCoeff * vtV2.y,
|
||||
@@ -282,7 +306,10 @@ Media( const Vector3d& vtV1, const Vector3d& vtV2, double dCoeff)
|
||||
inline Vector3d
|
||||
ParallCompo( const Vector3d& vtV, const Vector3d& vtRef)
|
||||
{
|
||||
return ( ( vtV * vtRef) * vtRef) ;
|
||||
if ( vtRef.IsNormalized())
|
||||
return ( ( vtV * vtRef) * vtRef) ;
|
||||
else
|
||||
return ( ( vtV * vtRef) * vtRef / vtRef.SqLen()) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -291,7 +318,10 @@ ParallCompo( const Vector3d& vtV, const Vector3d& vtRef)
|
||||
inline Vector3d
|
||||
OrthoCompo( const Vector3d& vtV, const Vector3d& vtRef)
|
||||
{
|
||||
return ( vtV - ( vtV * vtRef) * vtRef) ;
|
||||
if ( vtRef.IsNormalized())
|
||||
return ( vtV - ( vtV * vtRef) * vtRef) ;
|
||||
else
|
||||
return ( vtV - ( vtV * vtRef) * vtRef / vtRef.SqLen()) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -392,3 +422,36 @@ AreOrthoExact( const Vector3d& vtV1, const Vector3d& vtV2)
|
||||
{
|
||||
return ( abs( vtV1 * vtV2) < COS_ORTO_ANG_ZERO) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia in locale del vettore passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Vector3d
|
||||
GetToLoc( const Vector3d& vtV, const Frame3d& frRef)
|
||||
{
|
||||
Vector3d vtW = vtV ;
|
||||
vtW.ToLoc( frRef) ;
|
||||
return vtW ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia in globale del vettore passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Vector3d
|
||||
GetToGlob( const Vector3d& vtV, const Frame3d& frRef)
|
||||
{
|
||||
Vector3d vtW = vtV ;
|
||||
vtW.ToGlob( frRef) ;
|
||||
return vtW ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
//! Restituisce una copia dal primo al secondo riferimento del vettore passato
|
||||
//----------------------------------------------------------------------------
|
||||
inline Vector3d
|
||||
GetLocToLoc( const Vector3d& vtV, const Frame3d& frOri, const Frame3d& frDest)
|
||||
{
|
||||
Vector3d vtW = vtV ;
|
||||
vtW.LocToLoc( frOri, frDest) ;
|
||||
return vtW ;
|
||||
}
|
||||
|
||||
+19
-10
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2020
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgkVolZmap.h Data : 12.05.19 Versione : 2.2k1
|
||||
// File : EGkVolZmap.h Data : 12.05.19 Versione : 2.2k1
|
||||
// Contenuto : Dichiarazione della interfaccia IVolZmap.
|
||||
//
|
||||
//
|
||||
@@ -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 ;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnCmdExecutor.h Data : 21.03.14 Versione : 1.5c3
|
||||
// File : EGnCmdExecutor.h Data : 21.03.14 Versione : 1.5c3
|
||||
// Contenuto : Dichiarazione della interfaccia ICmdExecutor.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnCmdParser.h Data : 15.03.14 Versione : 1.5c
|
||||
// File : EGnCmdParser.h Data : 15.03.14 Versione : 1.5c
|
||||
// Contenuto : Dichiarazione della interfaccia ICmdParser.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnDllMain.h Data : 21.11.13 Versione : 1.4l2
|
||||
// File : EGnDllMain.h Data : 21.11.13 Versione : 1.4l2
|
||||
// Contenuto : Prototipi funzioni generali della DLL.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2019
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnFileCompare.h Data : 09.12.19 Versione : 2.1l4
|
||||
// File : EGnFileCompare.h Data : 09.12.19 Versione : 2.1l4
|
||||
// Contenuto : Prototipi funzioni di confronto tra file.
|
||||
//
|
||||
//
|
||||
|
||||
+6
-4
@@ -1,19 +1,19 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2020
|
||||
// EgalTech 2013-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnFileUtils.h Data : 30.11.20 Versione : 2.2k
|
||||
// File : EGnFileUtils.h Data : 09.04.22 Versione : 2.4d1
|
||||
// Contenuto : Prototipi funzioni di utilità su file e direttori.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 11.12.13 DS Creazione modulo.
|
||||
//
|
||||
// 09.04.22 DS Aggiunta FindAllFiles.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include "/EgtDev/Include/EgtStringBase.h"
|
||||
|
||||
|
||||
//----------------------- Macro per import/export ----------------------------
|
||||
@@ -34,6 +34,7 @@ EGN_EXPORT std::string GetFileExtension( const std::string& sFile) ;
|
||||
EGN_EXPORT std::string ChangeFileExtension( const std::string& sFile, const std::string& sNewExt) ;
|
||||
EGN_EXPORT bool FileExtensionMatches( const std::string& sFile, const std::string& sExt) ;
|
||||
EGN_EXPORT bool FindFirstFileEgt( const std::string& sFileSpec, std::string& sFileName) ;
|
||||
EGN_EXPORT bool FindAllFiles( const std::string& sFileSpec, STRVECTOR& vsFileNames) ;
|
||||
EGN_EXPORT std::string GetFileName( const std::string& sPath) ;
|
||||
EGN_EXPORT std::string GetFileTitleEgt( const std::string& sPath) ;
|
||||
EGN_EXPORT std::string GetDirectory( const std::string& sPath) ;
|
||||
@@ -41,3 +42,4 @@ EGN_EXPORT bool ExistsDirectory( const std::string& sDir) ;
|
||||
EGN_EXPORT bool CreateDirectoryEgt( const std::string& sDir) ;
|
||||
EGN_EXPORT bool EmptyDirectory( const std::string& sDir) ;
|
||||
EGN_EXPORT bool EraseDirectory( const std::string& sDir) ;
|
||||
EGN_EXPORT bool FindAllDirectories( const std::string& sDirSpec, STRVECTOR& vsDirNames) ;
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2013
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnGetModuleVer.h Data : 10.12.13 Versione : 1.4a4
|
||||
// File : EGnGetModuleVer.h Data : 10.12.13 Versione : 1.4a4
|
||||
// Contenuto : Prototipo funzione calcolo versione del modulo richiesto.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnLuaMgr.h Data : 21.03.15 Versione : 1.6c6
|
||||
// File : EGnLuaMgr.h Data : 21.03.15 Versione : 1.6c6
|
||||
// Contenuto : Dichiarazione della classe LuaMgr.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnScanner.h Data : 06.03.14 Versione : 1.5c1
|
||||
// File : EGnScanner.h Data : 06.03.14 Versione : 1.5c1
|
||||
// Contenuto : Dichiarazione della classe CScan.
|
||||
//
|
||||
//
|
||||
|
||||
+38
-15
@@ -1,42 +1,44 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2018
|
||||
// EgalTech 2015-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EGnStringKeyVal.h Data : 27.11.18 Versione : 1.9k1
|
||||
// File : EGnStringKeyVal.h Data : 13.05.22 Versione : 2.4e2
|
||||
// Contenuto : Funzioni per gestione coppie chiave-valore in stringhe.
|
||||
//
|
||||
//
|
||||
//
|
||||
// Modifiche : 23.05.15 DS Creazione modulo.
|
||||
// 27.11.18 DS Aggiunte Set/Get/RemoveValInNotes.
|
||||
// 13.05.22 DS In SetValInNotes e GetValInNotes aggiunta gestione separatore ':'.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgnStringUtils.h"
|
||||
#include "/EgtDev/Include/EGnStringUtils.h"
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
static const char EQUAL = '=' ;
|
||||
static const char COLON = ':' ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
IsValidKey( const std::string& sKey)
|
||||
IsValidKey( const std::string& sKey, bool bFull = false)
|
||||
{
|
||||
return ( ! sKey.empty() &&
|
||||
sKey.find( '\n') == std::string::npos &&
|
||||
sKey.find( EQUAL) == std::string::npos &&
|
||||
(( bFull && ( sKey.back() == EQUAL || sKey.back() == COLON)) ||
|
||||
sKey.find( EQUAL) == std::string::npos) &&
|
||||
sKey.find_first_not_of( " \t\r\n") != std::string::npos) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
FindKey( const std::string& sString, const std::string& sKey)
|
||||
FindKey( const std::string& sString, const std::string& sKey, bool bFull = false)
|
||||
{
|
||||
if ( sString.empty() || ! IsValidKey( sKey))
|
||||
if ( sString.empty() || ! IsValidKey( sKey, bFull))
|
||||
return false ;
|
||||
return ( sString.compare( 0, sKey.length(), sKey) == 0 &&
|
||||
sString.length() > sKey.length() &&
|
||||
sString[sKey.length()] == EQUAL) ;
|
||||
( bFull || ( sString.length() > sKey.length() && sString[sKey.length()] == EQUAL))) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
@@ -99,20 +101,28 @@ GetVal( const std::string& sString, const std::string& sKey, T& Val)
|
||||
inline bool
|
||||
SetValInNotes( const std::string& sKey, const std::string& sVal, std::string& sNotes)
|
||||
{
|
||||
// verifiche validità chiave
|
||||
if ( ! IsValidKey( sKey) || ! IsValidVal( sVal))
|
||||
return false ;
|
||||
// chiave con carattere finale speciale
|
||||
std::string sTkey = sKey ;
|
||||
if ( sKey.back() != COLON)
|
||||
sTkey += EQUAL ;
|
||||
// ricerca se già presente
|
||||
STRVECTOR vsTokens ;
|
||||
Tokenize( sNotes, ";", vsTokens) ;
|
||||
bool bFound = false ;
|
||||
for ( auto& sToken : vsTokens) {
|
||||
if ( FindKey( sToken, sKey)) {
|
||||
sToken = sKey + EQUAL + sVal ;
|
||||
if ( FindKey( sToken, sTkey, true)) {
|
||||
sToken = sTkey + sVal ;
|
||||
bFound = true ;
|
||||
break ;
|
||||
}
|
||||
}
|
||||
// altrimenti aggiunta
|
||||
if ( ! bFound)
|
||||
vsTokens.emplace_back( sKey + EQUAL + sVal) ;
|
||||
vsTokens.emplace_back( sTkey + sVal) ;
|
||||
// ricostruzione delle note
|
||||
sNotes.clear() ;
|
||||
for ( const auto& sToken : vsTokens) {
|
||||
if ( ! IsEmptyOrSpaces( sToken))
|
||||
@@ -133,13 +143,19 @@ SetValInNotes( const std::string& sKey, T& Val, std::string& sNotes)
|
||||
inline bool
|
||||
GetValInNotes( const std::string& sNotes, const std::string& sKey, std::string& sVal)
|
||||
{
|
||||
// verifiche validità chiave
|
||||
if ( sNotes.empty() || ! IsValidKey( sKey))
|
||||
return false ;
|
||||
// chiave con carattere finale speciale
|
||||
std::string sTkey = sKey ;
|
||||
if ( sKey.back() != COLON)
|
||||
sTkey += EQUAL ;
|
||||
// ricerca
|
||||
STRVECTOR vsTokens ;
|
||||
Tokenize( sNotes, ";", vsTokens) ;
|
||||
for ( const auto& sToken : vsTokens) {
|
||||
if ( FindKey( sToken, sKey)) {
|
||||
sVal = sToken.substr( sKey.length() + 1) ;
|
||||
if ( FindKey( sToken, sTkey, true)) {
|
||||
sVal = sToken.substr( sTkey.length()) ;
|
||||
return true ;
|
||||
}
|
||||
}
|
||||
@@ -159,18 +175,25 @@ GetValInNotes( const std::string& sNotes, const std::string& sKey, T& Val)
|
||||
inline bool
|
||||
RemoveValInNotes( const std::string& sKey, std::string& sNotes)
|
||||
{
|
||||
// verifiche validità chiave
|
||||
if ( sNotes.empty() || ! IsValidKey( sKey))
|
||||
return false ;
|
||||
// chiave con carattere finale speciale
|
||||
std::string sTkey = sKey ;
|
||||
if ( sKey.back() != COLON)
|
||||
sTkey += EQUAL ;
|
||||
// ricerca
|
||||
STRVECTOR vsTokens ;
|
||||
Tokenize( sNotes, ";", vsTokens) ;
|
||||
bool bFound = false ;
|
||||
for ( size_t i = 0; i < vsTokens.size() ; ++ i) {
|
||||
if ( FindKey( vsTokens[i], sKey)) {
|
||||
if ( FindKey( vsTokens[i], sTkey, true)) {
|
||||
vsTokens.erase( vsTokens.begin() + i) ;
|
||||
bFound = true ;
|
||||
break ;
|
||||
}
|
||||
}
|
||||
// se trovato e cancellato, devo ricostruire le note
|
||||
if ( bFound) {
|
||||
sNotes.clear() ;
|
||||
for ( const auto& sToken : vsTokens) {
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2013-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnStringUtils.h Data : 17.03.14 Versione : 1.5c2
|
||||
// File : EGnStringUtils.h Data : 17.03.14 Versione : 1.5c2
|
||||
// Contenuto : Dichiarazione delle funzioni di utilità per le stringhe.
|
||||
//
|
||||
//
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgnWriter.h Data : 02.06.15 Versione : 1.6f1
|
||||
// File : EGnWriter.h Data : 02.06.15 Versione : 1.6f1
|
||||
// Contenuto : Dichiarazione della classe Writer.
|
||||
//
|
||||
//
|
||||
|
||||
+3
-1
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgrDllMain.h Data : 13.02.14 Versione : 1.5b1
|
||||
// File : EGrDllMain.h Data : 13.02.14 Versione : 1.5b1
|
||||
// Contenuto : Prototipi funzioni generali della DLL.
|
||||
//
|
||||
//
|
||||
@@ -32,6 +32,8 @@ extern "C" {
|
||||
EGR_EXPORT void SetEGrLogger( ILogger* pLogger) ;
|
||||
// imposta la chiave di protezione
|
||||
EGR_EXPORT void SetEGrKey( const std::string& sKey) ;
|
||||
// imposta se chiave hardware di rete
|
||||
EGR_EXPORT void SetEGrNetHwKey( bool bNetHwKey) ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgrSceExecutor.h Data : 18.02.14 Versione : 1.5b3
|
||||
// File : EGrSceExecutor.h Data : 18.02.14 Versione : 1.5b3
|
||||
// Contenuto : Dichiarazione della interfaccia ISceExecutor.
|
||||
//
|
||||
//
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/EgnCmdExecutor.h"
|
||||
#include "/EgtDev/Include/EGnCmdExecutor.h"
|
||||
|
||||
class IEGrScene ;
|
||||
|
||||
|
||||
+5
-2
@@ -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.
|
||||
//
|
||||
//
|
||||
@@ -64,6 +64,7 @@ class IEGrScene
|
||||
virtual void GetCamera( double* pdAngVertDeg, double* pdAngOrizzDeg, double* pdDist = nullptr) const = 0 ;
|
||||
virtual int GetCameraDir( void) const = 0 ;
|
||||
virtual const Vector3d& GetCameraUp( void) const = 0 ;
|
||||
virtual void GetOrthoCamParam(double* pdWidth, double* pdHeight, double* pdNear, double* pdFar) const = 0 ;
|
||||
virtual bool PanCamera( const Point3d& ptWinOld, const Point3d& ptWinNew) = 0 ;
|
||||
virtual bool RotateCamera( const Point3d& ptWinOld, const Point3d& ptWinNew) = 0 ;
|
||||
virtual bool ZoomAll( void) = 0 ;
|
||||
@@ -93,6 +94,8 @@ class IEGrScene
|
||||
virtual bool SetGridShow( bool bShowGrid, bool bShowFrame) = 0 ;
|
||||
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( void) = 0 ;
|
||||
// Glob Frame
|
||||
virtual bool SetGlobFrameShow( bool bShow) = 0 ;
|
||||
// Direct
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2014
|
||||
// EgalTech 2014-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EInAPI.h Data : 26.08.14 Versione : 1.5h1
|
||||
// File : EInAPI.h Data : 06.05.22 Versione : 2.4e1
|
||||
// Contenuto : API (application programming interface).
|
||||
//
|
||||
//
|
||||
@@ -34,6 +34,8 @@ extern "C" {
|
||||
// General
|
||||
EIN_EXPORT BOOL __stdcall EgtInit( int nDebug, const wchar_t* wsLogFile, const wchar_t* wsLogMsg) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtExit( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetUserLevel( int nUserLev) ;
|
||||
EIN_EXPORT int __stdcall EgtGetUserLevel( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetKey( const wchar_t* wsKey) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetNestKey( const wchar_t* wsNestKey) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetFont( const wchar_t* wsNfeFontDir, const wchar_t* wsDefaultFont) ;
|
||||
@@ -48,6 +50,7 @@ EIN_EXPORT void __stdcall EgtDisableCommandLogger( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetVersionInfo( wchar_t*& wsVer) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetKeyInfo( wchar_t*& wsKey) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetLockType( int nType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetNetHwKey( BOOL bNetHwKey) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetKeyLevel( int nProd, int nVer, int nLev, int* pnKLev) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetKeyOptions( int nProd, int nVer, int nLev, unsigned int* pnOpt2) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetKeyLeftDays( int* pnLeftDays) ;
|
||||
@@ -111,13 +114,16 @@ 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) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamSetFlag( int nFlag) ;
|
||||
EIN_EXPORT int __stdcall EgtBeamCreatePart( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamSetPart( int nPartId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamErasePart( void) ;
|
||||
@@ -126,12 +132,19 @@ EIN_EXPORT BOOL __stdcall EgtBeamSetPartProdNbr( int nProdNbr) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamSetPartName( const wchar_t* wsName) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamSetPartCount( int nCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamSetPartBox( double dLength, double dHeight, double dWidth, BOOL bUpdate) ;
|
||||
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, BOOL bUpdate) ;
|
||||
int nPar, const double vPar[], const wchar_t* wsPar, const wchar_t* wsUAtts,
|
||||
int nCrvId, int nCrv2Id, BOOL bUpdate) ;
|
||||
EIN_EXPORT int __stdcall EgtBeamModifyProcess( int nGeomId, 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, BOOL bUpdate) ;
|
||||
int nPar, const double vPar[], const wchar_t* wsPar, const wchar_t* wsUAtts,
|
||||
int nCrvId, int nCrv2Id, BOOL bUpdate) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamEraseProcess( int nGeomId, BOOL bUpdate) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamEnableProcess( int nGeomId, BOOL bEnable, BOOL bUpdate) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtBeamCalcSolid( int nPartId, BOOL bRecalc) ;
|
||||
@@ -160,11 +173,12 @@ EIN_EXPORT BOOL __stdcall EgtLuaGetGlobStringVar( const wchar_t* wsVar, wchar_t*
|
||||
EIN_EXPORT BOOL __stdcall EgtLuaGetGlobVectorVar( const wchar_t* wsVar, double vtVal[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtLuaGetGlobPointVar( const wchar_t* wsVar, double ptVal[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtLuaResetGlobVar( const wchar_t* wsVar) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtLuaExistsFunction( const wchar_t* wsFun) ;
|
||||
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) ;
|
||||
|
||||
@@ -209,6 +223,8 @@ EIN_EXPORT int __stdcall EgtCreateCircleCP( int nParentId, const double ptCen[3
|
||||
const double ptOn[3], int nRefType) ;
|
||||
EIN_EXPORT int __stdcall EgtCreateCircleCPEx( int nParentId, const double ptCen[3],
|
||||
const double ptOn[3], int nSepO, int nIdO, int nRefType) ;
|
||||
EIN_EXPORT int __stdcall EgtCreateCircle2P( int nParentId, const double ptP1[3],
|
||||
const double ptP2[3], int nRefType) ;
|
||||
EIN_EXPORT int __stdcall EgtCreateCircle3P( int nParentId, const double ptP1[3],
|
||||
const double ptP2[3], const double ptP3[3], int nRefType) ;
|
||||
EIN_EXPORT int __stdcall EgtCreateArc( int nParentId, const double ptCen[3], double dRad,
|
||||
@@ -320,6 +336,9 @@ EIN_EXPORT BOOL __stdcall EgtDuploCount( int nSouId, int* pnCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploList( int nSouId, int*& vInd, int* pnCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploSetModified( int nSouId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploGetModified( int nSouId, BOOL* pbModif) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploSetLocked( int nDupId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploResetLocked( int nDupId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploGetLocked( int nDupId, BOOL* pbModif) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtDuploUpdate( int nSouId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtIsDuplo( int nDupId) ;
|
||||
EIN_EXPORT int __stdcall EgtDuploGetOriginal( int nDupId) ;
|
||||
@@ -473,7 +492,7 @@ EIN_EXPORT int __stdcall EgtSplitCurve( int nId, int nParts) ;
|
||||
EIN_EXPORT int __stdcall EgtSplitCurveAtPoint( int nId, const double ptOn[3], int nRefType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyCircleCP( int nId, const double ptOn[3], int nRefType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyCircle3P( int nId, const double ptP1[3], const double ptP2[3], const double ptP3[3], int nRefType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyArcRadius( int nId, double dRad) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyArcRadius( int nId, double dRad, BOOL bKeepCenter) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyArcC2P( int nId, const double ptEnd[3], int nRefType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyArc3P( int nId, const double ptMid[3], int nRefType) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtModifyArcByFlip( int nId) ;
|
||||
@@ -497,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) ;
|
||||
@@ -526,6 +547,7 @@ EIN_EXPORT BOOL __stdcall EgtTextGetItalic( int nId, BOOL* pbItl) ;
|
||||
// GeomDb Curve Get
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveDomain( int nId, double* pdStart, double* pdEnd) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveLength( int nId, double* pdLen) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveParamAtLength( int nId, double dLen, double* pdU) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveLengthAtPoint( int nId, const double ptOn[3], double dExtend, double* pdLen) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveIsClosed( int nId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveIsFlat( int nId, BOOL bUseExtrusion, double dToler, double vtN[3], double* pdDist) ;
|
||||
@@ -538,6 +560,7 @@ EIN_EXPORT BOOL __stdcall EgtCurveSelfIntersCount( int nId, int* pnCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtCurveMinAreaRectangleXY( int nId, int nRefId,
|
||||
double ptOrig[3], double vtX[3], double vtY[3], double vtZ[3], double* pdDimX, double* pdDimY) ;
|
||||
EIN_EXPORT int __stdcall EgtClosedCurveClassify( int nId1, int nId2) ;
|
||||
EIN_EXPORT int __stdcall EgtCurveWithRegionClassify( int nCurveId, int nRegionId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtArcRadius( int nId, double* pdRad) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtArcAngCenter( int nId, double* pdAngDeg) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtArcDeltaN( int nId, double* pdDeltaN) ;
|
||||
@@ -545,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,
|
||||
@@ -563,7 +590,7 @@ EIN_EXPORT BOOL __stdcall EgtSurfTmFacetOppositeSide( int nId, int nFacet, const
|
||||
EIN_EXPORT BOOL __stdcall EgtSurfTmFacetAdjacencies( int nId, int nFacet, int*& vAdj, int* pnCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSurfTmFacetsContact( int nId, int nF1, int nF2, int nRefId,
|
||||
BOOL* pbAdjac, double ptP1[3], double ptP2[3], double* pdAng) ;
|
||||
EIN_EXPORT int __stdcall EgtGetSurfTmSilhouette( int nId, const double vtDir[3], int nDestGrpId, int nRefType, int* pnCount) ;
|
||||
EIN_EXPORT int __stdcall EgtGetSurfTmSilhouette( int nId, const double vtDir[3], double dToler, int nDestGrpId, int nRefType, int* pnCount) ;
|
||||
EIN_EXPORT int __stdcall EgtExtractSurfTmLoops( int nId, int nDestGrpId, int* pnCount) ;
|
||||
EIN_EXPORT int __stdcall EgtExtractSurfTmFacetLoops( int nId, int nFacet, int nDestGrpId, int* pnCount) ;
|
||||
EIN_EXPORT int __stdcall EgtCopySurfTmFacet( int nId, int nFacet, int nDestGrpId) ;
|
||||
@@ -620,7 +647,9 @@ EIN_EXPORT BOOL __stdcall EgtPointSurfTmDist( const double ptP[3], int nId, int
|
||||
// Geo Inters
|
||||
EIN_EXPORT BOOL __stdcall EgtLineSurfTmInters( const double ptP[3], const double vtDir[3], int nId, int nRefType,
|
||||
int*& vFlagInters, double*& vParInters, int* pnCount) ;
|
||||
EIN_EXPORT int __stdcall EgtSurfTmSurfTmInters( int nId1, int nId2, int nDestGrpId,
|
||||
EIN_EXPORT int __stdcall EgtPlaneSurfTmInters( const double ptOn[3], const double vtN[3], int nId, int nDestGrpId, int nRefType, double dToler,
|
||||
int* pnPntCount, int* pnCrvCount, int* pnSrfCount) ;
|
||||
EIN_EXPORT int __stdcall EgtSurfTmSurfTmInters( int nId1, int nId2, int nDestGrpId, double dToler,
|
||||
int* pnPntCount, int* pnCrvCount, int* pnSrfCount) ;
|
||||
|
||||
// Maximum Filler
|
||||
@@ -674,8 +703,10 @@ EIN_EXPORT wchar_t* __stdcall EgtGetLastMachMgrErrorString( void) ;
|
||||
EIN_EXPORT int __stdcall EgtGetMachMgrWarningId( int nInd) ;
|
||||
EIN_EXPORT wchar_t* __stdcall EgtGetMachMgrWarningString( int nInd) ;
|
||||
// Machines
|
||||
EIN_EXPORT BOOL __stdcall EgtGetMachines( wchar_t*& wsMachineNames, wchar_t*& wsMachineDirs) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetCurrMachine( const wchar_t* wsMachineName) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetCurrMachineName( wchar_t*& wsMachineName) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetCurrMachineDir( wchar_t*& wsMachineDir) ;
|
||||
// Machining Groups
|
||||
EIN_EXPORT int __stdcall EgtGetMachGroupCount( void) ;
|
||||
EIN_EXPORT int __stdcall EgtGetFirstMachGroup( void) ;
|
||||
@@ -735,6 +766,7 @@ EIN_EXPORT BOOL __stdcall EgtGetTableName( wchar_t*& wsTableName) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetTableRef( int nInd, double ptPos[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetTableArea( int nInd, double ptMin[3], double ptMax[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetTableAreaOffset( int nInd, double ptMinOffs[3], double ptMaxOffs[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtChangeTable( const wchar_t* wsTable, BOOL bUpdateDisp) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtShowOnlyTable( BOOL bVal) ;
|
||||
EIN_EXPORT int __stdcall EgtAddFixture( const wchar_t* wsName, const double ptPos[3], double dAngRotDeg, double dMov) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtKeepFixture( int nFxtId, int nSouPhase) ;
|
||||
@@ -816,6 +848,9 @@ EIN_EXPORT BOOL __stdcall EgtMdbGetGeneralParamDouble( int nType, double* pdVal)
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbReload( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbSave( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbGetMachiningDir( wchar_t*& wsMchDir) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbExport( const wchar_t* wsMachiningsNames, const wchar_t* wsOutFile) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbToBeImported( const wchar_t* wsFile, wchar_t*& wsMachiningsNames, int*& vTypes, int* pnCount) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtMdbImport( const wchar_t* wsFile, const wchar_t* wsMachiningsToImport, const wchar_t* wsMachiningsNames, wchar_t*& wsImported) ;
|
||||
// Operations
|
||||
EIN_EXPORT int __stdcall EgtGetFirstOperation( void) ;
|
||||
EIN_EXPORT int __stdcall EgtGetNextOperation( int nId) ;
|
||||
@@ -872,6 +907,8 @@ EIN_EXPORT BOOL __stdcall EgtGetMachiningParamDouble( int nType, double* pdVal)
|
||||
EIN_EXPORT BOOL __stdcall EgtGetMachiningParamString( int nType, wchar_t*& wsVal) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetMachiningGeometry( int nInd, int* pnId, int* pnSub) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtIsMachiningEmpty( void) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetMachiningStartPoint( double ptP[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetMachiningEndPoint( double ptP[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtApplyAllMachinings( BOOL bRecalc, BOOL bStopOnFirstErr, wchar_t*& wsErrList) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtUpdateAllMachinings( BOOL bStopOnFirstErr, wchar_t*& wsErrList) ;
|
||||
// Simulation
|
||||
@@ -896,10 +933,12 @@ EIN_EXPORT int __stdcall EgtGetAxisId( const wchar_t* wsAxis) ;
|
||||
EIN_EXPORT int __stdcall EgtGetHeadId( const wchar_t* wsHead) ;
|
||||
EIN_EXPORT int __stdcall EgtGetHeadExitCount( const wchar_t* wsHead) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisInvert( const wchar_t* wsAxis, BOOL* pbInvert) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisOffset( const wchar_t* wsAxis, double* pdOffset) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAllHeadsNames( wchar_t*& wsNames) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAllTablesNames( wchar_t*& wsNames) ;
|
||||
// Machine Calc
|
||||
EIN_EXPORT BOOL __stdcall EgtSetCalcTool( const wchar_t* wsTool, const wchar_t* wsHead, int nExit) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetCalcTool( wchar_t*& wsTool, wchar_t*& wsHead, int* pnExit) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetCalcAngles( const double vtDirT[3], const double vtDirA[3],
|
||||
int* pnStat, double* pdAngA1, double* pdAngB1, double* pdAngA2, double* pdAngB2) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetCalcPositions( const double ptP[3], double dAngA, double dAngB,
|
||||
@@ -912,6 +951,9 @@ EIN_EXPORT BOOL __stdcall EgtGetOutstrokeInfo( wchar_t*& wsInfo) ;
|
||||
// Machine Move
|
||||
EIN_EXPORT BOOL __stdcall EgtSetAxisPos( const wchar_t* wsAxis, double dVal) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisPos( const wchar_t* wsAxis, double* pdVal) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisMin( const wchar_t* wsAxis, double* pdMin) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisMax( const wchar_t* wsAxis, double* pdMax) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetAxisHomePos( const wchar_t* wsAxis, double* pdHome) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtLoadTool( const wchar_t* wsHead, int nExit, const wchar_t* wsTool) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtResetHeadSet( const wchar_t* wsHead) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtSetMachineLook( int nFlag) ;
|
||||
@@ -1001,6 +1043,7 @@ EIN_EXPORT BOOL __stdcall EgtGetPhotoPath( int nId, wchar_t*& wsFile) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtChangePhotoPath( int nId, const wchar_t* wsFile) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetPhotoOrigin( int nId, double ptOri[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetPhotoCenter( int nId, double ptCen[3]) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtChangePhotoCenterAsFlatScan( int nId) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetPhotoDimensions( int nId, double* pdDimX, double* pdDimY) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetPhotoPixels( int nId, int* pnPixelX, int* pnPixelY) ;
|
||||
EIN_EXPORT BOOL __stdcall EgtGetPhotoImagePixels( int nId, int* pnPixelX, int* pnPixelY) ;
|
||||
|
||||
@@ -34,6 +34,8 @@ extern "C" {
|
||||
EMK_EXPORT void SetEMkLogger( ILogger* pLogger) ;
|
||||
// imposta la chiave di protezione
|
||||
EMK_EXPORT void SetEMkKey( const std::string& sKey) ;
|
||||
// imposta se chiave hardware di rete
|
||||
EMK_EXPORT void SetEMkNetHwKey( bool bNetHwKey) ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
+10
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2021
|
||||
// EgalTech 2015-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EMkMachMgr.h Data : 24.05.21 Versione : 2.3e3
|
||||
// File : EMkMachMgr.h Data : 21.09.22 Versione : 2.4i4
|
||||
// Contenuto : Dichiarazione della interfaccia IMachMgr.
|
||||
//
|
||||
//
|
||||
@@ -12,6 +12,7 @@
|
||||
// 17.08.20 DS Aggiunte GetAxisMin e GetAxisMax.
|
||||
// 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.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -43,6 +44,7 @@ class __declspec( novtable) IMachMgr
|
||||
virtual int GetWarningId( int nInd) const = 0 ;
|
||||
virtual std::string GetWarningString( int nInd) const = 0 ;
|
||||
// Machines
|
||||
virtual bool GetMachines( STRVECTOR& vsMachineNames, STRVECTOR& vsMachineDirs) const = 0 ;
|
||||
virtual bool SetCurrMachine( const std::string& sMachineName) = 0 ;
|
||||
virtual bool GetCurrMachineName( std::string& sMachineName) const = 0 ;
|
||||
virtual bool GetCurrMachineDir( std::string& sMachineDir) const = 0 ;
|
||||
@@ -106,6 +108,7 @@ class __declspec( novtable) IMachMgr
|
||||
virtual bool GetTableRef( int nInd, Point3d& ptPos) const = 0 ;
|
||||
virtual bool GetTableArea( int nInd, BBox3d& b3Area) const = 0 ;
|
||||
virtual bool GetTableAreaOffset( int nInd, BBox3d& b3Area) const = 0 ;
|
||||
virtual bool ChangeTable( const std::string& sTable, bool bUpdateDisp) = 0 ;
|
||||
virtual bool ShowOnlyTable( bool bVal) = 0 ;
|
||||
virtual int AddFixture( const std::string& sName, const Point3d& ptPos, double dAngRotDeg, double dMov) = 0 ;
|
||||
virtual bool KeepFixture( int nFxtId, int nSouPhase) = 0 ;
|
||||
@@ -192,6 +195,10 @@ class __declspec( novtable) IMachMgr
|
||||
virtual bool MdbReload( void) = 0 ;
|
||||
virtual bool MdbSave( void) const = 0 ;
|
||||
virtual bool MdbGetMachiningDir( std::string& sMchDir) const = 0 ;
|
||||
virtual bool MdbExport( const STRVECTOR& vsMachiningsNames, const std::string& sOutFile) const = 0 ;
|
||||
virtual bool MdbToBeImported( const std::string& sFile, STRVECTOR& vsMachiningsNames, INTVECTOR& vMachiningsTypes) const = 0 ;
|
||||
virtual bool MdbImport( const std::string& sFile, const STRVECTOR& vsMachiningsToImport, const STRVECTOR& vsMachiningsNames,
|
||||
STRVECTOR& vsImported) = 0 ;
|
||||
// Operations : general
|
||||
virtual int GetOperationCount( void) const = 0 ;
|
||||
virtual int GetFirstOperation( void) const = 0 ;
|
||||
@@ -308,6 +315,7 @@ class __declspec( novtable) IMachMgr
|
||||
virtual bool GetAxisToken( const std::string& sAxis, std::string& sToken) const = 0 ;
|
||||
virtual bool GetAxisType( const std::string& sAxis, bool& bLinear) const = 0 ;
|
||||
virtual bool GetAxisInvert( const std::string& sAxis, bool& bInvert) const = 0 ;
|
||||
virtual bool GetAxisOffset( const std::string& sAxis, double& dOffset) const = 0 ;
|
||||
virtual bool SetAxisPos( const std::string& sAxis, double dVal, double* pdNewVal = nullptr) = 0 ;
|
||||
virtual bool GetAxisPos( const std::string& sAxis, double& dVal) const = 0 ;
|
||||
virtual bool GetAxisMin( const std::string& sAxis, double& dMin) const = 0 ;
|
||||
|
||||
+15
-4
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2020
|
||||
// EgalTech 2015-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EmkMachiningConst.h Data : 09.11.20 Versione : 2.2k2
|
||||
// File : EmkMachiningConst.h Data : 04.02.22 Versione : 2.4b1
|
||||
// Contenuto : Costanti delle lavorazioni.
|
||||
//
|
||||
//
|
||||
@@ -11,6 +11,7 @@
|
||||
// 25.05.19 DS Agg. SurfRoughing e SurfFinishing.
|
||||
// 03.06.20 DS Agg. MPA_TABMIN e MPA_TABMAX.
|
||||
// 09.11.20 DS Agg. MPA_SIDEANGFEED e MPA_STEPLAST.
|
||||
// 04.02.22 DS Agg. MPA_EPICYCLESRAD e MPA_EPICYCLESDIST.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -149,6 +150,8 @@ enum MpaType { MPA_NONE = 0,
|
||||
MPA_OSCFLATLEN = ( MPA_DOU + 49), // per fresatura
|
||||
MPA_SIDEANGFEED = ( MPA_DOU + 50), // per tagli con lama
|
||||
MPA_STEPLAST = ( MPA_DOU + 51), // per tagli con lama
|
||||
MPA_EPICYCLESRAD = ( MPA_DOU + 52), // per svuotature con epicicli
|
||||
MPA_EPICYCLESDIST = ( MPA_DOU + 53), // per svuotature con epicicli
|
||||
MPA_NAME = ( MPA_STR + 0),
|
||||
MPA_TOOL = ( MPA_STR + 1),
|
||||
MPA_DEPTH_STR = ( MPA_STR + 2),
|
||||
@@ -251,13 +254,15 @@ enum { MILL_LI_NONE = 0,
|
||||
MILL_LI_TANGENT = 2,
|
||||
MILL_LI_GLIDE = 3,
|
||||
MILL_LI_ZIGZAG = 4,
|
||||
MILL_LI_HELIX = 5} ;
|
||||
MILL_LI_HELIX = 5,
|
||||
MILL_LI_TG_PERP = 6} ;
|
||||
// Tipo di uscita
|
||||
enum { MILL_LO_NONE = 0,
|
||||
MILL_LO_LINEAR = 1,
|
||||
MILL_LO_TANGENT = 2,
|
||||
MILL_LO_GLIDE = 3,
|
||||
MILL_LO_AS_LI = 4} ;
|
||||
MILL_LO_AS_LI = 4,
|
||||
MILL_LO_PERP_TG = 5} ;
|
||||
// Tipo lavorazione faccia
|
||||
enum { MILL_FU_NONE = 0,
|
||||
MILL_FU_PARAL_DOWN = 1,
|
||||
@@ -347,6 +352,12 @@ enum { MORTISE_FU_NONE = 0,
|
||||
MORTISE_FU_PARAL_BACK = 4,
|
||||
MORTISE_FU_PARAL_LEFT = 5,
|
||||
MORTISE_FU_PARAL_RIGHT = 6} ;
|
||||
// Tipo di affondamento (plunge)
|
||||
enum { MORTISE_PLUNGE_STEP = 0,
|
||||
MORTISE_PLUNGE_START = 1,
|
||||
MORTISE_PLUNGE_END = 2,
|
||||
MORTISE_PLUNGE_START_END = 3,
|
||||
MORTISE_PLUNGE_START_TO_END = 4} ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Parametri per finitura superfici
|
||||
|
||||
+2
-2
@@ -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.
|
||||
//
|
||||
//
|
||||
|
||||
+7
-2
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2021
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EmkToolConst.h Data : 05.04.21 Versione : 2.3c2
|
||||
// File : EmkToolConst.h Data : 16.09.21 Versione : 2.3i6
|
||||
// Contenuto : Costanti degli utensili.
|
||||
//
|
||||
//
|
||||
@@ -9,7 +9,8 @@
|
||||
// Modifiche : 16.09.15 DS Creazione modulo.
|
||||
// 03.02.17 DS Agg. chisel.
|
||||
// 20.09.18 DS Agg. costanti per ToolHolder
|
||||
// 05.04.21 DS Agg. TPA_LEN2 e TPA_STEMDIAM.
|
||||
// 05.04.21 DS Agg. TPA_DIST e TPA_STEMDIAM.
|
||||
// 16.09.21 DS Agg. TPA_CORE.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -88,6 +89,7 @@ enum TpaType { TPA_NONE = 0,
|
||||
TPA_MINFEED = ( TPA_DOU + 17),
|
||||
TPA_DIST = ( TPA_DOU + 18),
|
||||
TPA_STEMDIAM = ( TPA_DOU + 19),
|
||||
TPA_CORE = ( TPA_DOU + 20),
|
||||
TPA_DRAW = ( TPA_STR + 0),
|
||||
TPA_HEAD = ( TPA_STR + 1),
|
||||
TPA_NAME = ( TPA_STR + 2),
|
||||
@@ -106,14 +108,17 @@ const int TD_CUSTOMDRAW_ERR = 997 ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Costanti per info in note di sistema
|
||||
const std::string TSI_THBASE = "THB" ; // posizione base portautensile da naso mandrino
|
||||
const std::string TSI_THLEN = "THH" ; // lunghezza portautensile da naso mandrino
|
||||
const std::string TSI_THDIAM = "THD" ; // diametro massimo portautensile
|
||||
const std::string TSI_ACTIVE = "ACTIVE" ; // flag di utensile attivo
|
||||
const std::string TSI_DIST = "DIST" ; // distanza per sega a catena
|
||||
const std::string TSI_STEM_DIAM = "D_STEM" ; // diametro effettivo del gambo utensile
|
||||
const std::string TSI_CORE = "CORE" ; // anima per lama
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Costanti per info in portautensili
|
||||
const std::string TTH_BASE = "B" ; // posizione base portautensile da naso mandrino
|
||||
const std::string TTH_LEN = "H" ; // lunghezza portautensile da naso mandrino
|
||||
const std::string TTH_DIAM = "D" ; // diametro massimo portautensile
|
||||
const std::string TTH_STEM_DIAM = "D_STEM" ; // diametro massimo gambo utensile
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "/EgtDev/Include/ENkCplxCollection.h"
|
||||
#include "/EgtDev/Include/EgnLuaAux.h"
|
||||
#include "/EgtDev/Include/EGnLuaAux.h"
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline bool
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
#define ENS_EXPORT __declspec( dllimport)
|
||||
#endif
|
||||
|
||||
class Point3d ;
|
||||
class PolyArc ;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -47,10 +48,14 @@ class __declspec( novtable) IAutoNester
|
||||
virtual bool SetStartCorner( int nCorner) = 0 ;
|
||||
virtual bool AddSheet( int nSheetId, const PolyArc& Outline, double dKerf, int nPriority, int nCount, bool* pbIsRect = nullptr) = 0 ;
|
||||
virtual bool AddDefectToSheet( int nSheetId, const PolyArc& Outline) = 0 ;
|
||||
virtual bool AddRestrictedZoneToSheet( int nRzConstrId, int nSheetId, const PolyArc& Outline) = 0 ;
|
||||
virtual bool AddPart( int nPartId, const PolyArc& Outline, bool bCanFlip, bool bCanRotate, double dRotStep, int nPriority, int nCount) = 0 ;
|
||||
virtual bool AddHoleToPart( int nPartId, const PolyArc& Hole) = 0 ;
|
||||
virtual bool AddAnotherOutlineToPart( int nPartId, const PolyArc& AnotherOutline) = 0 ;
|
||||
virtual bool AddToolOutlineToPart( int nPartId, const PolyArc& ToolOutline) = 0 ;
|
||||
virtual bool SetRestrictedZoneToPart( int nPartId, int nRzConstrId) = 0 ;
|
||||
virtual bool SetStripYconstraintToPart( int nPartId, const Point3d& ptRef, double dStripStart, double dStripRepeat) = 0 ;
|
||||
virtual bool SetStripXconstraintToPart( int nPartId, const Point3d& ptRef, double dStripStart, double dStripRepeat) = 0 ;
|
||||
virtual bool SetInterpartGap( double dGap) = 0 ;
|
||||
virtual bool SetReportFile( const std::string& sReportFile) = 0 ;
|
||||
virtual bool Compute( bool bMinimizeOnXvsY, int nMaxTime) = 0 ;
|
||||
|
||||
+14
-4
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2015
|
||||
// EgalTech 2014-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EXeConst.h Data : 05.05.15 Versione : 1.6e2
|
||||
// File : EXeConst.h Data : 11.01.22 Versione : 2.4a
|
||||
// Contenuto : Costanti generali per EgtExecuter.
|
||||
//
|
||||
//
|
||||
@@ -28,6 +28,7 @@ enum FileType { FT_NULL = 0,
|
||||
FT_SVG = 18,
|
||||
FT_BTLX = 19,
|
||||
FT_3MF = 20,
|
||||
FT_OBJ = 21,
|
||||
FT_IGES = 31,
|
||||
FT_STEP = 32,
|
||||
FT_ACIS = 33,
|
||||
@@ -35,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} ;
|
||||
|
||||
@@ -73,8 +75,9 @@ enum SLiType { SLT_NONE = 0,
|
||||
SLT_TOUCH = 5} ;
|
||||
|
||||
//----------------- Costanti tipo di costruzione di superficie rigata ----------
|
||||
enum RuledType{ RUL_TYPE_ISOPAR = 0, // come ISurfTrimesh::RLT_ISOPAR
|
||||
RUL_TYPE_MINDIST = 1} ; // come ISurfTrimesh::RLT_MINDIST
|
||||
enum RuledType{ RUL_TYPE_ISOPAR = 0, // come ISurfTrimesh::RLT_ISOPAR
|
||||
RUL_TYPE_MINDIST = 1, // come ISurfTrimesh::RLT_MINDIST
|
||||
RUL_TYPE_ISOPAR_SMOOTH = 3} ; // come ISurfTrimesh::RLT_ISOPAR_SMOOTH
|
||||
|
||||
enum CrvRegClass { CRC_NULL = 0,
|
||||
CRC_IN = 1,
|
||||
@@ -82,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
|
||||
|
||||
+92
-25
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2015
|
||||
// EgalTech 2015-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EXcExecutor.h Data : 04.05.15 Versione : 1.6e1
|
||||
// File : EXcExecutor.h Data : 06.05.22 Versione : 2.4e1
|
||||
// Contenuto : Interfaccia Executor.
|
||||
//
|
||||
//
|
||||
@@ -38,6 +38,8 @@ class LuaMgr ;
|
||||
EXE_EXPORT bool ExeInit( int nDebug, const std::string& sLogFile, const std::string& sLogMsg) ;
|
||||
EXE_EXPORT bool ExeExit( void) ;
|
||||
EXE_EXPORT int ExeGetDebugLevel( void) ;
|
||||
EXE_EXPORT bool ExeSetUserLevel( int nUserLev) ;
|
||||
EXE_EXPORT int ExeGetUserLevel( void) ;
|
||||
EXE_EXPORT bool ExeSetKey( const std::string& sKey) ;
|
||||
EXE_EXPORT bool ExeSetNestKey( const std::string& sNestKey) ;
|
||||
EXE_EXPORT bool ExeSetFont( const std::string& sNfeFontDir, const std::string& sDefaultFont) ;
|
||||
@@ -53,6 +55,7 @@ EXE_EXPORT bool ExeGetExecutableVersion( std::string& sVer) ;
|
||||
EXE_EXPORT bool ExeGetVersionInfo( std::string& sVer, const char* szNewLine) ;
|
||||
EXE_EXPORT bool ExeGetKeyInfo( std::string& sKey) ;
|
||||
EXE_EXPORT bool ExeSetLockType( int nType) ;
|
||||
EXE_EXPORT bool ExeSetNetHwKey( bool bNetHwKey) ;
|
||||
EXE_EXPORT bool ExeGetKeyLevel( int nProd, int nVer, int nLev, int& nKLev) ;
|
||||
EXE_EXPORT bool ExeGetKeyOptions( int nProd, int nVer, int nLev, unsigned int& nOpt2) ;
|
||||
EXE_EXPORT bool ExeGetKeyLeftDays( int& nLeftDays) ;
|
||||
@@ -63,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) ;
|
||||
@@ -118,13 +122,16 @@ 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
|
||||
EXE_EXPORT bool ExeInitBeamMgr( int nFlag) ;
|
||||
EXE_EXPORT bool ExeBeamSetFlag( int nFlag) ;
|
||||
EXE_EXPORT int ExeBeamCreatePart( void) ;
|
||||
EXE_EXPORT bool ExeBeamSetPart( int nPartId) ;
|
||||
EXE_EXPORT bool ExeBeamErasePart( void) ;
|
||||
@@ -133,10 +140,15 @@ EXE_EXPORT bool ExeBeamSetPartProdNbr( int nProdNbr) ;
|
||||
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, bool bUpdate = true) ;
|
||||
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
|
||||
int nCrvId, int nCrv2Id, bool bUpdate = true) ;
|
||||
EXE_EXPORT int ExeBeamModifyProcess( int nGeomId, 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, bool bUpdate = true) ;
|
||||
const Frame3d& frRef, const DBLVECTOR& vdPar, const std::string& sPar, const STRVECTOR& vsUAtt,
|
||||
int nCrvId, int nCrv2Id, bool bUpdate = true) ;
|
||||
EXE_EXPORT bool ExeBeamEraseProcess( int nGeomId, bool bUpdate = true) ;
|
||||
EXE_EXPORT bool ExeBeamEnableProcess( int nGeomId, bool bEnable, bool bUpdate = true) ;
|
||||
EXE_EXPORT bool ExeBeamCalcSolid( int nPartId, bool bRecalc = false) ;
|
||||
@@ -167,11 +179,12 @@ EXE_EXPORT bool ExeLuaGetGlobStringVar( const std::string& sVar, std::string& sV
|
||||
EXE_EXPORT bool ExeLuaGetGlobVectorVar( const std::string& sVar, Vector3d& vtVal) ;
|
||||
EXE_EXPORT bool ExeLuaGetGlobPointVar( const std::string& sVar, Point3d& ptVal) ;
|
||||
EXE_EXPORT bool ExeLuaResetGlobVar( const std::string& sVar) ;
|
||||
EXE_EXPORT bool ExeLuaExistsFunction( const std::string& sFun) ;
|
||||
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) ;
|
||||
|
||||
@@ -212,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) ;
|
||||
@@ -228,6 +249,7 @@ EXE_EXPORT int ExeCreateCircleCP( int nParentId, const Point3d& ptCen,
|
||||
const Point3d& ptOn, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateCircleCPEx( int nParentId, const Point3d& ptCen,
|
||||
const Point3d& ptOn, int nSepO, int nIdO, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateCircle2P( int nParentId, const Point3d& ptP1, const Point3d& ptP2, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateCircle3P( int nParentId, const Point3d& ptP1,
|
||||
const Point3d& ptP2, const Point3d& ptP3, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateArc( int nParentId, const Point3d& ptCen, double dRad,
|
||||
@@ -262,8 +284,12 @@ EXE_EXPORT int ExeCreateCurveBezierFromArc( int nParentId, int nArcId, bool bEr
|
||||
EXE_EXPORT int ExeCreateCurveCompo( int nParentId, const INTVECTOR& vIds, bool bErase) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByChain( int nParentId, const INTVECTOR& vIds,
|
||||
const Point3d& ptNear, bool bErase, int nRefType, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByChainEx( int nParentId, const INTVECTOR& vIds,
|
||||
const Point3d& ptNear, bool bErase, int nRefType, double dToler, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByReorder( int nParentId, const INTVECTOR& vIds,
|
||||
const Point3d& ptNear, bool bErase, int nRefType, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByReorderEx( int nParentId, const INTVECTOR& vIds,
|
||||
const Point3d& ptNear, bool bErase, int nRefType, double dToler, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByInterpolation( int nParentId, const PolyLine& PL, int nType, int nRefType) ;
|
||||
EXE_EXPORT int ExeCreateCurveCompoByApproximation( int nParentId, const PolyLine& PL, int nType,
|
||||
double dLinTol, int nRefType) ;
|
||||
@@ -314,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) ;
|
||||
@@ -358,6 +386,9 @@ EXE_EXPORT bool ExeDuploCount( int nSouId, int& nCount) ;
|
||||
EXE_EXPORT bool ExeDuploList( int nSouId, INTVECTOR& vnRef) ;
|
||||
EXE_EXPORT bool ExeDuploSetModified( int nSouId) ;
|
||||
EXE_EXPORT bool ExeDuploGetModified( int nSouId, bool& bModif) ;
|
||||
EXE_EXPORT bool ExeDuploSetLocked( int nDupId) ;
|
||||
EXE_EXPORT bool ExeDuploResetLocked( int nDupId) ;
|
||||
EXE_EXPORT bool ExeDuploGetLocked( int nDupId, bool& bLocked) ;
|
||||
EXE_EXPORT bool ExeDuploUpdate( int nSouId) ;
|
||||
EXE_EXPORT bool ExeIsDuplo( int nDupId) ;
|
||||
EXE_EXPORT int ExeDuploGetOriginal( int nDupId) ;
|
||||
@@ -434,6 +465,9 @@ EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const Vector3d& vt
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const Point3d& ptP) ;
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const BBox3d& b3Box) ;
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const Frame3d& frFrame) ;
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const INTVECTOR& vnInfo) ;
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const DBLVECTOR& vdInfo) ;
|
||||
EXE_EXPORT bool ExeSetInfo( int nId, const std::string& sKey, const STRVECTOR& vsInfo) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, bool& bInfo) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, int& nInfo) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, double& dInfo) ;
|
||||
@@ -442,8 +476,12 @@ EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, Vector3d& vtV) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, Point3d& ptP) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, BBox3d& b3Box) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, Frame3d& frFrame) ;
|
||||
EXE_EXPORT bool ExeGetInfo( int nId, const std::string& sKey, INTVECTOR& vnInfo) ;
|
||||
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) ;
|
||||
@@ -485,12 +523,15 @@ EXE_EXPORT int ExeSplitText( int nId, int* pnCount) ;
|
||||
EXE_EXPORT bool ExeInvertCurve( const INTVECTOR& vIds) ;
|
||||
EXE_EXPORT bool ExeOffsetCurve( int nId, double dDist, int nType) ;
|
||||
EXE_EXPORT int ExeOffsetCurveAdv( int nId, double dDist, int nType, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCurveMedialAxis( int nId) ;
|
||||
EXE_EXPORT bool ExeApproxCurve( int nId, int nApprType, double dLinTol) ;
|
||||
EXE_EXPORT bool ExeProjectCurveOnPlane( int nId, const Point3d& ptOn, const Vector3d& vtN, int nRefType) ;
|
||||
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 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) ;
|
||||
@@ -511,7 +552,7 @@ EXE_EXPORT int ExeSplitCurveAtSelfInters( int nId, int* pnCount) ;
|
||||
EXE_EXPORT int ExeGetCurveLinearConvexHullXY( int nId, double dLinTol, int nRefType) ;
|
||||
EXE_EXPORT bool ExeModifyCircleCP( int nId, const Point3d& ptOn, int nRefType) ;
|
||||
EXE_EXPORT bool ExeModifyCircle3P( int nId, const Point3d& ptP1, const Point3d& ptP2, const Point3d& ptP3, int nRefType) ;
|
||||
EXE_EXPORT bool ExeModifyArcRadius( int nId, double dRad) ;
|
||||
EXE_EXPORT bool ExeModifyArcRadius( int nId, double dRad, bool bKeepCenter = true) ;
|
||||
EXE_EXPORT bool ExeModifyArcC2P( int nId, const Point3d& ptEnd, int nRefType) ;
|
||||
EXE_EXPORT bool ExeModifyArc3P( int nId, const Point3d& ptMid, int nRefType) ;
|
||||
EXE_EXPORT bool ExeModifyArcToExplementary( int nId) ;
|
||||
@@ -519,8 +560,9 @@ EXE_EXPORT bool ExeModifyArcByFlip( int nId) ;
|
||||
EXE_EXPORT bool ExeCloseCurveCompo( int nId) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoCurve( int nId, int nAddCrvId, bool bEraseOrig, bool bEndVsStart) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoLine( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoArcTg( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoLineTg( int nId, double dLen, bool bEndVsStart) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoArc2P( int nId, const Point3d& ptMid, const Point3d& ptP, bool bEndVsStart, int nRefType) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoArcTg( int nId, const Point3d& ptP, bool bEndVsStart, int nRefType) ;
|
||||
EXE_EXPORT bool ExeRemoveCurveCompoCurve( int nId, bool bLast) ;
|
||||
EXE_EXPORT bool ExeAddCurveCompoJoint( int nId, double dU) ;
|
||||
EXE_EXPORT bool ExeModifyCurveCompoJoint( int nId, int nU, const Point3d& ptP, int nRefType) ;
|
||||
@@ -538,12 +580,14 @@ 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) ;
|
||||
EXE_EXPORT bool ExeSurfFrOffset( int nId, double dDist, int nType) ;
|
||||
EXE_EXPORT bool ExeSurfFrMoveSimpleNoCollision( int nId1, int nId2, const Vector3d& vtDir, double& dLen, int nRefType) ;
|
||||
EXE_EXPORT bool ExeSurfFrRotateSimpleNoCollision( int nId1, int nId2, const Point3d& ptCen, double& dAngDeg, int nRefType) ;
|
||||
EXE_EXPORT int ExeSurfTmToTriangles( int nId, int* pnCount) ;
|
||||
EXE_EXPORT bool ExeSurfTmRemoveFacet( int nId, int nFacet) ;
|
||||
EXE_EXPORT bool ExeSurfTmSwapFacets( int nId, int nFacet1, int nFacet2) ;
|
||||
EXE_EXPORT bool ExeSurfTmRemovePart( int nId, int nPart) ;
|
||||
@@ -561,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) ;
|
||||
@@ -589,10 +633,14 @@ EXE_EXPORT bool ExeTextGetItalic( int nId, bool& bItl) ;
|
||||
// GeomDb Curve Get
|
||||
EXE_EXPORT bool ExeCurveDomain( int nId, double* pdStart, double* pdEnd) ;
|
||||
EXE_EXPORT bool ExeCurveLength( int nId, double* pdLen) ;
|
||||
EXE_EXPORT bool ExeCurveParamAtLength( int nId, double dLen, double* pdPar) ;
|
||||
EXE_EXPORT bool ExeCurveParamAtPoint( int nId, const Point3d& pt, double dTol, int nRefType, double* pdPar) ;
|
||||
EXE_EXPORT bool ExeCurveLengthAtPoint( int nId, const Point3d& ptOn, double dExtend, double* pdLen) ;
|
||||
EXE_EXPORT bool ExeCurveIsClosed( int nId) ;
|
||||
EXE_EXPORT bool ExeCurveIsFlat( int nId, Plane3d& Plane, bool bUseExtrusion = true, double dToler = EPS_SMALL) ;
|
||||
EXE_EXPORT bool ExeCurveIsACircle( int nId, Point3d& ptCen, Vector3d& vtN, double& dRad, bool& bCCW, double dToler = EPS_SMALL) ;
|
||||
EXE_EXPORT bool ExeCurveIsARectangle( int nId, Point3d& ptP, Vector3d& vtL1, Vector3d& vtL2, double dToler = EPS_SMALL) ;
|
||||
EXE_EXPORT bool ExeCurveIsATrapezoid( int nId, Point3d& ptP, Vector3d& vtB1, Vector3d& vtL1, Vector3d& vtB2, double dToler = EPS_SMALL) ;
|
||||
EXE_EXPORT bool ExeCurveAreaXY( int nId, double& dArea) ;
|
||||
EXE_EXPORT bool ExeCurveArea( int nId, Plane3d& Plane, double& dArea) ;
|
||||
EXE_EXPORT bool ExeCurveNearestExtremityToPoint( int nId, const Point3d& ptP, bool& bStart) ;
|
||||
@@ -606,11 +654,15 @@ 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) ;
|
||||
EXE_EXPORT bool ExeCurveCompoNormVersor( int nId, int nSimpCrv, int nRefId, Vector3d& vtNorm) ;
|
||||
|
||||
// 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) ;
|
||||
@@ -618,6 +670,9 @@ EXE_EXPORT bool ExeSurfFrTestExternal( int nId1, int nId2, double dMinDist) ;
|
||||
EXE_EXPORT int ExeSurfFrChunkCount( int nId) ;
|
||||
EXE_EXPORT int ExeSurfFrChunkSimpleClassify( int nId1, int nChunk1, int nId2, int nChunk2, double dToler = 0) ;
|
||||
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) ;
|
||||
@@ -634,7 +689,7 @@ EXE_EXPORT bool ExeSurfTmFacetOppositeSideEx( int nId, int nFacet, const Vector3
|
||||
Point3d& ptP1, Point3d& ptPm, Point3d& ptP2, Vector3d& vtIn1, Vector3d& vtOut2, double& dLen, double& dWidth) ;
|
||||
EXE_EXPORT bool ExeSurfTmFacetsContact( int nId, int nF1, int nF2, int nRefId, bool& bAdjac, Point3d& ptP1, Point3d& ptP2, double& dAng) ;
|
||||
EXE_EXPORT int ExeExtractSurfTmLoops( int nId, int nDestGrpId, int* pnCount) ;
|
||||
EXE_EXPORT int ExeGetSurfTmSilhouette( int nId, const Vector3d& vtDir, int nDestGrpId, int nRefType, int* pnCount) ;
|
||||
EXE_EXPORT int ExeGetSurfTmSilhouette( int nId, const Vector3d& vtDir, double dToler, int nDestGrpId, int nRefType, int* pnCount) ;
|
||||
EXE_EXPORT int ExeExtractSurfTmFacetLoops( int nId, int nFacet, int nDestGrpId, int* pnCount) ;
|
||||
EXE_EXPORT int ExeCopySurfTmFacet( int nId, int nFacet, int nDestGrpId) ;
|
||||
EXE_EXPORT bool ExeSurfTmGetFacetBBox( int nId, int nFacet, int nFlag, BBox3d& b3Box) ;
|
||||
@@ -714,10 +769,14 @@ EXE_EXPORT bool ExeLineBoxInters( const Point3d& ptP, const Vector3d& vtDir, con
|
||||
EXE_EXPORT int ExePlaneBoxInters( const Point3d& ptOn, const Vector3d& vtN, const BBox3d& b3Box, int nDestGrpId, int nRefType,
|
||||
int* pnPntCount, int* pnCrvCount, int* pnSrfCount) ;
|
||||
EXE_EXPORT bool ExeLineSurfTmInters( const Point3d& ptP, const Vector3d& vtDir, int nId, int nRefType, INTDBLVECTOR& vInters) ;
|
||||
EXE_EXPORT int ExePlaneSurfTmInters( const Point3d& ptOn, const Vector3d& vtN, int nId, int nDestGrpId, int nRefType,
|
||||
EXE_EXPORT int ExePlaneSurfTmInters( const Point3d& ptOn, const Vector3d& vtN, int nId, int nDestGrpId, int nRefType, double dToler,
|
||||
int* pnPntCount, int* pnCrvCount, int* pnSrfCount) ;
|
||||
EXE_EXPORT int ExeSurfTmSurfTmInters( int nId1, int nId2, int nDestGrpId,
|
||||
EXE_EXPORT int ExeParPlanesSurfTmInters( const Point3d& ptOn, const Vector3d& vtN, const DBLVECTOR& vdDist, int nId, int nDestGrpId, int nRefType, double dToler,
|
||||
int* pnGrpCount) ;
|
||||
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) ;
|
||||
@@ -782,10 +841,14 @@ EXE_EXPORT bool ExeAutoNestSetGuillotineMode( void) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetStartCorner( int nCorner) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddSheet( int nSheetId, int nOutlineId, double dKerf, int nPriority, int nCount, bool* pbIsRect = nullptr) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddDefectToSheet( int nSheetId, int nDefectId) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddRestrictedZoneToSheet( int nSheetId, int nRstZoneId, int nRzConstrId) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddPart( int nPartId, int nOutlineId, bool bCanFlip, bool bCanRotate, double dRotStep, int nPriority, int nCount) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddHoleToPart( int nPartId, int nHoleId) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddAnotherOutlineToPart( int nPartId, int nAnotherOutlineId) ;
|
||||
EXE_EXPORT bool ExeAutoNestAddToolOutlineToPart( int nPartId, int nToolOutlineId) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetRestrictedZoneToPart( int nPartId, int nRzConstrId) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetStripYconstraintToPart( int nPartId, const Point3d& ptRef, double dStripStart, double dStripRepeat) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetStripXconstraintToPart( int nPartId, const Point3d& ptRef, double dStripStart, double dStripRepeat) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetInterpartGap( double dGap) ;
|
||||
EXE_EXPORT bool ExeAutoNestSetReportFile( const std::string& sReportFile) ;
|
||||
EXE_EXPORT bool ExeAutoNestCompute( bool bMinimizeOnXvsY, int nMaxTime) ;
|
||||
@@ -813,6 +876,7 @@ EXE_EXPORT std::string ExeGetLastMachMgrErrorString( void) ;
|
||||
EXE_EXPORT int ExeGetMachMgrWarningId( int nInd) ;
|
||||
EXE_EXPORT std::string ExeGetMachMgrWarningString( int nInd) ;
|
||||
// Machines
|
||||
EXE_EXPORT bool ExeGetMachines( STRVECTOR& vsMachineNames, STRVECTOR& vsMachineDirs) ;
|
||||
EXE_EXPORT bool ExeSetCurrMachine( const std::string& sMachineName) ;
|
||||
EXE_EXPORT bool ExeGetCurrMachineName( std::string& sMachineName) ;
|
||||
EXE_EXPORT bool ExeGetCurrMachineDir( std::string& sMachineDir) ;
|
||||
@@ -875,6 +939,7 @@ EXE_EXPORT bool ExeGetTable( std::string& sTable) ;
|
||||
EXE_EXPORT bool ExeGetTableRef( int nInd, Point3d& ptPos) ;
|
||||
EXE_EXPORT bool ExeGetTableArea( int nInd, BBox3d& b3Area) ;
|
||||
EXE_EXPORT bool ExeGetTableAreaOffset( int nInd, BBox3d& b3AreaOffs) ;
|
||||
EXE_EXPORT bool ExeChangeTable( const std::string& sTable, bool bUpdateDisp) ;
|
||||
EXE_EXPORT bool ExeShowOnlyTable( bool bVal) ;
|
||||
EXE_EXPORT int ExeAddFixture( const std::string& sName, const Point3d& ptPos, double dAngRotDeg, double dMov) ;
|
||||
EXE_EXPORT bool ExeKeepFixture( int nFxtId, int nSouPhase) ;
|
||||
@@ -924,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) ;
|
||||
@@ -962,6 +1026,9 @@ EXE_EXPORT bool ExeMdbGetGeneralParam( int nType, double& dVal) ;
|
||||
EXE_EXPORT bool ExeMdbReload( void) ;
|
||||
EXE_EXPORT bool ExeMdbSave( void) ;
|
||||
EXE_EXPORT bool ExeMdbGetMachiningDir( std::string& sMchDir) ;
|
||||
EXE_EXPORT bool ExeMdbExport( const STRVECTOR& vsMachiningsNames, const std::string& sOutFile) ;
|
||||
EXE_EXPORT bool ExeMdbToBeImported( const std::string& sFile, STRVECTOR& vsMachiningsNames, INTVECTOR& vMachiningsTypes) ;
|
||||
EXE_EXPORT bool ExeMdbImport( const std::string& sFile, const STRVECTOR& vsMachiningsToImport, const STRVECTOR& vsMachiningsNames, STRVECTOR& vsImported) ;
|
||||
// Operations
|
||||
EXE_EXPORT int ExeGetFirstOperation( void) ;
|
||||
EXE_EXPORT int ExeGetNextOperation( int nId) ;
|
||||
@@ -1054,6 +1121,7 @@ EXE_EXPORT int ExeGetTcPosId( const std::string& sTcPos) ;
|
||||
EXE_EXPORT bool ExeGetAxisToken( const std::string& sAxis, std::string& sToken) ;
|
||||
EXE_EXPORT bool ExeGetAxisType( const std::string& sAxis, bool& bLinear) ;
|
||||
EXE_EXPORT bool ExeGetAxisInvert( const std::string& sAxis, bool& bInvert) ;
|
||||
EXE_EXPORT bool ExeGetAxisOffset( const std::string& sAxis, double& dOffset) ;
|
||||
EXE_EXPORT bool ExeGetAllTablesNames( STRVECTOR& vNames) ;
|
||||
EXE_EXPORT bool ExeGetAllHeadsNames( STRVECTOR& vNames) ;
|
||||
EXE_EXPORT bool ExeGetAllTcPosNames( STRVECTOR& vNames) ;
|
||||
@@ -1061,10 +1129,8 @@ EXE_EXPORT bool ExeGetAllTcPosNames( STRVECTOR& vNames) ;
|
||||
EXE_EXPORT bool ExeSetCalcTable( const std::string& sTable) ;
|
||||
EXE_EXPORT bool ExeSetCalcTool( const std::string& sTool, const std::string& sHead, int nExit) ;
|
||||
EXE_EXPORT bool ExeSetRotAxisBlock( const std::string& sAxis, double dVal) ;
|
||||
EXE_EXPORT bool ExeGetCalcTool( std::string& sTool, std::string& sHead, int& nExit) ;
|
||||
EXE_EXPORT bool ExeGetRotAxisBlocked( int nInd, std::string& sAxis, double& dVal) ;
|
||||
EXE_EXPORT bool ExeGetCalcTool( std::string& sTool) ;
|
||||
EXE_EXPORT bool ExeGetCalcHead( std::string& sHead) ;
|
||||
EXE_EXPORT bool ExeGetCalcExit( int& nExit) ;
|
||||
EXE_EXPORT bool ExeGetCalcAngles( const Vector3d& vtDirT, const Vector3d& vtDirA,
|
||||
int& nStat, double& dAngA1, double& dAngB1, double& dAngA2, double& dAngB2) ;
|
||||
EXE_EXPORT bool ExeGetCalcAngles( const Vector3d& vtDirT, const Vector3d& vtDirA,
|
||||
@@ -1181,6 +1247,7 @@ EXE_EXPORT bool ExeGetPhotoPath( int nId, std::string& sPath) ;
|
||||
EXE_EXPORT bool ExeChangePhotoPath( int nId, const std::string& sPath) ;
|
||||
EXE_EXPORT bool ExeGetPhotoOrigin( int nId, Point3d& ptOri) ;
|
||||
EXE_EXPORT bool ExeGetPhotoCenter( int nId, Point3d& ptCen) ;
|
||||
EXE_EXPORT bool ExeChangePhotoCenterAsFlatScan( int nId) ;
|
||||
EXE_EXPORT bool ExeGetPhotoDimensions( int nId, double& dDimX, double& dDimY) ;
|
||||
EXE_EXPORT bool ExeGetPhotoPixels( int nId, int& nPixelX, int& nPixelY) ;
|
||||
EXE_EXPORT bool ExeGetPhotoImagePixels( int nId, int& nPixelX, int& nPixelY) ;
|
||||
|
||||
+5
-3
@@ -1,7 +1,7 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2015-2021
|
||||
// EgalTech 2015-2023
|
||||
//----------------------------------------------------------------------------
|
||||
// File : EgtKeyCodes.h Data : 06.09.21 Versione : 2.3i1
|
||||
// File : EgtKeyCodes.h Data : 01.01.23 Versione : 2.5a1
|
||||
// Contenuto : Costanti per codici di protezione librerie di base.
|
||||
//
|
||||
//
|
||||
@@ -15,6 +15,8 @@
|
||||
// 22.02.20 DS Aggiunta costante KEYOPT_EMK_NC_OFF.
|
||||
// 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.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -22,7 +24,7 @@
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
const int KEY_BASELIB_PROD = 207 ;
|
||||
const int KEY_BASELIB_VER = 2309 ;
|
||||
const int KEY_BASELIB_VER = 2504 ;
|
||||
const int KEY_BASELIB_LEV = 1 ;
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
+2
-2
@@ -17,14 +17,14 @@
|
||||
inline
|
||||
int Clamp( int nVal, int nMin, int nMax)
|
||||
{
|
||||
return ( nVal <= nMin ? nMin : nVal >= nMax ? nMax : nVal) ;
|
||||
return ( nVal < nMin ? nMin : nMax < nVal ? nMax : nVal) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
inline
|
||||
double Clamp( double dVal, double dMin, double dMax)
|
||||
{
|
||||
return ( dVal <= dMin ? dMin : dVal >= dMax ? dMax : dVal) ;
|
||||
return ( dVal < dMin ? dMin : dMax < dVal ? dMax : dVal) ;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
+8
-3
@@ -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 ; }
|
||||
|
||||
@@ -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
|
||||
|
||||
+6
-4
@@ -1,13 +1,13 @@
|
||||
//----------------------------------------------------------------------------
|
||||
// EgalTech 2014-2015
|
||||
// EgalTech 2014-2022
|
||||
//----------------------------------------------------------------------------
|
||||
// File : SELkLockId.cpp Data : 27.07.15 Versione : 1.6g8
|
||||
// File : SELkLockId.cpp Data : 16.05.22 Versione : 2.4e3
|
||||
// Contenuto : Dichiarazione funzioni per gestione/calcolo Id protezione,
|
||||
// da macchina o da chiave hardware.
|
||||
//
|
||||
//
|
||||
// Modifiche : 10.09.14 DS Creazione modulo.
|
||||
//
|
||||
// 16.05.22 DS Aggiunta gestione chiave di rete.
|
||||
//
|
||||
//----------------------------------------------------------------------------
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
//-------------------------------------------------------------------------------
|
||||
// Imposto il tipo di protezione
|
||||
bool SetLockType( int nType) ;
|
||||
// Forzo chiave di rete (se prevista protezione hardware)
|
||||
bool SetNetHwKey( bool bNetHwKey) ;
|
||||
// Recupero l'identificativo in chiaro della protezione
|
||||
bool GetLockId( std::string& sLockId) ;
|
||||
// Recupero l'identificativo cifrato della protezione
|
||||
@@ -27,7 +29,7 @@ bool ConvertLockIdToLockId2( const std::string& sLockId, std::string& sLockId2)
|
||||
bool ConvertLockId2ToLockId( const std::string& sLockId2, std::string& sLockId) ;
|
||||
bool ConvertLockIdToScramKey( const std::string& sLockId, std::string& sScramKey) ;
|
||||
bool ConvertLockId2ToScramKey( const std::string& sLockId2, std::string& sScramKey) ;
|
||||
// Serial Number della chiave hw
|
||||
// Serial Number della chiave hw (non di rete)
|
||||
bool GetLockSN( int& nLockSN) ;
|
||||
|
||||
//-------------------------- Constants ----------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user