//---------------------------------------------------------------------------- // EgalTech 2020-2024 //---------------------------------------------------------------------------- // File : EGkCDeClosedSurfTmClosedSurfTm.h Data : 24.03.24 Versione : 2.6c2 // Contenuto : Dichiarazione funzione verifica collisione tra // SurfTm e SurfTm. // // Modifiche : 13.11.20 LM Creazione modulo. // 24.03.24 DS Aggiunta TestSurfTmSurfTm. // //---------------------------------------------------------------------------- #pragma once #include "EgtDev/Include/EGkSurfTriMesh.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 //---------------------------------------------------------------------------- // Le due superfici devono essere espresse nel medesimo sistema di riferimento. // La distanza di sicurezza ha effetto solo se maggiore di EPS_SMALL. // La funzione restituisce : // - true in caso di collisione o inconsistenza dei parametri di input // - false in caso di assenza di collisione. //---------------------------------------------------------------------------- EGK_EXPORT bool CDeClosedSurfTmClosedSurfTm( const ISurfTriMesh& SurfA, const ISurfTriMesh& SurfB, double dSafeDist) ; //---------------------------------------------------------------------------- // Verifica l'interferenza tra le due superfici : restituisce true in caso di interferenza. // Se richiesta verifica inclusione se una delle due è chiusa controlla l'inclusione dell'altra. //---------------------------------------------------------------------------- EGK_EXPORT bool TestSurfTmSurfTm( const ISurfTriMesh& SurfA, const ISurfTriMesh& SurfB, double dSafeDist, bool bTestEnclosion = false) ;