//---------------------------------------------------------------------------- // EgalTech 2024-2024 //---------------------------------------------------------------------------- // File : ProjectCurveSurfBez.cpp Data : 07.05.24 Versione : 2.6e3 // Contenuto : Implementazione funzioni proiezione curve su superficie Bezier. // // // // Modifiche : 07.05.24 DB Creazione modulo. // // //---------------------------------------------------------------------------- //--------------------------- Include ---------------------------------------- #include "stdafx.h" #include "/EgtDev/Include/EGkProjectCurveSurfTm.h" #include "/EgtDev/Include/EGkSurfBezier.h" using namespace std ; //---------------------------------------------------------------------------- bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const Vector3d& vtDir, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) { const ISurfTriMesh* pAuxSurf = surfBez.GetAuxSurf() ; return ProjectCurveOnSurfTm( crCrv, *pAuxSurf, vtDir, dLinTol, dMaxSegmLen, vPt5ax) ; } //---------------------------------------------------------------------------- bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const IGeoPoint3d& gpRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) { const ISurfTriMesh* pAuxSurf = surfBez.GetAuxSurf() ; return ProjectCurveOnSurfTm( crCrv, *pAuxSurf, gpRef, dLinTol, dMaxSegmLen, vPt5ax) ; } //---------------------------------------------------------------------------- bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ICurve& crRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) { const ISurfTriMesh* pAuxSurf = surfBez.GetAuxSurf() ; return ProjectCurveOnSurfTm( crCrv, *pAuxSurf, crRef, dLinTol, dMaxSegmLen, vPt5ax) ; } //---------------------------------------------------------------------------- bool ProjectCurveOnSurfBez( const ICurve& crCrv, const ISurfBezier& surfBez, const ISurfTriMesh& tmRef, double dLinTol, double dMaxSegmLen, PNT5AXVECTOR& vPt5ax) { const ISurfTriMesh* pAuxSurf = surfBez.GetAuxSurf() ; return ProjectCurveOnSurfTm( crCrv, *pAuxSurf, tmRef, dLinTol, dMaxSegmLen, vPt5ax) ; }