GLTools.h

00001 // -*- mode:C++; tab-width:4; c-basic-offset:4; indent-tabs-mode:nil -*-
00002 /* 
00003  * Copyright (C) 2008 Micha Hersch, EPFL
00004  * RobotCub Consortium, European Commission FP6 Project IST-004370
00005  * email:   micha.hersch@robotcub.org
00006  * website: www.robotcub.org
00007  * Permission is granted to copy, distribute, and/or modify this program
00008  * under the terms of the GNU General Public License, version 2 or any
00009  * later version published by the Free Software Foundation.
00010  *
00011  * A copy of the license can be found at
00012  * http://www.robotcub.org/icub/license/gpl.txt
00013  *
00014  * This program is distributed in the hope that it will be useful, but
00015  * WITHOUT ANY WARRANTY; without even the implied warranty of
00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
00017  * Public License for more details
00018  */
00019 #ifndef __GLTOOLS_H__
00020 #define __GLTOOLS_H__
00021 
00022 #include <GL/glut.h>
00023 
00024 #include "Geometry.h"
00025 
00026 class GLTools
00027 {
00028 protected:
00029   static float  m_red;
00030   static float  m_green;
00031   static float  m_blue;
00032 
00033   static bool   m_outline;
00034   static bool   m_solid;
00035 
00036 public:
00037   static void SetColor(float r, float g, float b);
00038 
00039   static void DrawOutline (bool state);
00040   static void DrawSolid   (bool state);
00041 
00042   static void DrawArc   (float min, float max, CMatrix4_t *ref);  
00043   static void Draw3DArc (CVector3_List_t * vl, CMatrix4_t *ref);  
00044 
00045   static void DrawVector(CVector3_t *v, CMatrix4_t *ref,float width=100);
00046   static void DrawPlane (CVector3_t *v, CMatrix4_t *ref);
00047   static void DisplayText(int x, int y, const char * text);
00048 
00049 };
00050 
00051 #define GLT GLTools
00052 #endif
 All Data Structures Functions Variables

Generated on Wed Sep 22 16:51:25 2010 for Body_Schema_Learning by  doxygen 1.6.1