glorbitalview.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                         glorbitalview.h  -  description
00003                              -------------------
00004     begin                : Thu Nov 4 2004
00005     copyright            : (C) 2004-2006 by Ben Swerts
00006     email                : bswerts@users.sourceforge.net
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00020 
00021 #ifndef GLORBITALVIEW_H
00022 #define GLORBITALVIEW_H
00023 
00025 
00026 // C++ forward class declarations
00027 #include <vector>
00028 
00029 // Qt forward class declarations
00030 class QColor;
00031 #include <qmutex.h>
00032 
00033 // Xbrabo header files
00034 #include "point3d.h"
00035 
00036 // Base class header file
00037 #include <glview.h>
00038 
00040 class GLOrbitalView : public GLView
00041 {
00042   Q_OBJECT
00043   
00044   public:
00045     // constructor/destructor
00046     GLOrbitalView(QWidget* parent = 0, const char* name = 0);         // constructor
00047     ~GLOrbitalView();                   // destructor
00048 
00049     // public member functions
00050     void updateColors(QColor pos, QColor neg);
00051     std::vector<Point3D<float> >* getCoordinates();         // returns a pointer to the coords vector
00052     QMutex* getMutex();                   // returns a pointer to the mutex used for accessing the coords vector
00053     void setMaximumRadius(const double radius);   // updates the maximum radius of the coordinates
00054         
00055   protected:
00056     void drawScene();                   // does the local drawing of the scene
00057     float boundingSphereRadius();       // calculates the radius of the bounding sphere
00058     
00059   private:
00060     // private enums
00061     //enum Precision{PRECISION_UNKNOWN, PRECISION_FLOAT, PRECISION_DOUBLE, PRECISION_LONG_DOUBLE};
00062     
00063     // private member variables
00064     QColor colorPositive;               
00065     QColor colorNegative;               
00066     std::vector<Point3D<float> > coords;          
00067     QMutex mutex;                       
00068     float maximumRadius;                
00069     float scaleFactor;                  
00070 };
00071 
00072 #endif
00073 

Generated on Fri May 19 14:31:54 2006 for Brabosphere by  doxygen 1.4.6-NO