Commit 3c0eef9
committed
[#1490] Add gravity factory support for MuJoCo scenes
Extend gravBodyFactory.addBodiesTo() to configure MJScene objects in
addition to conventional GravityEffector owners. For each MuJoCo scene,
create an NBodyGravity model, register every factory body as a gravity
source, and apply gravity independently at every MuJoCo body's center
of mass. Retain the model and Vizard gravity metadata on the scene and
reject duplicate gravity attachment.
Allow NBodyGravity sources to retain a shared GravBodyData descriptor.
Resolve the gravity model, central-body flag, and ephemeris input from
the descriptor so the same configuration can be shared by conventional
spacecraft and MuJoCo dynamics. Initialize descriptor-backed gravity
models during Reset and warn when an orientation-dependent model has no
ephemeris input.
Expose descriptor-backed sources to Python as
addGravitySourceFromBody(). Keep the existing manual
addGravitySource(..., isCentralBody=...) interface unchanged, including
support for its keyword argument.
This enables gravity models and SPICE connections created by
simIncludeGravBody to be reused directly by MuJoCo scenes without
duplicating their configuration.1 parent 6b9c222 commit 3c0eef9
4 files changed
Lines changed: 207 additions & 29 deletions
File tree
- src
- simulation/mujocoDynamics/NBodyGravity
- utilities
Lines changed: 103 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
23 | 59 | | |
24 | 60 | | |
25 | 61 | | |
26 | 62 | | |
27 | | - | |
| 63 | + | |
28 | 64 | | |
29 | 65 | | |
30 | 66 | | |
31 | 67 | | |
32 | | - | |
| 68 | + | |
33 | 69 | | |
34 | 70 | | |
35 | 71 | | |
36 | 72 | | |
37 | | - | |
| 73 | + | |
38 | 74 | | |
39 | 75 | | |
40 | 76 | | |
41 | 77 | | |
42 | 78 | | |
43 | 79 | | |
44 | 80 | | |
45 | | - | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
46 | 91 | | |
47 | | - | |
| 92 | + | |
48 | 93 | | |
49 | 94 | | |
50 | | - | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
51 | 98 | | |
52 | 99 | | |
53 | | - | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
54 | 105 | | |
55 | 106 | | |
56 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
57 | 118 | | |
58 | 119 | | |
59 | 120 | | |
60 | | - | |
| 121 | + | |
61 | 122 | | |
62 | 123 | | |
63 | 124 | | |
| |||
91 | 152 | | |
92 | 153 | | |
93 | 154 | | |
94 | | - | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
95 | 176 | | |
96 | 177 | | |
97 | 178 | | |
| |||
149 | 230 | | |
150 | 231 | | |
151 | 232 | | |
152 | | - | |
| 233 | + | |
153 | 234 | | |
154 | | - | |
155 | | - | |
| 235 | + | |
| 236 | + | |
156 | 237 | | |
157 | | - | |
158 | | - | |
159 | | - | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
160 | 241 | | |
161 | 242 | | |
162 | 243 | | |
163 | | - | |
| 244 | + | |
164 | 245 | | |
165 | 246 | | |
166 | | - | |
| 247 | + | |
167 | 248 | | |
168 | 249 | | |
169 | 250 | | |
| |||
200 | 281 | | |
201 | 282 | | |
202 | 283 | | |
203 | | - | |
| 284 | + | |
204 | 285 | | |
205 | 286 | | |
206 | 287 | | |
207 | | - | |
| 288 | + | |
208 | 289 | | |
209 | | - | |
| 290 | + | |
210 | 291 | | |
211 | 292 | | |
212 | 293 | | |
| |||
228 | 309 | | |
229 | 310 | | |
230 | 311 | | |
231 | | - | |
| 312 | + | |
232 | 313 | | |
233 | 314 | | |
234 | 315 | | |
| |||
Lines changed: 18 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
| 37 | + | |
| 38 | + | |
37 | 39 | | |
38 | 40 | | |
39 | 41 | | |
40 | 42 | | |
| 43 | + | |
41 | 44 | | |
42 | 45 | | |
43 | 46 | | |
44 | 47 | | |
45 | 48 | | |
46 | 49 | | |
| 50 | + | |
47 | 51 | | |
48 | 52 | | |
49 | 53 | | |
| |||
102 | 106 | | |
103 | 107 | | |
104 | 108 | | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
105 | 123 | | |
106 | 124 | | |
107 | 125 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
37 | 46 | | |
38 | 47 | | |
39 | 48 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
210 | 228 | | |
211 | | - | |
212 | 229 | | |
213 | 230 | | |
214 | | - | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
215 | 285 | | |
216 | 286 | | |
217 | | - | |
| 287 | + | |
218 | 288 | | |
219 | 289 | | |
220 | 290 | | |
| |||
0 commit comments