source:
orxonox.OLD/orxonox/trunk/src/lib/physics/physics_connection.cc
@
4480
Last change on this file since 4480 was 4480, checked in by bensch, 19 years ago | |
---|---|
File size: 1.2 KB |
Rev | Line | |
---|---|---|
[1853] | 1 | /* |
2 | orxonox - the future of 3D-vertical-scrollers | |
3 | ||
4 | Copyright (C) 2004 orx | |
5 | ||
6 | This program is free software; you can redistribute it and/or modify | |
7 | it under the terms of the GNU General Public License as published by | |
8 | the Free Software Foundation; either version 2, or (at your option) | |
9 | any later version. | |
[1855] | 10 | |
11 | ### File Specific: | |
[4181] | 12 | main-programmer: Benjamin Grauer |
[1855] | 13 | co-programmer: ... |
[1853] | 14 | */ |
15 | ||
[4178] | 16 | //#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_ |
[1853] | 17 | |
[4181] | 18 | #include "physics_connection.h" |
[1853] | 19 | |
[4183] | 20 | #include "physics_engine.h" |
21 | ||
[4375] | 22 | #include "field.h" |
23 | #include "particle_system.h" | |
24 | #include "physics_interface.h" | |
25 | ||
[1856] | 26 | using namespace std; |
[1853] | 27 | |
[4480] | 28 | /** |
29 | \brief creates a PhysicsConnection | |
30 | */ | |
[4377] | 31 | PhysicsConnection::PhysicsConnection(PhysicsInterface* subject, Field* field) |
[3365] | 32 | { |
[4377] | 33 | this->type = PCON_PhysIField; |
34 | this->subject = subject; | |
[4182] | 35 | this->field = field; |
[4183] | 36 | |
37 | PhysicsEngine::getInstance()->addConnection(this); | |
[3365] | 38 | } |
[1853] | 39 | |
40 | ||
[3245] | 41 | /** |
42 | \brief standard deconstructor | |
[1853] | 43 | |
[3245] | 44 | */ |
[4181] | 45 | PhysicsConnection::~PhysicsConnection () |
[3543] | 46 | { |
[4183] | 47 | PhysicsEngine::getInstance()->removeConnection(this); |
[3543] | 48 | } |
[4181] | 49 | |
[4182] | 50 | /** |
51 | \brief applies the Force to some Object. | |
52 | */ | |
[4395] | 53 | void PhysicsConnection::apply(void) const |
[4182] | 54 | { |
[4384] | 55 | if (likely(this->type == PCON_PhysIField && this->field->getMagnitude() != 0.0)) |
[4395] | 56 | this->subject->applyField(this->field); |
[4378] | 57 | else ; |
[4181] | 58 | } |
Note: See TracBrowser
for help on using the repository browser.