Merge pull request #3403 from rkothari3:docs-simulate-shortcuts
PiperOrigin-RevId: 948571230 Change-Id: Ibbd151e9f2143c3e41cda1b6ee4873f088595084
This commit is contained in:
+244
-1
@@ -122,7 +122,250 @@ Interaction is done with the mouse; built-in help with a summary of available co
|
|||||||
``F1`` key. Briefly, an object is selected by left-double-click. The user can then apply forces and torques on the
|
``F1`` key. Briefly, an object is selected by left-double-click. The user can then apply forces and torques on the
|
||||||
selected object by holding Ctrl and dragging the mouse. Dragging the mouse alone (without Ctrl) moves the camera. There
|
selected object by holding Ctrl and dragging the mouse. Dragging the mouse alone (without Ctrl) moves the camera. There
|
||||||
are keyboard shortcuts for pausing the simulation, resetting, and re-loading the model file. The latter functionality is
|
are keyboard shortcuts for pausing the simulation, resetting, and re-loading the model file. The latter functionality is
|
||||||
very useful while editing the model in an XML editor.
|
very useful while editing the model in an XML editor. The complete set of shortcuts is given in
|
||||||
|
:ref:`saSimulateShortcuts` below.
|
||||||
|
|
||||||
|
.. _saSimulateShortcuts:
|
||||||
|
|
||||||
|
Shortcuts
|
||||||
|
^^^^^^^^^
|
||||||
|
|
||||||
|
The ``F1`` help overlay lists the most common commands. The tables below are the complete reference, and also apply to
|
||||||
|
the Python viewer launched with :ref:`mujoco.viewer<PyViewer>`, which is built on the same ``Simulate`` UI. Shortcuts
|
||||||
|
that step or pause the simulation have no effect in passive mode, where stepping is driven by user code.
|
||||||
|
|
||||||
|
In addition to the shortcuts listed here, every UI control shows its own shortcut when the right mouse button is held
|
||||||
|
over the UI panel.
|
||||||
|
|
||||||
|
Simulation and camera
|
||||||
|
"""""""""""""""""""""
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 1 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Key
|
||||||
|
- Action
|
||||||
|
* - ``Space``
|
||||||
|
- Play / pause
|
||||||
|
* - ``Right arrow``
|
||||||
|
- Step forward
|
||||||
|
* - ``Left arrow``
|
||||||
|
- Step backward, through the history buffer
|
||||||
|
* - ``+`` (actually ``=``)
|
||||||
|
- Speed up
|
||||||
|
* - ``-``
|
||||||
|
- Slow down
|
||||||
|
* - ``Backspace``
|
||||||
|
- Reset
|
||||||
|
* - ``Ctrl C``
|
||||||
|
- Copy state to clipboard
|
||||||
|
* - ``Ctrl L``
|
||||||
|
- Reload the model
|
||||||
|
* - ``Ctrl A``
|
||||||
|
- Align the free camera
|
||||||
|
* - ``Esc``
|
||||||
|
- Switch to the free camera
|
||||||
|
* - ``[`` / ``]``
|
||||||
|
- Cycle down / up through the fixed cameras defined in the model
|
||||||
|
* - ``Page Up``
|
||||||
|
- Select the parent of the currently selected body
|
||||||
|
* - ``Tab`` / ``Shift Tab``
|
||||||
|
- Toggle the left / right UI panel
|
||||||
|
|
||||||
|
Panels and files
|
||||||
|
""""""""""""""""
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 1 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Key
|
||||||
|
- Action
|
||||||
|
* - ``F1``
|
||||||
|
- Toggle the help overlay
|
||||||
|
* - ``F2``
|
||||||
|
- Toggle the info overlay
|
||||||
|
* - ``F3``
|
||||||
|
- Toggle the profiler
|
||||||
|
* - ``F4``
|
||||||
|
- Toggle the sensor plots
|
||||||
|
* - ``F5``
|
||||||
|
- Toggle fullscreen
|
||||||
|
* - ``F6``
|
||||||
|
- Cycle the frame visualization
|
||||||
|
* - ``F7``
|
||||||
|
- Cycle the label visualization
|
||||||
|
* - ``Ctrl M``
|
||||||
|
- Print the model to ``MJMODEL.TXT``
|
||||||
|
* - ``Ctrl D``
|
||||||
|
- Print the data to ``MJDATA.TXT``
|
||||||
|
* - ``Ctrl P``
|
||||||
|
- Save a screenshot
|
||||||
|
* - ``Ctrl Q``
|
||||||
|
- Quit
|
||||||
|
* - ``Alt`` + letter
|
||||||
|
- Expand / collapse a UI section: ``F`` File, ``O`` Option, ``S`` Simulation, ``W`` Watch, ``P`` Physics,
|
||||||
|
``R`` Rendering, ``V`` Visualization, ``G`` Group enable, ``L`` Logging, ``J`` Joint, ``C`` Control,
|
||||||
|
``E`` Equality
|
||||||
|
|
||||||
|
Visibility groups
|
||||||
|
"""""""""""""""""
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 1 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Key
|
||||||
|
- Action
|
||||||
|
* - ``0`` … ``5``
|
||||||
|
- Toggle visibility of geom group 0 … 5
|
||||||
|
* - ``Shift 0`` … ``Shift 5``
|
||||||
|
- Toggle visibility of site group 0 … 5
|
||||||
|
|
||||||
|
Visualization flags
|
||||||
|
"""""""""""""""""""
|
||||||
|
|
||||||
|
These toggle the abstract visualization flags in the Rendering section, and correspond to the shortcuts declared in
|
||||||
|
``mjVISSTRING``. Flags with no shortcut assigned (Select Point, the Flex flags and SDF iters) are omitted.
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 1 3 1 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Key
|
||||||
|
- Flag
|
||||||
|
- Key
|
||||||
|
- Flag
|
||||||
|
* - ``H``
|
||||||
|
- Convex Hull
|
||||||
|
- ``X``
|
||||||
|
- Texture
|
||||||
|
* - ``J``
|
||||||
|
- Joint
|
||||||
|
- ``Q``
|
||||||
|
- Camera
|
||||||
|
* - ``U``
|
||||||
|
- Actuator
|
||||||
|
- ``,``
|
||||||
|
- Activation
|
||||||
|
* - ``Z``
|
||||||
|
- Light
|
||||||
|
- ``V``
|
||||||
|
- Tendon
|
||||||
|
* - ``Y``
|
||||||
|
- Range Finder
|
||||||
|
- ``E``
|
||||||
|
- Equality
|
||||||
|
* - ``I``
|
||||||
|
- Inertia
|
||||||
|
- ``'``
|
||||||
|
- Scale Inertia
|
||||||
|
* - ``B``
|
||||||
|
- Perturb Force
|
||||||
|
- ``O``
|
||||||
|
- Perturb Object
|
||||||
|
* - ``C``
|
||||||
|
- Contact Point
|
||||||
|
- ``N``
|
||||||
|
- Island
|
||||||
|
* - ``F``
|
||||||
|
- Contact Force
|
||||||
|
- ``P``
|
||||||
|
- Contact Split
|
||||||
|
* - ``T``
|
||||||
|
- Transparent
|
||||||
|
- ``A``
|
||||||
|
- Auto Connect
|
||||||
|
* - ``M``
|
||||||
|
- Center of Mass
|
||||||
|
- ``D``
|
||||||
|
- Static Body
|
||||||
|
* - ``;``
|
||||||
|
- Skin
|
||||||
|
- :literal:`\``
|
||||||
|
- Body Tree
|
||||||
|
* - ``\``
|
||||||
|
- Mesh Tree
|
||||||
|
-
|
||||||
|
-
|
||||||
|
|
||||||
|
Rendering flags
|
||||||
|
"""""""""""""""
|
||||||
|
|
||||||
|
These toggle the OpenGL effects in the Rendering section, and correspond to the shortcuts declared in ``mjRNDSTRING``.
|
||||||
|
Flags with no shortcut assigned (Depth, Id Color and Cull Face) are omitted.
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 1 3 1 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Key
|
||||||
|
- Flag
|
||||||
|
- Key
|
||||||
|
- Flag
|
||||||
|
* - ``S``
|
||||||
|
- Shadow
|
||||||
|
- ``W``
|
||||||
|
- Wireframe
|
||||||
|
* - ``R``
|
||||||
|
- Reflection
|
||||||
|
- ``L``
|
||||||
|
- Additive
|
||||||
|
* - ``K``
|
||||||
|
- Skybox
|
||||||
|
- ``G``
|
||||||
|
- Fog
|
||||||
|
* - ``/``
|
||||||
|
- Haze
|
||||||
|
-
|
||||||
|
-
|
||||||
|
|
||||||
|
Mouse
|
||||||
|
"""""
|
||||||
|
|
||||||
|
.. list-table::
|
||||||
|
:width: 95%
|
||||||
|
:align: left
|
||||||
|
:widths: 2 3
|
||||||
|
:header-rows: 1
|
||||||
|
|
||||||
|
* - Action
|
||||||
|
- Effect
|
||||||
|
* - Left drag
|
||||||
|
- Orbit the camera
|
||||||
|
* - Right drag
|
||||||
|
- Pan camera in vertical plane
|
||||||
|
* - ``Shift`` right drag
|
||||||
|
- Pan camera in horizontal plane
|
||||||
|
* - Scroll, or middle drag
|
||||||
|
- Zoom
|
||||||
|
* - Double-click
|
||||||
|
- Select an object
|
||||||
|
* - Right double-click
|
||||||
|
- Center the camera on the clicked point
|
||||||
|
* - ``Ctrl`` right double-click
|
||||||
|
- Track the selected body
|
||||||
|
* - ``Ctrl`` drag
|
||||||
|
- Rotate the selected object
|
||||||
|
* - ``Ctrl`` right drag
|
||||||
|
- Translate object in vertical plane
|
||||||
|
* - ``Ctrl`` ``Shift`` right drag
|
||||||
|
- Translate object in horizontal plane
|
||||||
|
* - Right-button hold over the UI
|
||||||
|
- Show the shortcut of each UI control
|
||||||
|
* - Double-click a UI section title
|
||||||
|
- Expand / collapse all sections
|
||||||
|
|
||||||
The code is long yet reasonably commented, so it is best to just read it. Here we provide a high-level overview.
|
The code is long yet reasonably commented, so it is best to just read it. Here we provide a high-level overview.
|
||||||
The ``main()`` function initializes both MuJoCo and GLFW, opens a window, and install GLFW callbacks for mouse and
|
The ``main()`` function initializes both MuJoCo and GLFW, opens a window, and install GLFW callbacks for mouse and
|
||||||
|
|||||||
Reference in New Issue
Block a user