From 947b681bdcc9aae99858a4a88b237115bdf2fca3 Mon Sep 17 00:00:00 2001 From: jules Date: Fri, 15 Nov 2013 10:02:30 +0000 Subject: [PATCH] Re-added a couple of box2d files which had the wrong capitalisation. --- extras/Demo/Source/Demos/Box2DTests/AddPair.h | 51 +++++++++++++ extras/Demo/Source/Demos/Box2DTests/Chain.h | 74 +++++++++++++++++++ 2 files changed, 125 insertions(+) create mode 100644 extras/Demo/Source/Demos/Box2DTests/AddPair.h create mode 100644 extras/Demo/Source/Demos/Box2DTests/Chain.h diff --git a/extras/Demo/Source/Demos/Box2DTests/AddPair.h b/extras/Demo/Source/Demos/Box2DTests/AddPair.h new file mode 100644 index 0000000000..90a9a87eb8 --- /dev/null +++ b/extras/Demo/Source/Demos/Box2DTests/AddPair.h @@ -0,0 +1,51 @@ + +#ifndef AddPair_H +#define AddPair_H + +class AddPair : public Test +{ +public: + + AddPair() + { + m_world->SetGravity(b2Vec2(0.0f,0.0f)); + { + b2CircleShape shape; + shape.m_p.SetZero(); + shape.m_radius = 0.1f; + + float minX = -6.0f; + float maxX = 0.0f; + float minY = 4.0f; + float maxY = 6.0f; + + for (int i = 0; i < 400; ++i) + { + b2BodyDef bd; + bd.type = b2_dynamicBody; + bd.position = b2Vec2(RandomFloat(minX,maxX),RandomFloat(minY,maxY)); + b2Body* body = m_world->CreateBody(&bd); + body->CreateFixture(&shape, 0.01f); + } + } + + { + b2PolygonShape shape; + shape.SetAsBox(1.5f, 1.5f); + b2BodyDef bd; + bd.type = b2_dynamicBody; + bd.position.Set(-40.0f,5.0f); + bd.bullet = true; + b2Body* body = m_world->CreateBody(&bd); + body->CreateFixture(&shape, 1.0f); + body->SetLinearVelocity(b2Vec2(150.0f, 0.0f)); + } + } + + static Test* Create() + { + return new AddPair; + } +}; + +#endif diff --git a/extras/Demo/Source/Demos/Box2DTests/Chain.h b/extras/Demo/Source/Demos/Box2DTests/Chain.h new file mode 100644 index 0000000000..be4d5c9f97 --- /dev/null +++ b/extras/Demo/Source/Demos/Box2DTests/Chain.h @@ -0,0 +1,74 @@ +/* +* Copyright (c) 2006-2009 Erin Catto http://www.box2d.org +* +* This software is provided 'as-is', without any express or implied +* warranty. In no event will the authors be held liable for any damages +* arising from the use of this software. +* Permission is granted to anyone to use this software for any purpose, +* including commercial applications, and to alter it and redistribute it +* freely, subject to the following restrictions: +* 1. The origin of this software must not be misrepresented; you must not +* claim that you wrote the original software. If you use this software +* in a product, an acknowledgment in the product documentation would be +* appreciated but is not required. +* 2. Altered source versions must be plainly marked as such, and must not be +* misrepresented as being the original software. +* 3. This notice may not be removed or altered from any source distribution. +*/ + +#ifndef CHAIN_H +#define CHAIN_H + +class Chain : public Test +{ +public: + Chain() + { + b2Body* ground = NULL; + { + b2BodyDef bd; + ground = m_world->CreateBody(&bd); + + b2EdgeShape shape; + shape.Set(b2Vec2(-40.0f, 0.0f), b2Vec2(40.0f, 0.0f)); + ground->CreateFixture(&shape, 0.0f); + } + + { + b2PolygonShape shape; + shape.SetAsBox(0.6f, 0.125f); + + b2FixtureDef fd; + fd.shape = &shape; + fd.density = 20.0f; + fd.friction = 0.2f; + + b2RevoluteJointDef jd; + jd.collideConnected = false; + + const float32 y = 25.0f; + b2Body* prevBody = ground; + for (int i = 0; i < 30; ++i) + { + b2BodyDef bd; + bd.type = b2_dynamicBody; + bd.position.Set(0.5f + i, y); + b2Body* body = m_world->CreateBody(&bd); + body->CreateFixture(&fd); + + b2Vec2 anchor(float32(i), y); + jd.Initialize(prevBody, body, anchor); + m_world->CreateJoint(&jd); + + prevBody = body; + } + } + } + + static Test* Create() + { + return new Chain; + } +}; + +#endif