Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Stuff to release maniation to public.

git-svn-id: file:///Users/martin/Documents/svnrepo/trunk/martin/graphics/maniation@1741 3ab4d77f-209f-454f-af32-ffe4b78d429c
  • Loading branch information...
commit 776ea10c4435d6c1a1c2be7fe5d9ba0e2b029a9a 1 parent bb940f6
@ept authored
Showing with 149 additions and 0 deletions.
  1. +19 −0 LICENSE
  2. +43 −0 README
  3. +87 −0 public-release.sh
View
19 LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2005-2008 Martin Kleppmann
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
View
43 README
@@ -0,0 +1,43 @@
+Simulation of colliding constrained rigid bodies
+================================================
+
+Martin Kleppmann <martin@kleppmann.de>
+
+
+Background
+----------
+
+Please see the following links.
+
+http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-683.html
+http://www.maniation.com/
+http://www.yes-no-cancel.co.uk/2008/10/25/implementing-constrained-rigid-body-simulation-source-code-now-available/
+
+
+Usage
+-----
+
+Apart from all the underlying data structures, algorithms and constraints,
+this code repository includes a few examples of more complex systems built
+from the simple components: a gyroscope, a multi-part pendulum, Newton's cradle
+and a centrifuge-like thing.
+
+The way you would use these components is probably along the lines of:
+
+ Simulation sim = new Simulation();
+ MultiPendulum.setup(sim, 3);
+ sim.run(10.0);
+
+You will have to sort out input and output of data, display/rendering etc.
+yourself -- the purpose of this code is to demonstrate the algorithms, not
+to provide a fully functional dynamics simulator.
+
+
+Feedback
+--------
+
+Feedback is welcomed; please contact me at the email address above.
+However, I am not actively developing this code any further.
+If there is enough demand to set up a community where people can contribute
+code and patches, we can make this a proper open source project.
+
View
87 public-release.sh
@@ -0,0 +1,87 @@
+#!/bin/sh
+
+FILELIST=`tempfile`
+cat > $FILELIST << EOF
+ README
+ LICENSE
+ de/kleppmann/maniation/Centrifuge.java
+ de/kleppmann/maniation/Gyroscope.java
+ de/kleppmann/maniation/MultiPendulum.java
+ de/kleppmann/maniation/NewtonsCradle.java
+ de/kleppmann/maniation/dynamics/ArticulatedBody.java
+ de/kleppmann/maniation/dynamics/Body.java
+ de/kleppmann/maniation/dynamics/Collideable.java
+ de/kleppmann/maniation/dynamics/CompoundBody.java
+ de/kleppmann/maniation/dynamics/Constraint.java
+ de/kleppmann/maniation/dynamics/Cylinder.java
+ de/kleppmann/maniation/dynamics/DynamicScene.java
+ de/kleppmann/maniation/dynamics/EdgeEdgeCollision.java
+ de/kleppmann/maniation/dynamics/GeneralizedBody.java
+ de/kleppmann/maniation/dynamics/InequalityConstraint.java
+ de/kleppmann/maniation/dynamics/Interaction.java
+ de/kleppmann/maniation/dynamics/InteractionForce.java
+ de/kleppmann/maniation/dynamics/InteractionList.java
+ de/kleppmann/maniation/dynamics/JointConstraint.java
+ de/kleppmann/maniation/dynamics/MeshBody.java
+ de/kleppmann/maniation/dynamics/NailConstraint.java
+ de/kleppmann/maniation/dynamics/RigidBody.java
+ de/kleppmann/maniation/dynamics/RotationConstraint.java
+ de/kleppmann/maniation/dynamics/Simulation.java
+ de/kleppmann/maniation/dynamics/SimulationObject.java
+ de/kleppmann/maniation/dynamics/SphereEdgeCollision.java
+ de/kleppmann/maniation/dynamics/SphereFaceCollision.java
+ de/kleppmann/maniation/dynamics/SphereSphereCollision.java
+ de/kleppmann/maniation/dynamics/StateVector.java
+ de/kleppmann/maniation/dynamics/VertexFaceCollision.java
+ de/kleppmann/maniation/dynamics/World.java
+ de/kleppmann/maniation/geometry/AnimateMesh.java
+ de/kleppmann/maniation/geometry/AnimateObject.java
+ de/kleppmann/maniation/geometry/ArticulatedLimb.java
+ de/kleppmann/maniation/geometry/ArticulatedMesh.java
+ de/kleppmann/maniation/geometry/BoundingBox.java
+ de/kleppmann/maniation/geometry/Collision.java
+ de/kleppmann/maniation/geometry/CollisionVolume.java
+ de/kleppmann/maniation/geometry/GeometryBehaviour.java
+ de/kleppmann/maniation/geometry/InexactPoint.java
+ de/kleppmann/maniation/geometry/MeshTriangle.java
+ de/kleppmann/maniation/geometry/MeshVertex.java
+ de/kleppmann/maniation/maths/ConjugateGradient.java
+ de/kleppmann/maniation/maths/EulerAngles.java
+ de/kleppmann/maniation/maths/Matrix.java
+ de/kleppmann/maniation/maths/Matrix33.java
+ de/kleppmann/maniation/maths/MatrixImpl.java
+ de/kleppmann/maniation/maths/ODE.java
+ de/kleppmann/maniation/maths/ODEBacktrackException.java
+ de/kleppmann/maniation/maths/ODESolver.java
+ de/kleppmann/maniation/maths/Quaternion.java
+ de/kleppmann/maniation/maths/RungeKutta.java
+ de/kleppmann/maniation/maths/SlicedVector.java
+ de/kleppmann/maniation/maths/SparseMatrix.java
+ de/kleppmann/maniation/maths/Vector.java
+ de/kleppmann/maniation/maths/Vector3D.java
+ de/kleppmann/maniation/maths/VectorImpl.java
+ de/kleppmann/maniation/scene/Animation.java
+ de/kleppmann/maniation/scene/AxisConstraint.java
+ de/kleppmann/maniation/scene/Body.java
+ de/kleppmann/maniation/scene/Bone.java
+ de/kleppmann/maniation/scene/Bubble.java
+ de/kleppmann/maniation/scene/Colour.java
+ de/kleppmann/maniation/scene/Deform.java
+ de/kleppmann/maniation/scene/Face.java
+ de/kleppmann/maniation/scene/Keyframe.java
+ de/kleppmann/maniation/scene/Material.java
+ de/kleppmann/maniation/scene/Mesh.java
+ de/kleppmann/maniation/scene/Quaternion.java
+ de/kleppmann/maniation/scene/Scene.java
+ de/kleppmann/maniation/scene/Skeleton.java
+ de/kleppmann/maniation/scene/Vector.java
+ de/kleppmann/maniation/scene/Vertex.java
+EOF
+
+DIR=`dirname "$0"`
+COMMAND="zip -r maniation.zip"
+
+echo "$COMMAND files..."
+$COMMAND `cat $FILELIST`
+
+rm -f $FILELIST
Please sign in to comment.
Something went wrong with that request. Please try again.