Pure python package to solve ROS-style package:// and Gazebo-style model:// URIs in absolute paths.
Project description
resolve-robotics-uri-py
Pure Python package (that only depends on Python stdlib) to resolve a package:// (ROS-style) or model:// (Gazebo-style) URI to an absolute filename.
Installation
Install using onle one of the following commands to install in an existing environment:
Installation from conda-forge
conda install -c conda-forge resolve-robotics-uri-py
Installation from PyPI
python -m pip install resolve-robotics-uri-py
Usage in Python
Add import resolve_robotics_uri_py to your Python file, then take inspiration from the following examples.
If you want to get the location of the iCubGazeboV2_7 iCub model installed from icub-models:
absolute_path = resolve_robotics_uri_py.resolve_robotics_uri("package://iCub/robots/iCubGazeboV2_7/model.urdf")
If you want to get the location of the ergoCubSN00 model installed from ergocub-software:
absolute_path = resolve_robotics_uri_py.resolve_robotics_uri("package://ergoCub/robots/ergoCubSN000/model.urdf")
If you want to get the location of the panda model installed by moveit_resources_panda_description:
absolute_path = resolve_robotics_uri_py.resolve_robotics_uri("package://moveit_resources_panda_description/urdf/panda.urdf")
Command Line usage
resolve_robotics_uri_py also install a command line tool called resolve-robotics-uri-py for use in scripts, that can be used as:
resolve-robotics-uri-py package://iCub/robots/iCubGazeboV2_7/model.urdf
For example, on bash this can be used to easily convert the a urdf specified via package:// to an sdf (assuming you have Gazebo installed), using the backtick operator:
gz sdf -p `resolve-robotics-uri-py package://iCub/robots/iCubGazeboV2_7/model.urdf`
Adding Custom Search Paths
Some packages may not be installed in standard locations, or you may want to use a custom directory structure. In such cases, you have a few options:
Option 1: Modify the Native Search Paths
You can add the search path to one of the natively supported paths of Gazebo or ROS, such as:
GZ_SIM_RESOURCE_PATHAMENT_PREFIX_PATH
Option 2: Specify Additional Search Paths
If you prefer not to modify the default ROS or Gazebo search paths, you can use either the --package_dirs command line option or set the RRU_ADDITIONAL_PATHS environment variable:
Using the --package_dirs Command Line Option:
resolve-robotics-uri-py --package_dirs /path/to/packages:/another/path package://my_package/model.urdf
Setting the RRU_ADDITIONAL_PATHS Environment Variable:
export RRU_ADDITIONAL_PATHS=/path/to/packages:/another/path
resolve-robotics-uri-py package://my_package/model.urdf
Both methods accept a colon-separated list of directories (or semicolon-separated on Windows).
In Python code, you can specify additional paths using the additional_package_dirs parameter:
absolute_path = resolve_robotics_uri_py.resolve_robotics_uri(
"package://my_package/model.urdf",
package_dirs=["/path/to/packages", "/another/path"]
)
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file resolve_robotics_uri_py-0.4.1.tar.gz.
File metadata
- Download URL: resolve_robotics_uri_py-0.4.1.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7010a9fdab10e059a61695dd565da9739d4d8aa92319bb24210e750c689e6663
|
|
| MD5 |
a98ed6b202c529a5d1c21cbee8975286
|
|
| BLAKE2b-256 |
19f93fa642ad656bfd24b74aedc93db203eb8faded6f19f6cf5166c4948c181d
|
File details
Details for the file resolve_robotics_uri_py-0.4.1-py3-none-any.whl.
File metadata
- Download URL: resolve_robotics_uri_py-0.4.1-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3c65acd02dce73f580a22d8911b3231466325f93ec784c8a11af4012c1f0b1b
|
|
| MD5 |
d65f3a6b6b48377e55ee7f17a91598eb
|
|
| BLAKE2b-256 |
7a5db1bc2f3fac573174350634731d2c366fce9e0ad9b5d9763c726efd546669
|