An open source python binding of DART
C Python C++ CMake
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


  • News! (06/AUG/2016)

====== PyDART is an open source python binding of DART(5.0), an open source physics simulator. All APIs are designed to provide a concise and powerful control on DART physics worlds. Further, a user can write simulations with a numerous python scientific libraries, such as NumPy(linear algebra), SciPy(optimization), [scikit-learn] ( (machine learning), PyBrain(machine learning), and so on.


sudo apt-get install swig python-pip libatlas-base-dev gfortran 
sudo pip install numpy scipy PyOpenGL PyOpenGL_accelerate


  • Checkout the project
git clone
cd pydart
  • Compile the API
mkdir build
cd build
cmake ..
make install
  • Setup the python package for development
cd ..
sudo python develop
  • Run the first application
python apps/helloPyDART/


Code snippets

  • Modifying a skeleton pose using dof names (q is still a numerical vector)
q = skel.q
q["j_pelvis_rot_y"] = -0.2
q["j_thigh_left_z", "j_shin_left", "j_heel_left_1"] = 0.15, -0.4, 0.25
q["j_thigh_right_z", "j_shin_right", "j_heel_right_1"] = 0.15, -0.4, 0.25
q["j_abdomen_2"] = 0.0
  • Add damping forces to the rigid chain
class DampingController:
    """ Add damping force to the skeleton """
    def __init__(self, skel):
        self.skel = skel

    def compute(self):
        damping = -0.01 * self.skel.qdot
        for i in range(1, self.skel.ndofs, 3):
            damping[i] *= 0.1
        return damping