summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSteve <steveb9@u.washington.edu>2011-03-06 10:05:07 +0000
committerSteve <steveb9@u.washington.edu>2011-03-06 10:05:07 +0000
commit73bb9fa53247a53941db1eeef573ad155d2596d7 (patch)
treed83f360dc55beefd1d375c9ce1d95d4b91c39855 /src
parentb172409a18162e865f2bcc3267295f90d76adf6a (diff)
Added checks for the inner loop to be a half space
Diffstat (limited to 'src')
-rw-r--r--src/tesseract/World.java53
1 files changed, 47 insertions, 6 deletions
diff --git a/src/tesseract/World.java b/src/tesseract/World.java
index 0f01b3a..e62e4a6 100644
--- a/src/tesseract/World.java
+++ b/src/tesseract/World.java
@@ -358,11 +358,11 @@ public class World implements Observer {
i_object.resolveCollisions(j_object);
}
- if (myObjects.get(i).equals(my_side2) && myPeer.getPeerInDirection
+ if (i_object.equals(my_side2) && myPeer.getPeerInDirection
(j_object.getVelocity().getX(), j_object.getVelocity().getZ()) != null) {
System.out.println("Hit Side 2" + i_object.getPosition());
myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
- (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), myObjects.get(j));
+ (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object);
indexToRemove = j;
j_object.detach();
i_object.resolveCollisions(j_object);
@@ -372,21 +372,62 @@ public class World implements Observer {
(j_object.getVelocity().getX(), j_object.getVelocity().getZ()) != null) {
System.out.println("Hit Side 3" + i_object.getPosition());
myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
- (j_object.getVelocity().getX(), myObjects.get(j).getVelocity().getZ()), j_object);
+ (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object);
indexToRemove = j;
j_object.detach();
i_object.resolveCollisions(j_object);
}
- if (myObjects.get(i).equals(my_side4) && myPeer.getPeerInDirection
+ if (i_object.equals(my_side4) && myPeer.getPeerInDirection
(j_object.getVelocity().getX(), j_object.getVelocity().getZ()) != null) {
System.out.println("Hit Side 4" + i_object.getPosition());
myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
- (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), myObjects.get(j));
+ (j_object.getVelocity().getX(), j_object.getVelocity().getZ()), j_object);
indexToRemove = j;
- myObjects.get(j).detach();
+ j_object.detach();
i_object.resolveCollisions(j_object);
}
+
+ //if 'j' side and a neighbor exists, transmit i object to that node
+ if (j_object.equals(my_side1) && myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()) != null) {
+ System.out.println("Hit Side 1" + j_object.getPosition());
+ myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object);
+ indexToRemove = i;
+ i_object.detach();
+
+ j_object.resolveCollisions(i_object);
+ }
+ if (j_object.equals(my_side2) && myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()) != null) {
+ System.out.println("Hit Side 2" + i_object.getPosition());
+ myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object);
+ indexToRemove = i;
+ i_object.detach();
+ j_object.resolveCollisions(i_object);
+
+ }
+ if (j_object.equals(my_side3) && myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()) != null) {
+ System.out.println("Hit Side 3" + j_object.getPosition());
+ myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object);
+ indexToRemove = i;
+ i_object.detach();
+
+ j_object.resolveCollisions(i_object);
+ }
+ if (j_object.equals(my_side4) && myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()) != null) {
+ System.out.println("Hit Side 4" + j_object.getPosition());
+ myPeer.sendPayloadToPeer(myPeer.getPeerInDirection
+ (i_object.getVelocity().getX(), i_object.getVelocity().getZ()), i_object);
+ indexToRemove = i;
+ i_object.detach();
+ j_object.resolveCollisions(i_object);
+ }
}
}
}