Gabe Oppenheimer
c90a63a926
Update the version number to 3.2.7 following the 3.2.6 release.
...
PiperOrigin-RevId: 702103729
Change-Id: Id5581cc823a17360e7bb98ac0aa4342020c1aefa
2024-12-02 15:30:52 -08:00
Gabe Oppenheimer
0f64959e27
Update the version of eigen3 ahead of the 3.2.6 release
...
PiperOrigin-RevId: 702026493
Change-Id: Ibb0447b7106e9b873386c153283c81685583350f
2024-12-02 11:12:39 -08:00
Levi Burner
e6eab04dd0
rollout fixups and correctly initialize unspecified controls
2024-11-27 07:04:23 -05:00
Levi Burner
41b325785a
fix creation of std::vector
2024-11-26 16:42:08 -05:00
Levi Burner
5ba4d58497
replace array on stack with std::vector
2024-11-26 13:16:05 -05:00
Levi Burner
943eb6bc7e
rollout accepts a list of models of length nroll
2024-11-25 21:29:14 -05:00
Levi Burner
96a8f002bc
Remove nroll argument from rollout
...
nroll can always be implied from the other arguments of rollout.
Add tests for nroll inference.
2024-11-25 14:10:42 -05:00
Alessio Quaglino
7e46e21ef3
Add mju_mat2Rot.
...
This function extracts the 3D rotation from an arbitrary 3x3 matrix by refining the input quaternion. It is based on the paper "A robust method to extract the rotational part of deformations" by Müller, Matthias, Jan Bender, Nuttapong Chentanez, and Miles Macklin.
PiperOrigin-RevId: 700006006
Change-Id: I77550993233dea9cdf68601762a3ae7ded749bdf
2024-11-25 09:19:10 -08:00
Alessio Quaglino
c6ba8f27fd
Add bind() method to MjModel and MjData.
...
This method allows users to bind a spec to a model or data object, making it less verbose to access its arrays.
PiperOrigin-RevId: 699952211
Change-Id: I6b71a88d5a6968bc0f902bd49db7c568b46a4dfb
2024-11-25 05:53:58 -08:00
Alessio Quaglino
f909d63cdf
Enable to attach a spec to a frame.
...
PiperOrigin-RevId: 699703988
Change-Id: Idbddcbce1e68286248458eb0bd24d5080451a58a
2024-11-24 07:35:14 -08:00
Alessio Quaglino
3a12db9ad2
Remove id attribute from mjSpec objects in Python bindings.
...
Using ids is error prone in scenarios of repeated attachment and detachment. Python users are encouraged to use names for unique identification of model elements.
PiperOrigin-RevId: 699227286
Change-Id: Ifd83e6d85d36ff72ea43caf8b82eab9e4d552440
2024-11-22 11:05:14 -08:00
Saran Tunyasuvunakool
34c6f9b76b
Update build_requirements_usd.txt.
...
PiperOrigin-RevId: 698138884
Change-Id: I8a3d093b460bd4acad1fa18806a59c29aaffd4c6
2024-11-19 14:07:21 -08:00
Alessio Quaglino
f7cc1c2e5b
Read solref from jnt_solref when the user calls model.joint.solref.
...
Same for solimp. Fixes #2221 .
PiperOrigin-RevId: 695416121
Change-Id: I962dc12b13fa4d02dc349ecad1a1ddc7085565db
2024-11-11 11:15:00 -08:00
Kevin Sayed
276f5b04cd
Bump MuJoCo version to 3.2.6.
...
PiperOrigin-RevId: 693472991
Change-Id: Ic202f52dd42c55c43ba05ca21b5cc6a4024b0c72
2024-11-05 14:13:08 -08:00
Alessio Quaglino
ebe60b9ad5
Add const to mjsDefault when used as function argument.
...
Fixes #2197 .
PiperOrigin-RevId: 692346264
Change-Id: Iddb9be1377a7d59c86911802d8c5563f6bf6b043
2024-11-01 18:18:42 -07:00
Yuval Tassa
c9f78ad8a8
Rename nnzJ to nJ in mjData.
...
This naming is more consistent.
PiperOrigin-RevId: 691858223
Change-Id: Ife3db822afa0b51b30d0792548b35b3742da388a
2024-10-31 10:43:10 -07:00
Taylor Howell
f47840e57c
Add mju_dense2sparse to public API.
...
PiperOrigin-RevId: 691125900
Change-Id: Id9b7c739ee14bff2317168da258b1a3acbdafdbe
2024-10-29 12:47:48 -07:00
Alessio Quaglino
e835f139c8
Add sibling traversal for tree elements.
...
PiperOrigin-RevId: 691057957
Change-Id: I3f30cf175b5ad0842f3fbbf7fdb42ba7a2212682
2024-10-29 09:55:08 -07:00
Google DeepMind
71cfcc5432
Use assertIn instead of assertContainsSubsequence for substring checks.
...
A contained subsequence must not necessarily be continuous, so the check only
checked if the individual letters were appearing in order within the message,
possibly interspersed with other characters.
PiperOrigin-RevId: 690977874
Change-Id: I36bd5a0105b979a9b0d6d04ca5239245d4f8d041
2024-10-29 05:20:52 -07:00
Copybara-Service
2c86136dd6
Merge pull request #2160 from traversaro:patch-40
...
PiperOrigin-RevId: 690660035
Change-Id: Id4dc7eb53b7c6cda050d1e6b385eec16d66d077e
2024-10-28 10:17:13 -07:00
Joss Moore
ca45041049
MjSpecs.copy should return an MjSpec rather than a raw::MjSpec*
...
raw::MjSpec* is not a good python object.
PiperOrigin-RevId: 690564198
Change-Id: I3a5dd525a3a9acc67bb0e598dd508572dc4c687f
2024-10-28 04:55:38 -07:00
Yuval Tassa
d8494fef3b
Remove deprecated mjv_makeConnector function.
...
PiperOrigin-RevId: 690563333
Change-Id: Ice9c6b6cf41de8a55fa361477f9aee9181d50184
2024-10-28 04:51:47 -07:00
Silvio Traversaro
455116466b
Fix running tests out of a installed mujoco python package
2024-10-25 13:24:21 +02:00
Alessio Quaglino
bebec52869
Add find_all with string input.
...
PiperOrigin-RevId: 689487165
Change-Id: I48511aec1610b2112f9456e8f410d077c57c7a95
2024-10-24 13:01:49 -07:00
Yuval Tassa
a3ea01e57e
Remove deprecated mju_rotVecMat and mju_rotVecMatT functions.
...
PiperOrigin-RevId: 689405782
Change-Id: I0281376d5d6f5c31ea2603d61c03c7b94aaa6312
2024-10-24 09:15:23 -07:00
Alessio Quaglino
159f23e6b4
Remember compiler options during attach.
...
Note:
- Move compiler options into `mjsCompiler` struct.
- The compiler options from the attached model are not written by mj_SaveXML.
PiperOrigin-RevId: 689391440
Change-Id: I1d63c146a32f87c737b7a55b64a54b0ffe3aecc9
2024-10-24 08:31:15 -07:00
Yuval Tassa
e14aebfd16
Expose mju_sparse2dense to public API.
...
PiperOrigin-RevId: 688985153
Change-Id: I9559f1d47363d0afada80c86abdc729cd1910b63
2024-10-23 09:01:25 -07:00
Alessio Quaglino
bfa78614c8
Require prefix for the attach tag.
...
For `mjs_attachFrame` and `mjs_attachBody`, require either a prefix or suffix.
It is tempting for users to not use a prefix (see #2162 ), but this causes issues. For example, it creates a duplicate "main" default class in the parent as a child of the already existing "main" default.
PiperOrigin-RevId: 688535755
Change-Id: I653181ca35943f1e4eb89c70fca8b5289818324e
2024-10-22 07:08:33 -07:00
Copybara-Service
1802d9b1a7
Merge pull request #2069 from squarefk:main
...
PiperOrigin-RevId: 688255285
Change-Id: Id33ad1fb826a590e95f48bf366f1d19d1f2ac2a4
2024-10-21 13:37:29 -07:00
Alessio Quaglino
dcf2816543
Remove copy_back from Python bindings and mj_copyBack from the C API.
...
PiperOrigin-RevId: 687377331
Change-Id: I355493d92857418b08b5aa90ea38cebe5c475314
2024-10-18 11:55:04 -07:00
Google DeepMind
ffdb800e45
Update the MuJoCo version for the 3.2.5 release following the 3.2.4 release.
...
PiperOrigin-RevId: 686641388
Change-Id: I68d5183c9d369b7617f692ab97c12c53f0d2504c
2024-10-16 14:24:06 -07:00
Gabe Oppenheimer
c2024ef6d1
Update the MuJoCo version for the 3.2.4 release.
...
PiperOrigin-RevId: 686261295
Change-Id: Ib59e44a6829a79fd480f2822a68cb05f94c38732
2024-10-15 15:34:09 -07:00
Google DeepMind
d1e004aa97
Update version hashes in MuJoCo CMake files ahead of the 3.2.4 release.
...
PiperOrigin-RevId: 686208889
Change-Id: I19d3e6566e76c44e199f427aed984b9a530f4262
2024-10-15 13:03:13 -07:00
Yuval Tassa
ee7b994021
Remove Newton Cholesky factor from mjData arena, rollback of b66da3d369.
...
PiperOrigin-RevId: 685726867
Change-Id: Ic2afd0dd35e38f403164d2cbe4618286abfa51ab
2024-10-14 09:07:22 -07:00
Alessio Quaglino
766cd20273
Add mjs_bodyToFrame() to convert a body to a frame.
...
Also add test for attaching the world body.
PiperOrigin-RevId: 685603933
Change-Id: I3cfe7d226d6f032b5a587e44d0f4f18207977188
2024-10-14 00:39:20 -07:00
Alessio Quaglino
cdb167f275
Add mjs_attachToSite for attaching a body to a site.
...
PiperOrigin-RevId: 684432183
Change-Id: I7100bebfb6521f9dbfbb07f31490b2b9298bf18c
2024-10-10 07:12:49 -07:00
Yuval Tassa
5dcc31a6aa
Fix read-from-uninitialized-memory in bindings_test.py
...
PiperOrigin-RevId: 684082155
Change-Id: I6f3030559ebda4eda28c17ab866c7502c74e5862
2024-10-09 10:14:26 -07:00
Yuval Tassa
9a0dc20821
Move Newton Hessian memory allocation from stack to arena.
...
PiperOrigin-RevId: 684054446
Change-Id: I4be0b216810ebbd9d7fa119c6a84eb08d3c16b83
2024-10-09 08:54:54 -07:00
Yuval Tassa
b1941708dd
Add some arena-allocated attributes to compare in mjData pickle/unpickle test.
...
PiperOrigin-RevId: 684025320
Change-Id: Ic3282eaae74e43a33c2ed5f1b25ad38884487829
2024-10-09 07:15:52 -07:00
Yuval Tassa
b66da3d369
Add mjData.L, sparse Cholesky factor of Newton solver Hessian.
...
PiperOrigin-RevId: 683669555
Change-Id: I18d7530b5d68d1d48cb95d4faa0150c434109638
2024-10-08 10:13:08 -07:00
Alessio Quaglino
1f9dca8bc4
Do not expose plugin_slot.
...
PiperOrigin-RevId: 683215401
Change-Id: Ic64f7221ed83ca3b0c8cca16eb680ea67c67b564
2024-10-07 09:38:01 -07:00
Alessio Quaglino
66faba9aa5
Avoid changing semantics of mjsPlugin.name across XML sections.
...
The `extension` section used to discard the plugin name and write the instance name in `plugin.name`, while all of the other sections wrote the instance name in `plugin.instance_name` and optionally the plugin name in `plugin.name` (via the function `OnePlugin`). Now all plugin names are in `plugin.plugin_name` and the instance is written in `plugin.name`, so that it is possible to lookup a plugin via its unique instance name.
PiperOrigin-RevId: 683183804
Change-Id: I179ef5d221143b720db24d745b09e327bf1449ef
2024-10-07 07:57:03 -07:00
Copybara-Service
bce43b63ed
Merge pull request #2120 from hartikainen:fix-2118
...
PiperOrigin-RevId: 683098606
Change-Id: Ib558bab7aca9042e318056de411ddf1a229d421d
2024-10-07 02:39:29 -07:00
Alessio Quaglino
6e66cafe76
Capture mjs_attach error message in the Python bindings.
...
PiperOrigin-RevId: 682409212
Change-Id: I391ee48626e7dcd985f65a231370ef5ec16124d7
2024-10-04 12:19:42 -07:00
Copybara-Service
7e9481fbeb
Merge pull request #2067 from abhihjoshi:documentation
...
PiperOrigin-RevId: 682364758
Change-Id: I3a5000a2851a560018ae0e04a2b7ad13415cb7c6
2024-10-04 10:15:19 -07:00
Kristian Hartikainen
3634bd5063
Fix python namespacing
2024-10-04 11:23:18 +03:00
Kristian Hartikainen
5d46884efe
Rename MuJoCo (mjpython).app -> MuJoCo_(mjpython).app
2024-10-04 11:10:28 +03:00
Alessio Quaglino
e973dc74dd
Yield ownership of char[], vector<string>, and vector<byte> to mjSpec in Python bindings.
...
PiperOrigin-RevId: 681522091
Change-Id: Icb3788d9ef6e914a307531e39ad8171c24f590af
2024-10-02 11:14:48 -07:00
Google DeepMind
befe4af8f0
Add missing includes necessary after changes in libc++ headers.
...
Tested:
TAP train for global presubmit queue
http://test/OCL:680649491:BASE:680620735:1727746506750:fa29d104
PiperOrigin-RevId: 681090682
Change-Id: I3346ed996d9b6cd0fc7d600c02c41e0cd1b72400
2024-10-01 11:08:01 -07:00
Alessio Quaglino
89aea5e217
Add body.find_all() to Python bindings.
...
This enables to generate a list of all body children of a given type.
Also, add recursive option to mjs_firstChild and mjs_nextChild. Fixes #2112 .
PiperOrigin-RevId: 681039348
Change-Id: Iebbb26fd5ec314150206edfdddd88633baa0bec6
2024-10-01 08:57:25 -07:00