//---------------------------------------------------------------------------- // EgalTech 2013-2014 //---------------------------------------------------------------------------- // File : DistPointArc.h Data : 28.12.13 Versione : 1.4l5 // Contenuto : Dichiarazione della classe distanza punto da circonferenza/arco. // // // // Modifiche : 28.12.13 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "/EgtDev/Include/EGkPoint3d.h" #include "/EgtDev/Include/EGkCurveArc.h" #include "/EgtDev/Include/EGkDistPointCurve.h" //----------------------------------------------------------------------------- class DistPointArc { friend class DistPointCurve ; public : DistPointArc( const Point3d& ptP, const ICurveArc& arArc) ; public : bool GetSqDist( double& dSqDist) ; bool GetDist( double& dDist) ; int GetNbrMinDist( void) { return (int) m_Info.size() ; } bool GetMinDistPoint( int nInd, Point3d& ptMinDist, int& nFlag) ; bool GetParamAtMinDistPoint( int nInd, double& dParam, int& nFlag) ; private : DistPointArc( void) ; void DistPointCircle( const Point3d& ptP, const ICurveArc& arArc) ; void DistPointFlatArc( const Point3d& ptP, const ICurveArc& arArc) ; void DistPointHelix( const Point3d& ptP, const ICurveArc& arArc) ; private : double m_dDist ; MDPCIVECTOR m_Info ; } ;