Rube Goldberg Machine 1.0
This is the base code for Rube Goldberg designed for the CS296 Software Systems Lab
|
00001 /* 00002 * Copyright (c) 2006-2007 Erin Catto http://www.box2d.org 00003 * 00004 * This software is provided 'as-is', without any express or implied 00005 * warranty. In no event will the authors be held liable for any damages 00006 * arising from the use of this software. 00007 * Permission is granted to anyone to use this software for any purpose, 00008 * including commercial applications, and to alter it and redistribute it 00009 * freely, subject to the following restrictions: 00010 * 1. The origin of this software must not be misrepresented; you must not 00011 * claim that you wrote the original software. If you use this software 00012 * in a product, an acknowledgment in the product documentation would be 00013 * appreciated but is not required. 00014 * 2. Altered source versions must be plainly marked as such, and must not be 00015 * misrepresented as being the original software. 00016 * 3. This notice may not be removed or altered from any source distribution. 00017 */ 00018 00019 /* 00020 * Base code for CS 296 Software Systems Lab 00021 * Department of Computer Science and Engineering, IIT Bombay 00022 * Instructor: Parag Chaudhuri 00023 */ 00024 00025 #ifndef _RENDER_HPP_ 00026 #define _RENDER_HPP_ 00027 00028 #include <Box2D/Box2D.h> 00029 00030 struct b2AABB; 00031 00032 00035 class debug_draw_t : public b2Draw 00036 { 00037 public: 00038 void DrawPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); 00039 00040 void DrawSolidPolygon(const b2Vec2* vertices, int32 vertexCount, const b2Color& color); 00041 00042 void DrawCircle(const b2Vec2& center, float32 radius, const b2Color& color); 00043 00044 void DrawSolidCircle(const b2Vec2& center, float32 radius, const b2Vec2& axis, const b2Color& color); 00045 00046 void DrawSegment(const b2Vec2& p1, const b2Vec2& p2, const b2Color& color); 00047 00048 void DrawTransform(const b2Transform& xf); 00049 00050 void DrawPoint(const b2Vec2& p, float32 size, const b2Color& color); 00051 00052 void DrawString(int x, int y, const char* string, ...); 00053 00054 void DrawAABB(b2AABB* aabb, const b2Color& color); 00055 }; 00056 00057 00058 #endif