Mercator
Intersect.h
00001 // This file may be redistributed and modified only under the terms of
00002 // the GNU General Public License (See COPYING for details).
00003 // Copyright (C) 2003 Damien McGinnes
00004 
00005 #ifndef MERCATOR_INTERSECT
00006 #define MERCATOR_INTERSECT
00007 
00008 #include <wfmath/axisbox.h>
00009 #include <wfmath/vector.h>
00010 #include <wfmath/point.h>
00011 #include <Mercator/Terrain.h>
00012 
00013 namespace Mercator {
00014 
00015     bool Intersect(const Terrain &t, const WFMath::AxisBox<3> &bbox);
00016     bool Intersect(const Terrain &t, const WFMath::Point<3> &pt);
00017 
00018     //height over terrain
00019     float HOT(const Terrain &t, const WFMath::Point<3> &pt);
00020 
00021     bool Intersect(const Terrain &t, const WFMath::Point<3> &sPt, const WFMath::Vector<3>& dir,
00022             WFMath::Point<3> &intersection, WFMath::Vector<3> &normal, float &par);
00023 } // namespace Mercator
00024 
00025 #endif