AppEasy Core SDK  1.5.0
Cross platform mobile and desktop app and game development SDK - The easy way to make apps
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines
CzFrustrum.h
Go to the documentation of this file.
00001 // 
00002 //
00003 // AppEasy SDK - Cross Platform Multi-purpose Game and App Engine
00004 //
00005 // Developed by Matthew Hopwood of Pocketeers Limited - www.pocketeers.co.uk
00006 //
00007 // For updates, tutorials and more details check out www.appeasymobile.com
00008 //
00009 // This code is provided free of charge and without any warranty whatsoever. You must ensure that this whole notice is present in all files and derivatives, so the reader knows its origin.
00010 // If you use this SDK in your product then please ensure that you credit AppEasy's usage appropriately. Please see www.appeasymobile.com for licensing details and support
00011 //
00012 //
00013 
00014 #ifndef __CZ_FRUSTRUM_H__
00015 #define __CZ_FRUSTRUM_H__
00016 
00017 #include "CzVec3.h"
00018 #include "CzMatrix4.h"
00019 
00020 class CzFrustrum
00021 {
00022 public:
00023     float   m_aFrustrum[6][4];
00024     
00025 public: 
00026     CzFrustrum()    {}
00027 
00028     void UpdateFrustum(CzMatrix4* pProjection, CzMatrix4 *pModel);
00029     bool CheckPoint(float x, float y, float z);
00030     bool CheckPointXZ(float x, float z);
00031     bool CheckSphere(float x, float y, float z, float radius);
00032     bool CheckSphereXZ(float x, float z, float radius);
00033     bool CheckBB(CzVec3* pBB);
00034 };
00035 
00036 
00037 
00038 #endif  // __CZ_FRUSTRUM_H__