diff --git a/EGkSfrCreate.h b/EGkSfrCreate.h index bc32bd1..ec4fbde 100644 --- a/EGkSfrCreate.h +++ b/EGkSfrCreate.h @@ -27,6 +27,9 @@ 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) ; //---------------------------------------------------------------------------- class SurfFlatRegionByContours diff --git a/EInAPI.h b/EInAPI.h index 592d989..3f06077 100644 --- a/EInAPI.h +++ b/EInAPI.h @@ -556,8 +556,8 @@ EIN_EXPORT BOOL __stdcall EgtMdbGetCurrMachiningParamBool( int nType, BOOL* pbVa EIN_EXPORT BOOL __stdcall EgtMdbGetCurrMachiningParamInt( int nType, int* pnVal) ; EIN_EXPORT BOOL __stdcall EgtMdbGetCurrMachiningParamDouble( int nType, double* pdVal) ; EIN_EXPORT BOOL __stdcall EgtMdbGetCurrMachiningParamString( int nType, wchar_t*& wsVal) ; -EIN_EXPORT BOOL __stdcall EgtMdbSetSafeZ( double dSafeZ) ; -EIN_EXPORT BOOL __stdcall EgtMdbGetSafeZ( double* pdSafeZ) ; +EIN_EXPORT BOOL __stdcall EgtMdbSetGeneralParamDouble( int nType, double dVal) ; +EIN_EXPORT BOOL __stdcall EgtMdbGetGeneralParamDouble( int nType, double* pdVal) ; EIN_EXPORT BOOL __stdcall EgtMdbSave( void) ; EIN_EXPORT BOOL __stdcall EgtMdbGetMachiningDir( wchar_t*& wsMchDir) ; // Operations @@ -572,6 +572,9 @@ EIN_EXPORT BOOL __stdcall EgtSetAllOperationsMode( BOOL bActive) ; EIN_EXPORT BOOL __stdcall EgtSetOperationStatus( int nId, BOOL bShow) ; EIN_EXPORT BOOL __stdcall EgtGetOperationStatus( int nId) ; EIN_EXPORT BOOL __stdcall EgtSetAllOperationsStatus( BOOL bShow) ; +// Machinings +EIN_EXPORT BOOL __stdcall EgtSetCurrMachining( int nId) ; +EIN_EXPORT BOOL __stdcall EgtIsMachiningNotEmpty( void) ; // Simulation EIN_EXPORT BOOL __stdcall EgtSimStart( void) ; EIN_EXPORT BOOL __stdcall EgtSimMove( int* pnStatus) ; diff --git a/EMkMachMgr.h b/EMkMachMgr.h index 0707695..7c7152d 100644 --- a/EMkMachMgr.h +++ b/EMkMachMgr.h @@ -116,8 +116,8 @@ class __declspec( novtable) IMachMgr virtual bool MdbGetCurrMachiningParam( int nType, int& nVal) const = 0 ; virtual bool MdbGetCurrMachiningParam( int nType, double& dVal) const = 0 ; virtual bool MdbGetCurrMachiningParam( int nType, std::string& sVal) const = 0 ; - virtual bool MdbSetSafeZ( double dSafeZ) = 0 ; - virtual bool MdbGetSafeZ( double& dSafeZ) const = 0 ; + virtual bool MdbSetGeneralParam( int nType, double dVal) = 0 ; + virtual bool MdbGetGeneralParam( int nType, double& dVal) const = 0 ; virtual bool MdbSave( void) const = 0 ; virtual bool MdbGetMachiningDir( std::string& sMchDir) const = 0 ; // Operations : general @@ -160,6 +160,7 @@ class __declspec( novtable) IMachMgr virtual bool GetMachiningParam( int nType, double& dVal) const = 0 ; virtual bool GetMachiningParam( int nType, std::string& sVal) const = 0 ; virtual bool GetMachiningGeometry( SELVECTOR& vIds) const = 0 ; + virtual bool IsNotEmpty( void) const = 0 ; // Simulation virtual bool SimStart( void) = 0 ; virtual bool SimMove( int& nStatus) = 0 ; diff --git a/EMkMachiningConst.h b/EMkMachiningConst.h index b428f06..71951cb 100644 --- a/EMkMachiningConst.h +++ b/EMkMachiningConst.h @@ -15,6 +15,19 @@ #include "\EgtDev\Include\EMkOperationConst.h" + +//---------------------------------------------------------------------------- +// Costanti famiglie di parametri generali ( i primi 12 bit (0-4095) restano liberi) +const int MGP_BOOL = 0x1000 ; +const int MGP_INT = 0x2000 ; +const int MGP_DOU = 0x4000 ; +const int MGP_STR = 0x8000 ; +// Costanti tipo parametri generali delle lavorazioni +enum MgpType { MGP_NONE = 0, + MGP_SAFEZ = ( MGP_DOU + 0), + MGP_EXTRALONCUTREG = ( MGP_DOU + 1), + MGP_EXTRARONDRIREG = ( MGP_DOU + 2)} ; + //---------------------------------------------------------------------------- // Tipologie di lavorazioni (derivano da tipologie di operazioni) enum MachiningType { @@ -44,6 +57,7 @@ enum MpaType { MPA_NONE = 0, MPA_LEADOUTTYPE = ( MPA_INT + 5), MPA_CURVEUSE = ( MPA_INT + 6), MPA_STEPTYPE = ( MPA_INT + 7), + MPA_SUBTYPE = ( MPA_INT + 8), MPA_TOOLSPEED = ( MPA_DOU + 0), MPA_TOOLFEED = ( MPA_DOU + 1), MPA_TOOLSTARTFEED = ( MPA_DOU + 2), @@ -60,7 +74,7 @@ enum MpaType { MPA_NONE = 0, MPA_THROUADDLEN = ( MPA_DOU + 13), MPA_STEP = ( MPA_DOU + 14), MPA_RETURNPOS = ( MPA_DOU + 15), - MPA_OVERLAP = ( MPA_DOU + 16), + MPA_OVERLAP = ( MPA_DOU + 16), // per forature solo set, get con MPA_OVERLAP_STR MPA_TABLEN = ( MPA_DOU + 17), MPA_TABDIST = ( MPA_DOU + 18), MPA_TABHEIGHT = ( MPA_DOU + 19), @@ -75,11 +89,22 @@ enum MpaType { MPA_NONE = 0, MPA_LOCOMPLEN = ( MPA_DOU + 28), MPA_STARTADDLEN = ( MPA_DOU + 29), MPA_ENDADDLEN = ( MPA_DOU + 30), + MPA_OFFSET = ( MPA_DOU + 31), // solo set, get con MPA_OFFSET_STR MPA_NAME = ( MPA_STR + 0), MPA_TOOL = ( MPA_STR + 1), MPA_DEPTH_STR = ( MPA_STR + 2), MPA_TUUID = ( MPA_STR + 3), - MPA_UUID = ( MPA_STR + 4)} ; + MPA_UUID = ( MPA_STR + 4), + MPA_SYSNOTES = ( MPA_STR + 5), + MPA_USERNOTES = ( MPA_STR + 6), + MPA_OVERLAP_STR = ( MPA_STR + 7), + MPA_OFFSET_STR = ( MPA_STR + 8)} ; + +//---------------------------------------------------------------------------- +// Parametri per foratura +// Sottotipo +enum { DRI_SUB_STD = 0, + DRI_SUB_ALONG_CURVE = 1 } ; //---------------------------------------------------------------------------- // Parametri per lavorazione con lama diff --git a/EMkMachiningGeoConst.h b/EMkMachiningGeoConst.h index 0e63e0e..b2c34c3 100644 --- a/EMkMachiningGeoConst.h +++ b/EMkMachiningGeoConst.h @@ -18,6 +18,8 @@ //---------------------------------------------------------------------------- // Chiave per elenco identificativi di selezione static std::string KEY_IDS = "IDS" ; +// Chiave per conteggio elementi geometrici di lavorazione +static std::string KEY_NUM = "NUM" ; // Sottogruppi delle lavorazioni static std::string MCH_AUX = "AUX" ; static std::string MCH_PV = "PV" ; diff --git a/EXeCmdLogOff.h b/EXeCmdLogOff.h new file mode 100644 index 0000000..ecc5ef0 --- /dev/null +++ b/EXeCmdLogOff.h @@ -0,0 +1,33 @@ +//---------------------------------------------------------------------------- +// EgalTech 2016-2016 +//---------------------------------------------------------------------------- +// File : EXeCmdLogOff.h Data : 24.01.16 Versione : 1.6l9 +// Contenuto : Dichiarazione classe per disabilitazione temporanea +// registrazione dei comandi in formato lua. +// +// +// Modifiche : 24.01.16 DS Creazione modulo. +// +// +//---------------------------------------------------------------------------- + +#pragma once + +#include "/EgtDev/Include/EXeExecutor.h" + +//---------------------------------------------------------------------------- +class CmdLogOff +{ + public : + explicit CmdLogOff( void) + { m_bOldLog = ExeDisableCommandLogger() ; } + ~CmdLogOff( void) + { Reset() ; } + void Reset( void) + { if ( m_bOldLog) + ExeEnableCommandLogger() ; + m_bOldLog = false ; } + + private : + bool m_bOldLog ; +} ; diff --git a/EXeExecutor.h b/EXeExecutor.h index dc57c8c..89effc0 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -42,8 +42,8 @@ EXE_EXPORT bool ExeGetNfeFontDir( std::string& sNfeFontDir) ; EXE_EXPORT bool ExeGetDefaultFont( std::string& sDefaultFont) ; EXE_EXPORT bool ExeSetLuaLibs( const std::string& sLuaLibsDir) ; EXE_EXPORT bool ExeSetCommandLogger( const std::string& sLogFile) ; -EXE_EXPORT void ExeEnableCommandLogger( void) ; -EXE_EXPORT void ExeDisableCommandLogger( void) ; +EXE_EXPORT bool ExeEnableCommandLogger( void) ; +EXE_EXPORT bool ExeDisableCommandLogger( void) ; EXE_EXPORT bool ExeGetVersionInfo( std::string& sVer, const char* szNewLine) ; EXE_EXPORT bool ExeGetKeyInfo( std::string& sKey) ; EXE_EXPORT bool ExeGetOsInfo( std::string& sOs) ; @@ -196,6 +196,8 @@ 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 ExeCreateCurveCompoByReorder( int nParentId, const INTVECTOR& vIds, + const Point3d& ptNear, bool bErase, int nRefType, 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) ; @@ -211,8 +213,11 @@ EXE_EXPORT int ExeCreatePolygonFromApothem( int nParentId, int nNumSides, const const Point3d& ptMid, int nRefType) ; EXE_EXPORT int ExeCreatePolygonFromSide( int nParentId, int nNumSides, const Point3d& ptIni, const Point3d& ptFin, int nRefType) ; +EXE_EXPORT int ExeCreateCirclesAlongCurve( int nParentId, int nCrvId, double dOffset, double dOverlap, + double dStartAdd, double dEndAdd, double dDiam, int* pnCount) ; // GeomDB Create Surf EXE_EXPORT int ExeCreateSurfFlatRegion( int nParentId, INTVECTOR& vCrvIds, int* pnCount) ; +EXE_EXPORT int ExeCreateSurfFrFatCurve( int nParentId, int nCrvId, double dRad, bool bSquared) ; EXE_EXPORT int ExeCreateSurfFrRectangle( int nParentId, const Point3d& ptIni, const Point3d& ptCross, int nRefType) ; EXE_EXPORT int ExeCreateSurfFrRectangle3P( int nParentId, const Point3d& ptIni, const Point3d& ptCross, const Point3d& ptDir, int nRefType) ; @@ -399,6 +404,8 @@ EXE_EXPORT bool ExeModifyArcToExplementary( int nId) ; EXE_EXPORT bool ExeModifyArcByFlip( int nId) ; EXE_EXPORT int ExeExplodeCurveCompo( int nId, int* pnCount) ; EXE_EXPORT bool ExeMergeCurvesInCurveCompo( int nId, double dLinTol) ; +EXE_EXPORT bool ExeChainCurvesInGroup( int nGroupId, const Point3d& ptNear, int nRefType) ; +EXE_EXPORT bool ExeReorderCurvesInGroup( int nGroupId, const Point3d& ptNear, int nRefType) ; // GeomDb Surf Modify EXE_EXPORT bool ExeInvertSurface( const INTVECTOR& vIds) ; @@ -591,8 +598,8 @@ EXE_EXPORT bool ExeMdbGetCurrMachiningParam( int nType, bool& nVal) ; EXE_EXPORT bool ExeMdbGetCurrMachiningParam( int nType, int& nVal) ; EXE_EXPORT bool ExeMdbGetCurrMachiningParam( int nType, double& dVal) ; EXE_EXPORT bool ExeMdbGetCurrMachiningParam( int nType, std::string& sVal) ; -EXE_EXPORT bool ExeMdbSetSafeZ( double dSafeZ) ; -EXE_EXPORT bool ExeMdbGetSafeZ( double& dSafeZ) ; +EXE_EXPORT bool ExeMdbSetGeneralParam( int nType, double dVal) ; +EXE_EXPORT bool ExeMdbGetGeneralParam( int nType, double& dVal) ; EXE_EXPORT bool ExeMdbSave( void) ; EXE_EXPORT bool ExeMdbGetMachiningDir( std::string& sMchDir) ; // Operations @@ -622,6 +629,7 @@ EXE_EXPORT bool ExeGetMachiningParam( int nType, int& nVal) ; EXE_EXPORT bool ExeGetMachiningParam( int nType, double& dVal) ; EXE_EXPORT bool ExeGetMachiningParam( int nType, std::string& sVal) ; EXE_EXPORT bool ExeGetMachiningGeometry( SELVECTOR& vIds) ; +EXE_EXPORT bool ExeIsMachiningNotEmpty( void) ; // Simulation EXE_EXPORT bool ExeSimStart( void) ; EXE_EXPORT bool ExeSimMove( int& nStatus) ;