summaryrefslogtreecommitdiff
path: root/src/tesseract/objects/Forceable.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/tesseract/objects/Forceable.java')
-rw-r--r--src/tesseract/objects/Forceable.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/tesseract/objects/Forceable.java b/src/tesseract/objects/Forceable.java
new file mode 100644
index 0000000..bbbbc9f
--- /dev/null
+++ b/src/tesseract/objects/Forceable.java
@@ -0,0 +1,26 @@
+package tesseract.objects;
+
+import javax.vecmath.Vector3f;
+
+/**
+ * Objects that can have forces applied to them implement this interface.
+ *
+ * @author Jesse Morgan
+ */
+public interface Forceable extends Physical {
+ /**
+ * Apply a new force to this object.
+ * @param force The force to apply.
+ */
+ void addForce(final Vector3f force);
+
+ /**
+ * @return The inverse mass of the object.
+ */
+ float getInverseMass();
+
+ /**
+ * @return Get the velocity of the object.
+ */
+ Vector3f getVelocity();
+}