diff --git a/EGkFrame3d.h b/EGkFrame3d.h index e2f4daa..b92aa2d 100644 --- a/EGkFrame3d.h +++ b/EGkFrame3d.h @@ -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) ; diff --git a/EGkVector3d.h b/EGkVector3d.h index 048c264..8014aaa 100644 --- a/EGkVector3d.h +++ b/EGkVector3d.h @@ -1,7 +1,7 @@ //---------------------------------------------------------------------------- // EgalTech 2013-2022 //---------------------------------------------------------------------------- -// File : EGkVector3d.h Data : 22.08.22 Versione : 2.4h2 +// File : EGkVector3d.h Data : 27.08.22 Versione : 2.4h2 // Contenuto : Dichiarazione della classe Vettore 3d. // // @@ -74,18 +74,27 @@ class EGK_EXPORT Vector3d //! 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) ; } + //! Verifica se il vettore è parallelo a X + bool IsX( void) const + { return ( abs( x) > EPS_ZERO && abs( y) < EPS_ZERO && abs( z) < EPS_ZERO) ; } //! 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) ; } //! 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) ; } + //! Verifica se il vettore è parallelo a Y + bool IsY( void) const + { return ( abs( x) < EPS_ZERO && abs( y) > EPS_ZERO && abs( z) < EPS_ZERO) ; } //! 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) ; } //! 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) ; } + //! Verifica se il vettore è parallelo a Z + bool IsZ( void) const + { return ( abs( x) < EPS_ZERO && abs( y) < EPS_ZERO && abs( z) > EPS_ZERO) ; } //! Verifica se il vettore è generico bool IsGeneric( void) const { return (( abs( x) > EPS_ZERO && abs( y) > EPS_ZERO) || diff --git a/EInAPI.h b/EInAPI.h index 5c7bc7b..228ab6e 100644 --- a/EInAPI.h +++ b/EInAPI.h @@ -169,6 +169,7 @@ 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) ; diff --git a/EXeExecutor.h b/EXeExecutor.h index 3752b3b..232b959 100644 --- a/EXeExecutor.h +++ b/EXeExecutor.h @@ -174,6 +174,7 @@ 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) ;