-
Notifications
You must be signed in to change notification settings - Fork 276
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ServerConfig accepts an sdf::Root DOM object #1333
Conversation
Signed-off-by: Nate Koenig <[email protected]>
Signed-off-by: Nate Koenig <[email protected]>
Signed-off-by: Nate Koenig <[email protected]>
The |
Since we are expanding the number of ways that sdf can be injected into the server config, do you think it would make sense to introduce an enum like:
To make it easier to check and make switch statements around the branching logic? |
Also, not for gazebo6, since it would screw up API, but for main I think we could remove the "SdfString" and "SdfFile" accessors/mutators and make ServerConfig users always parse the Sdf into a root before construction the server config. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two nits and a question
Signed-off-by: Nate Koenig <[email protected]>
Added the enum in f32555b |
Signed-off-by: Nate Koenig <[email protected]>
…ign-gazebo into server-config-root-dom
Needs a release of sdformat12. |
@osrf-jenkins retest this please |
Signed-off-by: Nate Koenig <[email protected]>
@osrf-jenkins retest this please |
@osrf-jenkins rerun tests please |
@osrf-jenkins run tests ⬅️ I believe that's the magic incantation |
I love magic |
humm no, that didn't work. It could be because GitHub is having webhook issues right now: |
That also explains why github actions didn't start when I triggered a rerun. |
I manually clicked retry on the Jenkins builds. GitHub Actions seems to be down too. Here's where the incantation is documented, for future reference: |
@osrf-jenkins run tests |
Codecov Report
@@ Coverage Diff @@
## ign-gazebo6 #1333 +/- ##
===============================================
+ Coverage 63.04% 63.10% +0.05%
===============================================
Files 303 303
Lines 24385 24419 +34
===============================================
+ Hits 15374 15410 +36
+ Misses 9011 9009 -2
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just some small nits about documentation
/// The provided SDF filename may be a Fuel URI, relative path, name | ||
/// of an installed Gazebo world filename, or an absolute path. | ||
/// \param[in] _sdfFile An SDF world filename such as: | ||
/// 1. "shapes.sdf" - This is referencing an installed world file. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It could also be a relative path to a file in the current directory.
/// of an installed Gazebo world filename, or an absolute path. | ||
/// \param[in] _sdfFile An SDF world filename such as: | ||
/// 1. "shapes.sdf" - This is referencing an installed world file. | ||
/// 2. "../shapes.sdf" - This is referencing a relative world file. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's worth mentioning what it's relative to. It could be either the running directory or any path in IGN_GAZEBO_RESOURCE_PATH
Merging it with my documentation comments not addressed, they're minor. |
* GzSceneManager: Prevent crash 💥 when inserted from menu (#1371) Signed-off-by: Louise Poubel <[email protected]> Signed-off-by: ahcorde <[email protected]> Co-authored-by: ahcorde <[email protected]> * Prepare version 6.7.0 (#1373) * Prepare version 6.7.0 Signed-off-by: Jose Luis Rivero <[email protected]> * Populate GUI plugins that are empty (#1375) Signed-off-by: Louise Poubel <[email protected]> * Fix visualization python tutorial (#1377) Signed-off-by: ahcorde <[email protected]> * Add xyz and rpy offset to published odometry pose (#1341) * Added xyz and rpy offset to published pose Signed-off-by: Aditya <[email protected]> * Added headless rendering tutorial (#1386) * Added headless rendering tutorial Signed-off-by: Nate Koenig <[email protected]> * Update tutorials/headless_rendering.md Co-authored-by: Louise Poubel <[email protected]> Signed-off-by: Nate Koenig <[email protected]> * Update tutorials/headless_rendering.md Co-authored-by: Louise Poubel <[email protected]> Signed-off-by: Nate Koenig <[email protected]> * Mention ogre2 Signed-off-by: Nate Koenig <[email protected]> * Added note about software rendering Signed-off-by: Nate Koenig <[email protected]> * add 'on linux systems' Signed-off-by: Nate Koenig <[email protected]> * Add xyz and rpy offset to published odometry pose (#1341) * Added xyz and rpy offset to published pose Signed-off-by: Aditya <[email protected]> Signed-off-by: Nate Koenig <[email protected]> Co-authored-by: Nate Koenig <[email protected]> Co-authored-by: Louise Poubel <[email protected]> Co-authored-by: Aditya Pande <[email protected]> * Allow to turn on/off lights (#1343) Signed-off-by: ahcorde <[email protected]> Co-authored-by: Louise Poubel <[email protected]> * Add gazebo Entity id to rendering sensor's user data (#1381) Adds the gazebo::Entity id to a rendering::Sensor's UserData object. The main use case is so that we can get back the corresponding gazebo Entity in the rendering thread when processing sensors. Signed-off-by: Ian Chen <[email protected]> Co-authored-by: Nate Koenig <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]> * Don't mark entities with a ComponentState::NoChange component as modified (#1391) Signed-off-by: Ashton Larkin <[email protected]> * Disable ModelCommandAPI_TEST.RgbdCameraSensor on macOS (#1397) Disabling test since it's very flaky. Signed-off-by: Addisu Z. Taddese <[email protected]> * Disable PeerTracker.PeerTrackerStale on macOS (#1398) Signed-off-by: Addisu Z. Taddese <[email protected]> * Toggle Light visuals (#1387) Signed-off-by: ahcorde <[email protected]> * Prevent hanging when world has only non-world plugins (#1383) Signed-off-by: Louise Poubel <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]> * Component inspector: refactor Pose3d C++ code into a separate class (#1400) Signed-off-by: Louise Poubel <[email protected]> * add initial_position param to joint controller system (#1406) Similar to the <initial_position> parameter in the JointTrajectoryController system, this PR adds an <initial_position> parameter to the JointPositionController to let users specifies the initial target pos for a joint. Signed-off-by: Ian Chen <[email protected]> * Fix JointStatePublisher topic name for nested models (#1405) The joint-state-publisher system currently assumes it's always attached to the top level model and hence generates an incorrect topic name for nested models. This PR updates it to generate the correct topic name. Signed-off-by: Ian Chen <[email protected]> * Added user command to set multiple entities (#1394) Signed-off-by: ahcorde <[email protected]> Signed-off-by: Louise Poubel <[email protected]> Co-authored-by: Louise Poubel <[email protected]> * Disable tests that are expected to fail on Windows (#1408) Signed-off-by: Louise Poubel <[email protected]> * Fortress: Install Ogre 2.2, simplify docker (#1395) Signed-off-by: Louise Poubel <[email protected]> * SceneBroadcaster: only send changed state information for change events (#1392) Signed-off-by: Ashton Larkin <[email protected]> Co-authored-by: Louise Poubel <[email protected]> * Add wheel slip user command (#1241) Signed-off-by: Ivan Santiago Paunovic <[email protected]> * Distortion camera integration test (#1374) Signed-off-by: William Lew <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]> Co-authored-by: Louise Poubel <[email protected]> * Add the Model Photo Shoot system, port of Modelpropshop plugin from Gazebo classic (#1331) This system can be used to generate thumbnails of models. In comparison to the Modelpropshop plugin in Gazebo classic, this adds the ability to generate thumbnails after randomizing the joint positions of the model. Signed-off-by: Marco A. Gutierrez <[email protected]> Signed-off-by: Addisu Z. Taddese <[email protected]> * Referring to Fuel assets within a heightmap (#1419) Signed-off-by: Louise Poubel <[email protected]> * Disable sensors in sensors system when battery is drained (#1385) Added a new parameter <disable_on_drained_battery> to the sensors system. If set to true, sensors will be disabled if the model is out of battery. It listens to the battery state of charge from the battery plugin, and if the charge reaches zero, all child sensors and nested sensors are set to be inactive. Signed-off-by: Ian Chen <[email protected]> * 🏁🎈 5.4.0 (#1420) Signed-off-by: Louise Poubel <[email protected]> * ServerConfig accepts an sdf::Root DOM object (#1333) Signed-off-by: Nate Koenig <[email protected]> Co-authored-by: Nate Koenig <[email protected]> Co-authored-by: Michael Carroll <[email protected]> Co-authored-by: Alejandro Hernández Cordero <[email protected]> * Preparing 6.8.0 release (#1425) * Prepareing 6.8.0 release Signed-off-by: Jose Luis Rivero <[email protected]> * Update changelog after merging forward port Signed-off-by: Jose Luis Rivero <[email protected]> * Add Gaussian noise to Odometry Publisher (#1393) * Added gaussian noise and odometry with covariance publisher Signed-off-by: Aditya <[email protected]> Co-authored-by: Louise Poubel <[email protected]> * Fix deprecation warnings for ModelPhotoShoot (#1437) Signed-off-by: Louise Poubel <[email protected]> Co-authored-by: ahcorde <[email protected]> Co-authored-by: Jose Luis Rivero <[email protected]> Co-authored-by: Aditya Pande <[email protected]> Co-authored-by: Nate Koenig <[email protected]> Co-authored-by: Nate Koenig <[email protected]> Co-authored-by: Ian Chen <[email protected]> Co-authored-by: Ashton Larkin <[email protected]> Co-authored-by: Addisu Z. Taddese <[email protected]> Co-authored-by: Ivan Santiago Paunovic <[email protected]> Co-authored-by: William Lew <[email protected]> Co-authored-by: Marco A. Gutiérrez <[email protected]> Co-authored-by: Michael Carroll <[email protected]>
This pull request has been mentioned on Gazebo Community. There might be relevant details there: https://community.gazebosim.org/t/new-ignition-releases-2022-04-13-fortress-edifice/1367/1 |
Signed-off-by: Nate Koenig [email protected]
🎉 New feature
Summary
Requires: gazebosim/sdformat#841
I have a downstream program that is using Gazebo as a library. This program runs a world with a number of models. Each model can have different starting conditions, which is mostly just pose information for now but can be expanded to joint positions and forces.
A key aspect is consistent and reproducible behavior. To meet this goal, I would like to start Gazebo with all models at their specified locations, and not rely on asynchronous spawning. This goal can be accomplished by sending the
Server
a complete SDF DOM.I have modified the
ServerConfig
to accept ansdf::Root
object as an alternative to the file and string options.Checklist
codecheck
passed (See contributing)Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining
Signed-off-by
messages.