#ifndef _MODELCONTAINERVIEW_H #define _MODELCONTAINERVIEW_H #include "ModelContainer.h" #include "DebugCmdLogger.h" #include "vmapmanager.h" #include namespace VMAP { //========================================== //========================================== class ModelContainerView : public G3D::GApplet { private: VARAreaRef iVARAreaRef; Table iTriVarTable; Table > iTriIndexTable; //Array iLineIndexArray; GApp* i_App; CommandFileRW iCommandFileRW; Array iCmdArray; int iCurrCmdIndex; VMapManager* iVMapManager; Vector3 iPos1; Vector3 iPos2; Color3 iColor; bool iDrawLine; int iInstanceId; bool iPosSent; Array iPrevLoadCommands; private: Vector3 convertPositionToMangosRep(float x, float y, float z) const; public: ModelContainerView(GApp* pApp); ~ModelContainerView(void); void addModelContainer(const std::string& pName,const ModelContainer* pModelContainer); void removeModelContainer(const std::string& pName, const ModelContainer* pModelContainer); void setViewPosition(const Vector3& pPosition); void doGraphics(); void init(); void cleanup(); void onUserInput(UserInput* ui); void fillRenderArray(const SubModel& pSm,Array &pArray, const TreeNode* pTreeNode); void fillVertexAndIndexArrays(const SubModel& pSm, Array& vArray, Array& iArray); bool loadAndShowTile(int pMapId, int x, int y); void showMap(int pMapId, int x, int y); void showMap(MapTree* mt, std::string dirFileName); bool loadAndShowTile(int pMapId); void processCommand(); }; //========================================== //========================================== class ViewApp : public G3D::GApp { private: ModelContainerView *iView; public: ViewApp(const GAppSettings& settings): GApp(settings) {}; static void ViewApp::startup() { GAppSettings settings; settings.window.width = 1024; settings.window.height = 768; ViewApp* app = new ViewApp(settings); app->setDebugMode(true); app->debugController.setActive(true); app->iView = new ModelContainerView(app); app->run(); } void ViewApp::main() { iView->run(); } }; //========================================== //========================================== } #endif