.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "tutorials/joints/plot_revolute_joint.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code .. rst-class:: sphx-glr-example-title .. _sphx_glr_tutorials_joints_plot_revolute_joint.py: Revolute Joint =========================== Create revolute joints Uses: * :class:`b2d.RevoluteJointDef` * :class:`b2d.RevoluteJoint` .. GENERATED FROM PYTHON SOURCE LINES 13-17 Imports ------------------------ pyb2d is imported as `b2d` .. GENERATED FROM PYTHON SOURCE LINES 17-21 .. code-block:: default import b2d import numpy as np .. GENERATED FROM PYTHON SOURCE LINES 22-24 These imports are only needed for plotting. `b2d.plot` requires OpenCV to be installed! .. GENERATED FROM PYTHON SOURCE LINES 24-28 .. code-block:: default import b2d.plot import matplotlib.pyplot as plt .. GENERATED FROM PYTHON SOURCE LINES 29-30 revolute joints .. GENERATED FROM PYTHON SOURCE LINES 30-54 .. code-block:: default world = b2d.world(gravity=(0, -10)) bodies = [] b = world.create_static_body(position=(0, 15)) bodies.append(b) for i in range(5): b = world.create_dynamic_body( position=(i * 4 + 2, 15), fixtures=b2d.fixture_def(shape=b2d.polygon_shape(box=[2, 0.5]), density=1), linear_damping=0.0, angular_damping=0.0, ) bodies.append(b) world.create_revolute_joint( bodies[0], bodies[1], local_anchor_a=(0, 0), local_anchor_b=(-2, 0.0) ) for i in range(1, len(bodies) - 1): a = bodies[i] b = bodies[i + 1] world.create_revolute_joint(a, b, local_anchor_a=(2, 0.0), local_anchor_b=(-2, 0.0)) fig, ax, ani = b2d.plot.animate_world(world, world_margin=(20, 20)) ani plt.show() .. container:: sphx-glr-animation .. raw:: html
.. rst-class:: sphx-glr-script-out .. code-block:: none /home/runner/.local/lib/python3.10/site-packages/b2d/plot.py:128: UserWarning: You passed in an explicit save_count=73 which is being ignored in favor of frames=73. ani = animation.FuncAnimation( .. rst-class:: sphx-glr-timing **Total running time of the script:** ( 0 minutes 22.981 seconds) .. _sphx_glr_download_tutorials_joints_plot_revolute_joint.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_revolute_joint.py ` .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_revolute_joint.ipynb ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_