diff --git a/EGkCAvSurfFrMove.h b/EGkCAvSurfFrMove.h deleted file mode 100644 index b05a723..0000000 --- a/EGkCAvSurfFrMove.h +++ /dev/null @@ -1,69 +0,0 @@ -//---------------------------------------------------------------------------- -// EgalTech 2015-2018 -//---------------------------------------------------------------------------- -// File : EGkCAvSurfFrMove.h Data : 26.03.2026 Versione : 3.1c6 -// Contenuto : Dichiarazione classe per movimento di superfici flat region -// nel loro piano evitando collisioni -// -// Modifiche : 26.03.26 RE Creazione modulo. -// -// -//---------------------------------------------------------------------------- - -#pragma once - -#include "/EgtDev/Include/EGkSurfFlatRegion.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 - -//---------------------------------------------------------------------------- -// Costanti per info su tipo di Collisione tra regioni piane -const int CI_NONE = 0 ; // non definito -const int CI_PNT_PNT = 1 ; // tra punto di mobile e punto di fissa -const int CI_PNT_LINE = 2 ; // tra punto di mobile e linea di fissa -const int CI_LINE_PNT = 3 ; // tra linea di mobile e punto di fissa -const int CI_LINE_LINE = 4 ; // tra linea di mobile e linea di fissa - -//---------------------------------------------------------------------------- -struct CollInfo -{ - int nType ; // tipo di collisione - int nChunkM ; // indice del chunk della regione mobile - int nCrvM ; // indice della curva nel loop esterno del chunk - int nChunkF ; // indice del chunk della regione fissa - int nCrvF ; // indice della curva nel loop esterno del chunk - Point3d ptP1 ; // punto di contatto - Point3d ptP2 ; // se contatto linea-linea, secondo punto di contatto - Vector3d vtDirM ; // se contatto del mobile con linea, sua direzione - Vector3d vtDirF ; // se contatto del fisso con linea, sua direzione - // costruttori - CollInfo() : nType( CI_NONE), nChunkM( -1), nCrvM( -1), nChunkF( -1), nCrvF( -1), - ptP1(), ptP2(), vtDirM(), vtDirF() {} - CollInfo( const CollInfo& Sou) : nType( Sou.nType), nChunkM( Sou.nChunkM), nCrvM( Sou.nCrvM), - nChunkF( Sou.nChunkF), nCrvF( Sou.nCrvF), ptP1( Sou.ptP1), - ptP2( Sou.ptP2), vtDirM( Sou.vtDirM), vtDirF( Sou.vtDirF) {} -} ; - -//---------------------------------------------------------------------------- -class CAvSurfFrMove -{ - public : - EGK_EXPORT CAvSurfFrMove( const ISurfFlatRegion& SfrM, const ISurfFlatRegion& SfrF) ; - - public : - EGK_EXPORT bool Translate( const Vector3d& vtDir, double& dLen) ; - EGK_EXPORT bool Rotate( const Point3d& ptCen, double& dAng) ; - EGK_EXPORT const CollInfo& GetCollInfo() - { return m_CollInfo ; } - - private : - const ISurfFlatRegion* m_pRegM ; - const ISurfFlatRegion* m_pRegF ; - CollInfo m_CollInfo ; -} ; \ No newline at end of file