00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef WM4INTRTRIANGLE3CONE3_H
00017 #define WM4INTRTRIANGLE3CONE3_H
00018
00019 #include "Wm4FoundationLIB.h"
00020 #include "Wm4Intersector.h"
00021 #include "Wm4Triangle3.h"
00022 #include "Wm4Cone3.h"
00023
00024 namespace Wm4
00025 {
00026
00027 template <class Real>
00028 class WM4_FOUNDATION_ITEM IntrTriangle3Cone3
00029 : public Intersector<Real,Vector3<Real> >
00030 {
00031 public:
00032 IntrTriangle3Cone3 (const Triangle3<Real>& rkTriangle,
00033 const Cone3<Real>& rkCone);
00034
00035
00036 const Triangle3<Real>& GetTriangle () const;
00037 const Cone3<Real>& GetCone () const;
00038
00039
00040 virtual bool Test ();
00041
00042 private:
00043
00044 const Triangle3<Real>* m_pkTriangle;
00045 const Cone3<Real>* m_pkCone;
00046 };
00047
00048 typedef IntrTriangle3Cone3<float> IntrTriangle3Cone3f;
00049 typedef IntrTriangle3Cone3<double> IntrTriangle3Cone3d;
00050
00051 }
00052
00053 #endif