A library by Ricard Marxer for the programming environment processing. Last update, 03/08/2013.

It is simply a wrapper around JBox2D. It tries to make it much easier to create physical models by exposing an object oriented API similar to PPhys2D physics library for Processing.

You can stay tuned for updates at Follow ricardmp on Twitter with the tag



Download fisica version 14 in .zip format.
Unzip the contents of this file to /path/to/sketchbook/libraries


fisica has been used in the following projects:

If you have done other projects with this library, please let me know.



The examples can also be found in the examples directory inside the zip file.


The documentation is available online here.
It can also be found in the documentation directory inside the zip file.


The source code of fisica is available at gitorious, and its repository can be browsed here.

This library is licensed under the LGPL v3 license.


v0.1.14 (08 - March - 2013):
  • Update to Processing 2.0b8. Thanks to Manu Vald├ęs and Jerome Saint-Clair.
  • Small fixes to the mouse joint.
v0.1.13 (09 - February - 2013):
  • FWorld.drawDebug() method is getting nicer and nicer!!! Try it.
  • FBlob.attachImage(PImage) now works, but it may not be very useful
v0.1.12 (22 - November - 2012):
  • Small fixes
v0.1.11 (19 - November - 2012):
  • Refactor the handling how the bodies are grabbed. Added FWorld.grabBody(float, float), FWorld.dragBody(float, float) and FWorld.releaseBody(). Useful for Android apps.
  • Simplify the way to know if a contact contains certain bodies. Added FContact.contains(String b1), FContact.contains(String b1, String b2), FContact.contains(FBody b1), FContact.contains(FBody b1, FBody b2).
  • Implement sleeping handling for bodies. Added FBody.setAllowSleeping(boolean) and FBody.isSleeping().
  • Added a small Android example. It's a game!!
  • Allow drawing a debug version of the sketch. Added FBody.drawDebug() and FWorld.drawDebug(). They will improve with time
  • Small fix to the blob
v0.1.9 (2 - June - 2011):
  • Add ability of resizing some bodies dynamically.
  • Add setName() and getName() methods to the bodies.
  • Add ray cast handling.
v0.1.8 (18 - April - 2011):
  • Fix null pointer bug.
  • Add FBody.getJoints().
  • Add an example about getting the joints of a body.
v0.1.7 (26 - October - 2010):
  • Add a new FWorld constructor to allow custom dimensions.
  • Add a new setEdges overload to allow custom dimensions.
v0.1.6 (19 - October - 2010):
  • Add an example for interaction with Geomerative and adding SVG bodies.
v0.1.5 (20 - June - 2010):
  • Fixed the FBody.getContacts() method.
  • Update the Contacts example to show the use of FBody.getContacts().
v0.1.4 (26 - May - 2010):
  • Add an example for inheriting from the FBody class.
v0.1.3 (4 - April - 2010):
  • Fix the build script so that it targets Java 1.5.
  • Fix examples so that they use the default renderer.
  • Fix some stuff on the web.
v0.1.2 (26 - March - 2010):
  • Add three examples.
  • Fixes on the FBlob and on the FPrismaticJoint.
v0.1.1 (27 - February - 2010):
  • First release of the library.