#ifndef _GLEXT_H #define _GLEXT_H //----------------------------------------------------------------------------- // Copyright (C) 2001 Radical Entertainment Ltd. All rights reserved. // // GLExt.h // // Description: Functions that do drawing using the OpenGL API. // // Modification History: // + Created Aug 21, 2001 -- bkusy // + grossly modified by Cary Brisebois //----------------------------------------------------------------------------- //---------------------------------------- // System Includes //---------------------------------------- //---------------------------------------- // Project Includes //---------------------------------------- //---------------------------------------- // Forward References //---------------------------------------- class MPoint; //---------------------------------------- // Constants, Typedefs and Statics //---------------------------------------- class GLExt { public: static void drawCamera3D( double scale, double tx = 0.0f, double ty = 0.0f, double tz = 0.0f, float width = 1.0f ); static void drawCrossHair3D( double scale, double tx = 0.0f, double ty = 0.0f, double tz = 0.0f, float width = 1.0f ); static void drawCrossHair3D( double scale, const MPoint& p, float width = 1.0f ); static void drawPyramid( double scale, double tx = 0.0f, double ty = 0.0f, double tz = 0.0f, float width = 1.0f ); static void drawPyramid( double scale, const MPoint& p0, float width = 1.0f ); static void drawLine( double x0, double y0, double z0, double x1, double y1, double z1, float width = 1.0f ); static void drawLine( const MPoint& p0, const MPoint& p1, float width = 1.0f ); static void drawArrow( const MPoint& p0, const MPoint& p1, float width = 1.0f, float scale = 6.0f ); static void drawBox( double x0, double y0, double z0, double x1, double y1, double z1, float width = 1.0f ); static void drawBox( const MPoint& p0, const MPoint& p1, float width = 1.0f ); static void drawSphere( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawSphere( double scale, const MPoint& p, float width = 1.0f ); static void drawXZPlane( double xscale, double yscale, double zscale, double x0, double z0, double x1, double z1, double y, float width = 1.0f ); static void drawXZPlane( double xscale, double yscale, double zscale, const MPoint& v0, const MPoint& v1, float width = 1.0f ); static void drawP( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawStickMan( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawCar( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawA( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawD( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawE( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawS( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawCross( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawLBolt( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawI( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawW( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawM( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawC( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); static void drawO( double scale, double tx = 0, double ty = 0, double tz = 0, float width = 1.0f ); }; #endif