//---------------------------------------------------------------------------- // EgalTech 2014-2014 //---------------------------------------------------------------------------- // File : IntersLineLine.h Data : 19.06.14 Versione : 1.5f5 // Contenuto : Dichiarazione della classe intersezione linea/linea. // // // // Modifiche : 19.06.14 DS Creazione modulo. // // //---------------------------------------------------------------------------- #pragma once #include "/EgtDev/Include/EGkIntersCurveCurve.h" #include "/EgtDev/Include/EGkCurveLine.h" //----------------------------------------------------------------------------- class IntersLineLine { friend class IntersCurveCurve ; public : IntersLineLine( const ICurveLine& Line1, const ICurveLine& Line2, bool bFinite = true) ; public : bool GetOverlaps( void) { return m_bOverlaps ; } int GetNumInters( void) { return m_nNumInters ; } bool GetIntCrvCrvInfo( IntCrvCrvInfo& aInfo) { if ( m_nNumInters == 0) return false ; aInfo = m_Info ; return true ; } private : IntersLineLine( void) ; void IntersInfiniteLines( const ICurveLine& Line1, const ICurveLine& Line2) ; void IntersFiniteLines( const ICurveLine& Line1, const ICurveLine& Line2) ; private : bool m_bOverlaps ; int m_nNumInters ; IntCrvCrvInfo m_Info ; } ;