Main Page   Class Hierarchy   Compound List   File List   Compound Members  

MyAxisCross.h

00001 // MyAxisCross.h: interface for the MyAxisCross class.
00002 //
00004 
00005 #if !defined(AFX_MYAXISCROSS_H__1A343C0A_D72E_4C8C_8633_29E705D2BF04__INCLUDED_)
00006 #define AFX_MYAXISCROSS_H__1A343C0A_D72E_4C8C_8633_29E705D2BF04__INCLUDED_
00007 
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011 
00012 #include "MyObject.h"
00013 #include "Point3D.h"    // Added by ClassView
00014 #include "MyCube.h"
00015 #include "MyRectangle.h"
00016 #include "gl/glut.h"
00017 
00019 class MyAxisCross : public MyObject  
00020 {
00021 public:
00022         virtual void SetLineWidth(float lineWidth);
00023         virtual void SetRgba(GLubyte *rgba);
00024         // Returns line width of z-axis.
00025         float GetZLineWidth();
00027         float GetYLineWidth();
00029         float GetXLineWidth();
00031         void SetZLineWidth(float lineWidth);
00033         void SetYLineWidth(float lineWidth);
00035         void SetXLineWidth(float lineWidth);
00036         
00037         virtual void Init(MyObject *obj);
00039         void SetRange(MyRectangle *rect);
00041         void SetRange(MyCube *cube);
00043         float GetOffs();
00045         void SetOffs(float offs);
00047         CPoint3D GetMaxPoint();
00049         CPoint3D GetMinPoint();
00051         void SetMaxPoint(CPoint3D maxPoint);
00053         void SetMinPoint(CPoint3D minPoint);
00054                 
00056         void GetXAxisRgba(GLubyte *rgba);
00058         void GetYAxisRgba(GLubyte *rgba);
00060         void GetZAxisRgba(GLubyte *rgba);
00061         
00063         void SetYAxisRgba(GLubyte *rgba);
00065         void SetXAxisRgba(GLubyte *rgba);
00067         void SetZAxisRgba(GLubyte *rgba);
00068 
00069         virtual void Draw();
00070         virtual bool IsInside(CPoint3D position);
00071         
00072         MyAxisCross(CPoint3D position,CPoint3D minPoint, CPoint3D maxPoint, 
00073                                 float xLineWidth, float yLineWidth, float zLineWidth,
00074                                 float offs, GLubyte *xAxisRgba, GLubyte *yAxisRgba, 
00075                                 GLubyte *zAxisRgba);
00076 
00077         MyAxisCross();
00078         virtual ~MyAxisCross();
00079         
00080 protected:
00081         GLubyte m_XAxisRgba[4];
00082         GLubyte m_YAxisRgba[4];
00083         GLubyte m_ZAxisRgba[4];
00084 
00085         float m_XLineWidth;
00086         float m_YLineWidth;
00087         float m_ZLineWidth;
00088 
00089         CPoint3D m_MaxPoint;
00090         CPoint3D m_MinPoint;
00091 
00092         float m_Offs;
00093 
00094 };
00095 
00096 #endif // !defined(AFX_MYAXISCROSS_H__1A343C0A_D72E_4C8C_8633_29E705D2BF04__INCLUDED_)

Generated on Fri Aug 9 10:12:39 2002 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002