view native/PhantomOmni/GraphicManager.h @ 3:9e67171477bc

PHANTOM Omni Heptic device release
author Fiore Martin <fiore@eecs.qmul.ac.uk>
date Wed, 25 Apr 2012 17:09:09 +0100
parents
children
line wrap: on
line source
#pragma once

#include "stdafx.h"
#include "CollectionsManager.h"
#include "HapticManager.h"

/* The graphic manager draws the diagram openGL scene graphically.  *
 * In order to get all the data about the diagram it's constructed  *
 * passing a reference to the CollectionManager                     */
class GraphicManager{
	static const double kCursorRadius;
	static const double kCursorHeight;
	static const int kCursorTess;
	static const GLfloat light_model_ambient[];
    static const GLfloat light0_diffuse[];   
    static const GLfloat light0_direction[]; 
	
	static const double nodeSize;

	static const hduVector3Dd nodeColor;//(1.0, 1.0, 1.0);
	static const hduVector3Dd edgeColor;

	CollectionsManager * collectionsManager;
	HapticManager * hapticManager;

	void drawCursor(void);
public:
	double gCursorScale;
	double gWorldScale;
	GLuint gCursorDisplayList;
	GraphicManager(CollectionsManager * cManager, HapticManager * hManager) : collectionsManager(cManager), hapticManager(hManager) {
		gCursorDisplayList = 0;
		gWorldScale = 1;
	};
	~GraphicManager(void){};
	void init(void);
	void draw(void);

};