mujoco 3.3.4__tar.gz → 3.3.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. {mujoco-3.3.4 → mujoco-3.3.5}/LICENSES_THIRD_PARTY.md +0 -56
  2. {mujoco-3.3.4/mujoco.egg-info → mujoco-3.3.5}/PKG-INFO +4 -61
  3. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/CMakeLists.txt +4 -4
  4. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/bindings_test.py +1 -1
  5. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/MujocoDependencies.cmake +19 -26
  6. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/enum_traits.h +33 -1
  7. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/function_traits.h +22 -0
  8. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/codegen/generate_functions.py +5 -1
  9. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/enums.py +44 -12
  10. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/functions.py +42 -0
  11. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/structs.py +48 -24
  12. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/mjpython/Info.plist +4 -4
  13. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/mjpython/mjpython.py +15 -3
  14. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/renderer.py +3 -3
  15. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/CMakeLists.txt +1 -1
  16. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/simulate.h +1 -1
  17. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/specs.cc +75 -0
  18. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/specs.cc.inc +689 -652
  19. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/specs_test.py +201 -6
  20. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/structs.cc +6 -2
  21. mujoco-3.3.5/mujoco/testdata/simple_usd_preview_surface.usda +81 -0
  22. {mujoco-3.3.4 → mujoco-3.3.5/mujoco.egg-info}/PKG-INFO +4 -61
  23. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco.egg-info/SOURCES.txt +1 -0
  24. {mujoco-3.3.4 → mujoco-3.3.5}/pyproject.toml +4 -5
  25. {mujoco-3.3.4 → mujoco-3.3.5}/LICENSE +0 -0
  26. {mujoco-3.3.4 → mujoco-3.3.5}/MANIFEST.in +0 -0
  27. {mujoco-3.3.4 → mujoco-3.3.5}/README.md +0 -0
  28. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/__init__.py +0 -0
  29. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/callbacks.cc +0 -0
  30. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cgl/__init__.py +0 -0
  31. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cgl/cgl.py +0 -0
  32. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/CheckAvxSupport.cmake +0 -0
  33. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/FindOrFetch.cmake +0 -0
  34. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/MujocoHarden.cmake +0 -0
  35. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/MujocoLinkOptions.cmake +0 -0
  36. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/MujocoMacOS.cmake +0 -0
  37. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/MujocoOptions.cmake +0 -0
  38. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/ShellTests.cmake +0 -0
  39. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/cmake/TargetAddRpath.cmake +0 -0
  40. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/constants.cc +0 -0
  41. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/egl/__init__.py +0 -0
  42. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/egl/egl_ext.py +0 -0
  43. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/enums.cc +0 -0
  44. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/errors.cc +0 -0
  45. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/errors.h +0 -0
  46. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/functions.cc +0 -0
  47. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/functions.h +0 -0
  48. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/gl_context.py +0 -0
  49. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/glfw/__init__.py +0 -0
  50. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/indexer_xmacro.h +0 -0
  51. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/indexers.cc +0 -0
  52. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/indexers.h +0 -0
  53. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/__init__.py +0 -0
  54. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/ast_nodes.py +0 -0
  55. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/ast_nodes_test.py +0 -0
  56. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/codegen/formatter.py +0 -0
  57. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/codegen/generate_enums.py +0 -0
  58. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/codegen/generate_structs.py +0 -0
  59. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/enums_test.py +0 -0
  60. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/functions_test.py +0 -0
  61. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/mjxmacro.py +0 -0
  62. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/structs_test.py +0 -0
  63. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/type_parsing.py +0 -0
  64. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/introspect/type_parsing_test.py +0 -0
  65. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/memory_leak_test.py +0 -0
  66. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/minimize.py +0 -0
  67. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/minimize_test.py +0 -0
  68. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/mjpython/mjpython.icns +0 -0
  69. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/mjpython/mjpython.mm +0 -0
  70. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/msh2obj.py +0 -0
  71. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/msh2obj_test.py +0 -0
  72. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/osmesa/__init__.py +0 -0
  73. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/private.h +0 -0
  74. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/raw.h +0 -0
  75. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/render.cc +0 -0
  76. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/render_test.py +0 -0
  77. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/renderer_test.py +0 -0
  78. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/rollout.cc +0 -0
  79. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/rollout.py +0 -0
  80. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/rollout_test.py +0 -0
  81. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/serialization.h +0 -0
  82. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/array_safety.h +0 -0
  83. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/CheckAvxSupport.cmake +0 -0
  84. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/FindOrFetch.cmake +0 -0
  85. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/MujocoHarden.cmake +0 -0
  86. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/MujocoLinkOptions.cmake +0 -0
  87. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/MujocoMacOS.cmake +0 -0
  88. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/SimulateDependencies.cmake +0 -0
  89. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/cmake/SimulateOptions.cmake +0 -0
  90. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_adapter.cc +0 -0
  91. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_adapter.h +0 -0
  92. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_corevideo.h +0 -0
  93. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_corevideo.mm +0 -0
  94. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_dispatch.cc +0 -0
  95. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/glfw_dispatch.h +0 -0
  96. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/macos_gui.mm +0 -0
  97. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/main.cc +0 -0
  98. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/platform_ui_adapter.cc +0 -0
  99. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/platform_ui_adapter.h +0 -0
  100. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate/simulate.cc +0 -0
  101. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/simulate.cc +0 -0
  102. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/specs_wrapper.cc +0 -0
  103. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/specs_wrapper.h +0 -0
  104. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/structs.h +0 -0
  105. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/structs_wrappers.cc +0 -0
  106. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/testdata/abdomen_1_body.msh +0 -0
  107. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/testdata/model.xml +0 -0
  108. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/testdata/msh.xml +0 -0
  109. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/testdata/usd_golden.usda +0 -0
  110. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/threadpool.cc +0 -0
  111. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/threadpool.h +0 -0
  112. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/camera.py +0 -0
  113. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/demo.py +0 -0
  114. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/exporter.py +0 -0
  115. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/exporter_test.py +0 -0
  116. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/lights.py +0 -0
  117. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/objects.py +0 -0
  118. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/shapes.py +0 -0
  119. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/usd/utils.py +0 -0
  120. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/CMakeLists.txt +0 -0
  121. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/array_traits.h +0 -0
  122. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/array_traits_test.cc +0 -0
  123. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/crossplatform.h +0 -0
  124. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/func_traits.h +0 -0
  125. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/func_traits_test.cc +0 -0
  126. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/func_wrap.h +0 -0
  127. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/func_wrap_test.cc +0 -0
  128. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/tuple_tools.h +0 -0
  129. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/util/tuple_tools_test.cc +0 -0
  130. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/viewer.py +0 -0
  131. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco/viewer_test.py +0 -0
  132. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco.egg-info/dependency_links.txt +0 -0
  133. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco.egg-info/requires.txt +0 -0
  134. {mujoco-3.3.4 → mujoco-3.3.5}/mujoco.egg-info/top_level.txt +0 -0
  135. {mujoco-3.3.4 → mujoco-3.3.5}/setup.cfg +0 -0
  136. {mujoco-3.3.4 → mujoco-3.3.5}/setup.py +0 -0
@@ -841,62 +841,6 @@ must not be misrepresented as being the original software.
841
841
  distribution.
842
842
  ```
843
843
 
844
- ### SdfLib
845
-
846
- ```
847
- MIT License
848
-
849
- Copyright (c) 2023 Eduard Pujol
850
-
851
- Permission is hereby granted, free of charge, to any person obtaining a copy
852
- of this software and associated documentation files (the "Software"), to deal
853
- in the Software without restriction, including without limitation the rights
854
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
855
- copies of the Software, and to permit persons to whom the Software is
856
- furnished to do so, subject to the following conditions:
857
-
858
- The above copyright notice and this permission notice shall be included in all
859
- copies or substantial portions of the Software.
860
-
861
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
862
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
863
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
864
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
865
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
866
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
867
- SOFTWARE.
868
- ```
869
-
870
- ### spdlog
871
-
872
- ```
873
- The MIT License (MIT)
874
-
875
- Copyright (c) 2016 Gabi Melman.
876
-
877
- Permission is hereby granted, free of charge, to any person obtaining a copy
878
- of this software and associated documentation files (the "Software"), to deal
879
- in the Software without restriction, including without limitation the rights
880
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
881
- copies of the Software, and to permit persons to whom the Software is
882
- furnished to do so, subject to the following conditions:
883
-
884
- The above copyright notice and this permission notice shall be included in
885
- all copies or substantial portions of the Software.
886
-
887
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
888
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
889
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
890
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
891
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
892
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
893
- THE SOFTWARE.
894
-
895
- -- NOTE: Third party dependency used by this software --
896
- This software depends on the fmt lib (MIT License),
897
- and users must comply to its license: https://github.com/fmtlib/fmt/blob/master/LICENSE.rst
898
- ```
899
-
900
844
  ### TriangleMeshDistance
901
845
 
902
846
  ```
@@ -1,17 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mujoco
3
- Version: 3.3.4
3
+ Version: 3.3.5
4
4
  Summary: MuJoCo Physics Simulator
5
5
  Author-email: Google DeepMind <mujoco@deepmind.com>
6
- License: Apache License 2.0
6
+ License-Expression: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/google-deepmind/mujoco
8
- Project-URL: Documentation, https://mujoco.readthedocs.io/en/3.3.4
8
+ Project-URL: Documentation, https://mujoco.readthedocs.io/en/3.3.5
9
9
  Project-URL: Repository, https://github.com/google-deepmind/mujoco
10
- Project-URL: Changelog, https://mujoco.readthedocs.io/en/3.3.4/changelog.html
10
+ Project-URL: Changelog, https://mujoco.readthedocs.io/en/3.3.5/changelog.html
11
11
  Classifier: Development Status :: 5 - Production/Stable
12
12
  Classifier: Intended Audience :: Developers
13
13
  Classifier: Intended Audience :: Science/Research
14
- Classifier: License :: OSI Approved :: Apache Software License
15
14
  Classifier: Natural Language :: English
16
15
  Classifier: Programming Language :: Python :: 3
17
16
  Classifier: Programming Language :: Python :: 3.9
@@ -952,62 +951,6 @@ must not be misrepresented as being the original software.
952
951
  distribution.
953
952
  ```
954
953
 
955
- ### SdfLib
956
-
957
- ```
958
- MIT License
959
-
960
- Copyright (c) 2023 Eduard Pujol
961
-
962
- Permission is hereby granted, free of charge, to any person obtaining a copy
963
- of this software and associated documentation files (the "Software"), to deal
964
- in the Software without restriction, including without limitation the rights
965
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
966
- copies of the Software, and to permit persons to whom the Software is
967
- furnished to do so, subject to the following conditions:
968
-
969
- The above copyright notice and this permission notice shall be included in all
970
- copies or substantial portions of the Software.
971
-
972
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
973
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
974
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
975
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
976
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
977
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
978
- SOFTWARE.
979
- ```
980
-
981
- ### spdlog
982
-
983
- ```
984
- The MIT License (MIT)
985
-
986
- Copyright (c) 2016 Gabi Melman.
987
-
988
- Permission is hereby granted, free of charge, to any person obtaining a copy
989
- of this software and associated documentation files (the "Software"), to deal
990
- in the Software without restriction, including without limitation the rights
991
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
992
- copies of the Software, and to permit persons to whom the Software is
993
- furnished to do so, subject to the following conditions:
994
-
995
- The above copyright notice and this permission notice shall be included in
996
- all copies or substantial portions of the Software.
997
-
998
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
999
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1000
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1001
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1002
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1003
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
1004
- THE SOFTWARE.
1005
-
1006
- -- NOTE: Third party dependency used by this software --
1007
- This software depends on the fmt lib (MIT License),
1008
- and users must comply to its license: https://github.com/fmtlib/fmt/blob/master/LICENSE.rst
1009
- ```
1010
-
1011
954
  ### TriangleMeshDistance
1012
955
 
1013
956
  ```
@@ -84,7 +84,7 @@ if(NOT TARGET mujoco)
84
84
  if(MUJOCO_FRAMEWORK)
85
85
  message("MuJoCo framework is at ${MUJOCO_FRAMEWORK}/mujoco.framework")
86
86
  set(MUJOCO_LIBRARY
87
- ${MUJOCO_FRAMEWORK}/mujoco.framework/Versions/A/libmujoco.3.3.4.dylib
87
+ ${MUJOCO_FRAMEWORK}/mujoco.framework/Versions/A/libmujoco.3.3.5.dylib
88
88
  )
89
89
  target_compile_options(mujoco INTERFACE -F${MUJOCO_FRAMEWORK})
90
90
  endif()
@@ -92,7 +92,7 @@ if(NOT TARGET mujoco)
92
92
 
93
93
  if(NOT MUJOCO_FRAMEWORK)
94
94
  find_library(
95
- MUJOCO_LIBRARY mujoco mujoco.3.3.4 HINTS ${MUJOCO_LIBRARY_DIR} REQUIRED
95
+ MUJOCO_LIBRARY mujoco mujoco.3.3.5 HINTS ${MUJOCO_LIBRARY_DIR} REQUIRED
96
96
  )
97
97
  find_path(MUJOCO_INCLUDE mujoco/mujoco.h HINTS ${MUJOCO_INCLUDE_DIR} REQUIRED)
98
98
  message("MuJoCo is at ${MUJOCO_LIBRARY}")
@@ -173,7 +173,7 @@ findorfetch(
173
173
  GIT_REPO
174
174
  https://gitlab.com/libeigen/eigen
175
175
  GIT_TAG
176
- 81044ec13df7608d0d9d86aff2ef9805fc69bed1
176
+ 4be7e6b4e0a82853e853c0c7c4ef72f395e1f497
177
177
  TARGETS
178
178
  Eigen3::Eigen
179
179
  EXCLUDE_FROM_ALL
@@ -191,7 +191,7 @@ findorfetch(
191
191
  GIT_REPO
192
192
  https://github.com/pybind/pybind11
193
193
  GIT_TAG
194
- a2e59f0e7065404b44dfe92a28aca47ba1378dc4 # v2.13.6
194
+ f0ecf21301c0c24bc78b8b310347c7507d9f41d0 # v3.0.0
195
195
  TARGETS
196
196
  pybind11::pybind11_headers
197
197
  EXCLUDE_FROM_ALL
@@ -1395,7 +1395,7 @@ Euler integrator, semi-implicit in velocity.
1395
1395
  np.testing.assert_array_equal(d2, d3.flatten())
1396
1396
  np.testing.assert_array_equal(d1, d4.flatten())
1397
1397
 
1398
- def test_mjd_quat_intergrate(self):
1398
+ def test_mjd_quat_integrate(self):
1399
1399
  scale = 0.1
1400
1400
  vel = np.array((0.2, 0.3, 0.3))
1401
1401
  d_quat = np.empty(9, np.float64)
@@ -35,11 +35,11 @@ set(MUJOCO_DEP_VERSION_ccd
35
35
  CACHE STRING "Version of `ccd` to be fetched."
36
36
  )
37
37
  set(MUJOCO_DEP_VERSION_qhull
38
- c7bee59d068a69f427b1273e71cdc5bc455a5bdd
38
+ 62ccc56af071eaa478bef6ed41fd7a55d3bb2d80
39
39
  CACHE STRING "Version of `qhull` to be fetched."
40
40
  )
41
41
  set(MUJOCO_DEP_VERSION_Eigen3
42
- 81044ec13df7608d0d9d86aff2ef9805fc69bed1
42
+ 4be7e6b4e0a82853e853c0c7c4ef72f395e1f497
43
43
  CACHE STRING "Version of `Eigen3` to be fetched."
44
44
  )
45
45
 
@@ -58,9 +58,9 @@ set(MUJOCO_DEP_VERSION_benchmark
58
58
  CACHE STRING "Version of `benchmark` to be fetched."
59
59
  )
60
60
 
61
- set(MUJOCO_DEP_VERSION_sdflib
62
- 1927bee6bb8225258a39c8cbf14e18a4d50409ae
63
- CACHE STRING "Version of `SdfLib` to be fetched."
61
+ set(MUJOCO_DEP_VERSION_TriangleMeshDistance
62
+ 2cb643de1436e1ba8e2be49b07ec5491ac604457
63
+ CACHE STRING "Version of `TriangleMeshDistance` to be fetched."
64
64
  )
65
65
 
66
66
  mark_as_advanced(MUJOCO_DEP_VERSION_lodepng)
@@ -73,7 +73,7 @@ mark_as_advanced(MUJOCO_DEP_VERSION_Eigen3)
73
73
  mark_as_advanced(MUJOCO_DEP_VERSION_abseil)
74
74
  mark_as_advanced(MUJOCO_DEP_VERSION_gtest)
75
75
  mark_as_advanced(MUJOCO_DEP_VERSION_benchmark)
76
- mark_as_advanced(MUJOCO_DEP_VERSION_sdflib)
76
+ mark_as_advanced(MUJOCO_DEP_VERSION_TriangleMeshDistance)
77
77
 
78
78
  include(FetchContent)
79
79
  include(FindOrFetch)
@@ -184,26 +184,19 @@ findorfetch(
184
184
  EXCLUDE_FROM_ALL
185
185
  )
186
186
 
187
- option(SDFLIB_USE_ASSIMP OFF)
188
- option(SDFLIB_USE_OPENMP OFF)
189
- option(SDFLIB_USE_ENOKI OFF)
190
- findorfetch(
191
- USE_SYSTEM_PACKAGE
192
- OFF
193
- PACKAGE_NAME
194
- sdflib
195
- LIBRARY_NAME
196
- sdflib
197
- GIT_REPO
198
- https://github.com/UPC-ViRVIG/SdfLib.git
199
- GIT_TAG
200
- ${MUJOCO_DEP_VERSION_sdflib}
201
- TARGETS
202
- SdfLib
203
- EXCLUDE_FROM_ALL
204
- )
205
- target_compile_options(SdfLib PRIVATE ${MUJOCO_MACOS_COMPILE_OPTIONS})
206
- target_link_options(SdfLib PRIVATE ${MUJOCO_MACOS_LINK_OPTIONS})
187
+ if(NOT TARGET trianglemeshdistance)
188
+ FetchContent_Declare(
189
+ trianglemeshdistance
190
+ GIT_REPOSITORY https://github.com/InteractiveComputerGraphics/TriangleMeshDistance.git
191
+ GIT_TAG ${MUJOCO_DEP_VERSION_TriangleMeshDistance}
192
+ )
193
+
194
+ FetchContent_GetProperties(trianglemeshdistance)
195
+ if(NOT trianglemeshdistance_POPULATED)
196
+ FetchContent_Populate(trianglemeshdistance)
197
+ include_directories(${trianglemeshdistance_SOURCE_DIR})
198
+ endif()
199
+ endif()
207
200
 
208
201
  set(ENABLE_DOUBLE_PRECISION ON)
209
202
  set(CCD_HIDE_ALL_SYMBOLS ON)
@@ -360,12 +360,15 @@ struct mjtSensor {
360
360
  std::make_pair("mjSENS_SUBTREECOM", ::mjtSensor::mjSENS_SUBTREECOM),
361
361
  std::make_pair("mjSENS_SUBTREELINVEL", ::mjtSensor::mjSENS_SUBTREELINVEL),
362
362
  std::make_pair("mjSENS_SUBTREEANGMOM", ::mjtSensor::mjSENS_SUBTREEANGMOM),
363
+ std::make_pair("mjSENS_INSIDESITE", ::mjtSensor::mjSENS_INSIDESITE),
363
364
  std::make_pair("mjSENS_GEOMDIST", ::mjtSensor::mjSENS_GEOMDIST),
364
365
  std::make_pair("mjSENS_GEOMNORMAL", ::mjtSensor::mjSENS_GEOMNORMAL),
365
366
  std::make_pair("mjSENS_GEOMFROMTO", ::mjtSensor::mjSENS_GEOMFROMTO),
367
+ std::make_pair("mjSENS_CONTACT", ::mjtSensor::mjSENS_CONTACT),
366
368
  std::make_pair("mjSENS_E_POTENTIAL", ::mjtSensor::mjSENS_E_POTENTIAL),
367
369
  std::make_pair("mjSENS_E_KINETIC", ::mjtSensor::mjSENS_E_KINETIC),
368
370
  std::make_pair("mjSENS_CLOCK", ::mjtSensor::mjSENS_CLOCK),
371
+ std::make_pair("mjSENS_TACTILE", ::mjtSensor::mjSENS_TACTILE),
369
372
  std::make_pair("mjSENS_PLUGIN", ::mjtSensor::mjSENS_PLUGIN),
370
373
  std::make_pair("mjSENS_USER", ::mjtSensor::mjSENS_USER)};
371
374
  };
@@ -390,6 +393,20 @@ struct mjtDataType {
390
393
  std::make_pair("mjDATATYPE_QUATERNION", ::mjtDataType::mjDATATYPE_QUATERNION)};
391
394
  };
392
395
 
396
+ struct mjtConDataField {
397
+ static constexpr char name[] = "mjtConDataField";
398
+ using type = ::mjtConDataField;
399
+ static constexpr auto values = std::array{
400
+ std::make_pair("mjCONDATA_FOUND", ::mjtConDataField::mjCONDATA_FOUND),
401
+ std::make_pair("mjCONDATA_FORCE", ::mjtConDataField::mjCONDATA_FORCE),
402
+ std::make_pair("mjCONDATA_TORQUE", ::mjtConDataField::mjCONDATA_TORQUE),
403
+ std::make_pair("mjCONDATA_DIST", ::mjtConDataField::mjCONDATA_DIST),
404
+ std::make_pair("mjCONDATA_POS", ::mjtConDataField::mjCONDATA_POS),
405
+ std::make_pair("mjCONDATA_NORMAL", ::mjtConDataField::mjCONDATA_NORMAL),
406
+ std::make_pair("mjCONDATA_TANGENT", ::mjtConDataField::mjCONDATA_TANGENT),
407
+ std::make_pair("mjNCONDATA", ::mjtConDataField::mjNCONDATA)};
408
+ };
409
+
393
410
  struct mjtSameFrame {
394
411
  static constexpr char name[] = "mjtSameFrame";
395
412
  using type = ::mjtSameFrame;
@@ -615,7 +632,6 @@ struct mjtVisFlag {
615
632
  std::make_pair("mjVIS_FLEXFACE", ::mjtVisFlag::mjVIS_FLEXFACE),
616
633
  std::make_pair("mjVIS_FLEXSKIN", ::mjtVisFlag::mjVIS_FLEXSKIN),
617
634
  std::make_pair("mjVIS_BODYBVH", ::mjtVisFlag::mjVIS_BODYBVH),
618
- std::make_pair("mjVIS_FLEXBVH", ::mjtVisFlag::mjVIS_FLEXBVH),
619
635
  std::make_pair("mjVIS_MESHBVH", ::mjtVisFlag::mjVIS_MESHBVH),
620
636
  std::make_pair("mjVIS_SDFITER", ::mjtVisFlag::mjVIS_SDFITER),
621
637
  std::make_pair("mjNVISFLAG", ::mjtVisFlag::mjNVISFLAG)};
@@ -726,6 +742,20 @@ struct mjtMeshInertia {
726
742
  std::make_pair("mjMESH_INERTIA_SHELL", ::mjtMeshInertia::mjMESH_INERTIA_SHELL)};
727
743
  };
728
744
 
745
+ struct mjtMeshBuiltin {
746
+ static constexpr char name[] = "mjtMeshBuiltin";
747
+ using type = ::mjtMeshBuiltin;
748
+ static constexpr auto values = std::array{
749
+ std::make_pair("mjMESH_BUILTIN_NONE", ::mjtMeshBuiltin::mjMESH_BUILTIN_NONE),
750
+ std::make_pair("mjMESH_BUILTIN_SPHERE", ::mjtMeshBuiltin::mjMESH_BUILTIN_SPHERE),
751
+ std::make_pair("mjMESH_BUILTIN_HEMISPHERE", ::mjtMeshBuiltin::mjMESH_BUILTIN_HEMISPHERE),
752
+ std::make_pair("mjMESH_BUILTIN_CONE", ::mjtMeshBuiltin::mjMESH_BUILTIN_CONE),
753
+ std::make_pair("mjMESH_BUILTIN_SUPERSPHERE", ::mjtMeshBuiltin::mjMESH_BUILTIN_SUPERSPHERE),
754
+ std::make_pair("mjMESH_BUILTIN_SUPERTORUS", ::mjtMeshBuiltin::mjMESH_BUILTIN_SUPERTORUS),
755
+ std::make_pair("mjMESH_BUILTIN_WEDGE", ::mjtMeshBuiltin::mjMESH_BUILTIN_WEDGE),
756
+ std::make_pair("mjMESH_BUILTIN_PLATE", ::mjtMeshBuiltin::mjMESH_BUILTIN_PLATE)};
757
+ };
758
+
729
759
  struct mjtBuiltin {
730
760
  static constexpr char name[] = "mjtBuiltin";
731
761
  using type = ::mjtBuiltin;
@@ -867,6 +897,7 @@ static constexpr auto kAllEnums = std::make_tuple(
867
897
  mjtSensor{},
868
898
  mjtStage{},
869
899
  mjtDataType{},
900
+ mjtConDataField{},
870
901
  mjtSameFrame{},
871
902
  mjtLRMode{},
872
903
  mjtFlexSelf{},
@@ -892,6 +923,7 @@ static constexpr auto kAllEnums = std::make_tuple(
892
923
  mjtFont{},
893
924
  mjtGeomInertia{},
894
925
  mjtMeshInertia{},
926
+ mjtMeshBuiltin{},
895
927
  mjtBuiltin{},
896
928
  mjtMark{},
897
929
  mjtLimited{},
@@ -4290,6 +4290,17 @@ struct mjs_addMaterial {
4290
4290
  }
4291
4291
  };
4292
4292
 
4293
+ struct mjs_makeMesh {
4294
+ static constexpr char name[] = "mjs_makeMesh";
4295
+ static constexpr char doc[] = "Sets the vertices and normals of a mesh.";
4296
+ using type = int (mjsMesh *, mjtMeshBuiltin, double *, int);
4297
+ static constexpr auto param_names = std::make_tuple("mesh", "builtin", "params", "nparams");
4298
+
4299
+ MUJOCO_ALWAYS_INLINE static type& GetFunc() {
4300
+ return ::mjs_makeMesh;
4301
+ }
4302
+ };
4303
+
4293
4304
  struct mjs_getSpec {
4294
4305
  static constexpr char name[] = "mjs_getSpec";
4295
4306
  static constexpr char doc[] = "Get spec from body.";
@@ -4719,6 +4730,17 @@ struct mjs_deleteUserValue {
4719
4730
  }
4720
4731
  };
4721
4732
 
4733
+ struct mjs_sensorDim {
4734
+ static constexpr char name[] = "mjs_sensorDim";
4735
+ static constexpr char doc[] = "Return sensor dimension.";
4736
+ using type = int (const mjsSensor *);
4737
+ static constexpr auto param_names = std::make_tuple("sensor");
4738
+
4739
+ MUJOCO_ALWAYS_INLINE static type& GetFunc() {
4740
+ return ::mjs_sensorDim;
4741
+ }
4742
+ };
4743
+
4722
4744
  struct mjs_defaultSpec {
4723
4745
  static constexpr char name[] = "mjs_defaultSpec";
4724
4746
  static constexpr char doc[] = "Default spec attributes.";
@@ -95,7 +95,11 @@ class MjFunctionVisitor:
95
95
  else:
96
96
  strings = []
97
97
  for child in node['inner']:
98
- strings.append(self._make_comment(child))
98
+ comment = self._make_comment(child)
99
+ nullable_index = comment.find('Nullable:')
100
+ if nullable_index != -1:
101
+ comment = comment[:nullable_index]
102
+ strings.append(comment)
99
103
  return ''.join(strings)
100
104
 
101
105
  def visit(self, node: ClangJsonNode) -> None:
@@ -382,14 +382,17 @@ ENUMS: Mapping[str, EnumDecl] = dict([
382
382
  ('mjSENS_SUBTREECOM', 35),
383
383
  ('mjSENS_SUBTREELINVEL', 36),
384
384
  ('mjSENS_SUBTREEANGMOM', 37),
385
- ('mjSENS_GEOMDIST', 38),
386
- ('mjSENS_GEOMNORMAL', 39),
387
- ('mjSENS_GEOMFROMTO', 40),
388
- ('mjSENS_E_POTENTIAL', 41),
389
- ('mjSENS_E_KINETIC', 42),
390
- ('mjSENS_CLOCK', 43),
391
- ('mjSENS_PLUGIN', 44),
392
- ('mjSENS_USER', 45),
385
+ ('mjSENS_INSIDESITE', 38),
386
+ ('mjSENS_GEOMDIST', 39),
387
+ ('mjSENS_GEOMNORMAL', 40),
388
+ ('mjSENS_GEOMFROMTO', 41),
389
+ ('mjSENS_CONTACT', 42),
390
+ ('mjSENS_E_POTENTIAL', 43),
391
+ ('mjSENS_E_KINETIC', 44),
392
+ ('mjSENS_CLOCK', 45),
393
+ ('mjSENS_TACTILE', 46),
394
+ ('mjSENS_PLUGIN', 47),
395
+ ('mjSENS_USER', 48),
393
396
  ]),
394
397
  )),
395
398
  ('mjtStage',
@@ -414,6 +417,21 @@ ENUMS: Mapping[str, EnumDecl] = dict([
414
417
  ('mjDATATYPE_QUATERNION', 3),
415
418
  ]),
416
419
  )),
420
+ ('mjtConDataField',
421
+ EnumDecl(
422
+ name='mjtConDataField',
423
+ declname='enum mjtConDataField_',
424
+ values=dict([
425
+ ('mjCONDATA_FOUND', 0),
426
+ ('mjCONDATA_FORCE', 1),
427
+ ('mjCONDATA_TORQUE', 2),
428
+ ('mjCONDATA_DIST', 3),
429
+ ('mjCONDATA_POS', 4),
430
+ ('mjCONDATA_NORMAL', 5),
431
+ ('mjCONDATA_TANGENT', 6),
432
+ ('mjNCONDATA', 7),
433
+ ]),
434
+ )),
417
435
  ('mjtSameFrame',
418
436
  EnumDecl(
419
437
  name='mjtSameFrame',
@@ -654,10 +672,9 @@ ENUMS: Mapping[str, EnumDecl] = dict([
654
672
  ('mjVIS_FLEXFACE', 26),
655
673
  ('mjVIS_FLEXSKIN', 27),
656
674
  ('mjVIS_BODYBVH', 28),
657
- ('mjVIS_FLEXBVH', 29),
658
- ('mjVIS_MESHBVH', 30),
659
- ('mjVIS_SDFITER', 31),
660
- ('mjNVISFLAG', 32),
675
+ ('mjVIS_MESHBVH', 29),
676
+ ('mjVIS_SDFITER', 30),
677
+ ('mjNVISFLAG', 31),
661
678
  ]),
662
679
  )),
663
680
  ('mjtRndFlag',
@@ -775,6 +792,21 @@ ENUMS: Mapping[str, EnumDecl] = dict([
775
792
  ('mjMESH_INERTIA_SHELL', 3),
776
793
  ]),
777
794
  )),
795
+ ('mjtMeshBuiltin',
796
+ EnumDecl(
797
+ name='mjtMeshBuiltin',
798
+ declname='enum mjtMeshBuiltin_',
799
+ values=dict([
800
+ ('mjMESH_BUILTIN_NONE', 0),
801
+ ('mjMESH_BUILTIN_SPHERE', 1),
802
+ ('mjMESH_BUILTIN_HEMISPHERE', 2),
803
+ ('mjMESH_BUILTIN_CONE', 3),
804
+ ('mjMESH_BUILTIN_SUPERSPHERE', 4),
805
+ ('mjMESH_BUILTIN_SUPERTORUS', 5),
806
+ ('mjMESH_BUILTIN_WEDGE', 6),
807
+ ('mjMESH_BUILTIN_PLATE', 7),
808
+ ]),
809
+ )),
778
810
  ('mjtBuiltin',
779
811
  EnumDecl(
780
812
  name='mjtBuiltin',
@@ -9869,6 +9869,34 @@ FUNCTIONS: Mapping[str, FunctionDecl] = dict([
9869
9869
  ),
9870
9870
  doc='Add material.',
9871
9871
  )),
9872
+ ('mjs_makeMesh',
9873
+ FunctionDecl(
9874
+ name='mjs_makeMesh',
9875
+ return_type=ValueType(name='int'),
9876
+ parameters=(
9877
+ FunctionParameterDecl(
9878
+ name='mesh',
9879
+ type=PointerType(
9880
+ inner_type=ValueType(name='mjsMesh'),
9881
+ ),
9882
+ ),
9883
+ FunctionParameterDecl(
9884
+ name='builtin',
9885
+ type=ValueType(name='mjtMeshBuiltin'),
9886
+ ),
9887
+ FunctionParameterDecl(
9888
+ name='params',
9889
+ type=PointerType(
9890
+ inner_type=ValueType(name='double'),
9891
+ ),
9892
+ ),
9893
+ FunctionParameterDecl(
9894
+ name='nparams',
9895
+ type=ValueType(name='int'),
9896
+ ),
9897
+ ),
9898
+ doc='Sets the vertices and normals of a mesh.',
9899
+ )),
9872
9900
  ('mjs_getSpec',
9873
9901
  FunctionDecl(
9874
9902
  name='mjs_getSpec',
@@ -10688,6 +10716,20 @@ FUNCTIONS: Mapping[str, FunctionDecl] = dict([
10688
10716
  ),
10689
10717
  doc='Delete user payload.',
10690
10718
  )),
10719
+ ('mjs_sensorDim',
10720
+ FunctionDecl(
10721
+ name='mjs_sensorDim',
10722
+ return_type=ValueType(name='int'),
10723
+ parameters=(
10724
+ FunctionParameterDecl(
10725
+ name='sensor',
10726
+ type=PointerType(
10727
+ inner_type=ValueType(name='mjsSensor', is_const=True),
10728
+ ),
10729
+ ),
10730
+ ),
10731
+ doc='Return sensor dimension.',
10732
+ )),
10691
10733
  ('mjs_defaultSpec',
10692
10734
  FunctionDecl(
10693
10735
  name='mjs_defaultSpec',