The stage ID is referenced in python and from lab in numerous places, usually as a mark of where added objects' ids begin, or else as a final target for collision detection. Unfortunately, this is often referenced or checked by using magic number references to the stage (i.e. -1).
This PR introduces a global constant to denote the stage ID (esp::RIGID_STAGE_ID), and bindings to that constant to expose it to python (habitat_sim.stage_id), which should be used to refer to the stage ID. A matching Habitat-Lab PR is pending for this support as well, once this PR is merged. Ultimately this is to facilitate the instanced -based semantic sensor support PR here
Motivation and Context
The stage ID is referenced in python and from lab in numerous places, usually as a mark of where added objects' ids begin, or else as a final target for collision detection. Unfortunately, this is often referenced or checked by using magic number references to the stage (i.e. -1).
This PR introduces a global constant to denote the stage ID (
esp::RIGID_STAGE_ID
), and bindings to that constant to expose it to python (habitat_sim.stage_id
), which should be used to refer to the stage ID. A matching Habitat-Lab PR is pending for this support as well, once this PR is merged. Ultimately this is to facilitate the instanced -based semantic sensor support PR hereHow Has This Been Tested
All c++ and python tests pass locally
Types of changes
Checklist