//---------------------------------------------------------------------------- // EgalTech 2024-2024 //---------------------------------------------------------------------------- // File : EGkProjectCurveSurfTm.h Data : 07.05.24 Versione : 2.6e3 // Contenuto : Dichiarazione funzioni proiezione curve su superficie Bezier. // // // // Modifiche : 07.05.24 DB Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "/EgtDev/Include/EGkGeoPoint3d.h" #include "/EgtDev/Include/EGkCurve.h" #include "/EgtDev/Include/EGkSurfBezier.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 //---------------------------------------------------------------------------- // Proiezione di una curva su una superficie TriMesh lungo la direzione data. EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const Vector3d& vtDir, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ; EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const IGeoPoint3d& gpRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ; EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ICurve& crRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ; EGK_EXPORT bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ISurfTriMesh& tmRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) ;