semvec/pypi-packages huggingface dataset:
rigeo 0.2.0
Rigid body geometry and inertial parameters.
License: MIT
Requires Python: >=3.8

# rigeo: rigid body geometry

Rigeo is a prototyping library for rigid body geometry in Python: it combines
three-dimensional geometry with the inertial properties of rigid bodies, with
applications to robotic manipulation.

## Density Realizable Inertial Parameters

One of the main features of this library is a set of necessary conditions for
**density realizability** on 3D shapes based on moment relaxations (see [this
paper](https://arxiv.org/abs/2411.07079) for more information). A set of
inertial parameters (i.e., mass, center of mass, inertia matrix) is called
*density realizable* on a given shape if it can be physically realized by
*some* rigid body contained in that shape. These conditions can be included as
constraints in semidefinite programs for inertial parameter identification or
for checking robustness to inertial parameter uncertainty.

## Other Features

* Build rigid bodies out of flexible shape primitives: convex polyhedra,
  ellipsoids, and cylinders.
* Obtain the intersection of two convex polyhedra (via
  [cdd](https://pycddlib.readthedocs.io)). This is particularly useful for
  obtaining contact patches between polyhedral objects for manipulation; e.g.,
  when [solving the waiter's problem](https://arxiv.org/abs/2305.17484)
* Obtain the distance between primitive shapes using convex programming.
* Compute maximum-volume inscribed and minimum-volume bounding ellipsoids for
  sets of points.
* Compute convex hulls for degenerate sets of points (i.e., points that live in
  some lower-dimensional subspace than the ambient space).
* Uniform random sampling inside of and on the surface of ellipsoids.

## Installation

The library requires Python >=3.8. It has been tested on Ubuntu 20.04 and
24.04. Optimization problems use [cvxpy](https://www.cvxpy.org/); MOSEK is
installed by default and is used as the solver for the tests. Academic licenses
for MOSEK can be obtained for free. If this is not an option for you, Clarabel
is a reasonable open-source alternative.

From pip:
```
pip install rigeo
```

From source (using [uv](https://docs.astral.sh/uv/)):
```
git clone https://github.com/utiasDSL/rigeo
cd rigeo
uv venv
uv sync
```

From source (using pip):
```
git clone https://github.com/utiasDSL/rigeo
cd rigeo
python -m pip install .
```

## Development

Tests are run using pytest:
```
cd tests
python -m pytest .
```

To test against different Python versions, use:
```
# for example
uv run --isolated --python=3.9 pytest
```

## License

MIT - see the LICENSE file.
umnetdb-utils 0.2.0
Helper classes for querying UMnet databases
License: MIT
Requires Python: >=3.10

# umnetdb-utils
Helper classes for gathering data from umnet databases

This package is hosted on pypi - you can install it with `pip install umnetdb-utils` and use it in your own code.

## Database Helper Classes
As of May 2025 this repo defines db wrapper classes for Equipdb, Netinfo, Netdisco and UMnetdb (populated by agador, hosted on wintermute).
To use these classes you need to provide credentials, either in a config file that you pass into the initializer, in `.env`, or in your environment:
* Netinfo: `NETINFO_USERNAME`, `NETINFO_PASSSWORD`
* Netdisco: `NETDISCO_DB_USER`, `NETDISCO_DB_PASSWORD`
* Equipdb: `EQUIP_DB_USER`, `EQUIP_DB_PASSWORD`
* UMnetdb: `UMNETDB_USER`, `UMNETDB_PASSWORD`

Netinfo, Netdisco, and Equipdb classes are copied over from `umnet-scripts` which is reaching the end of its life as a package.