hra-glb-mesh-collisions


Namehra-glb-mesh-collisions JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryA command-line interface to extract mesh-mesh collision information from GLB files
upload_time2024-09-11 14:28:54
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords collision detection glb
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # hra_glb_mesh_collisions

[![PyPI - Version](https://img.shields.io/pypi/v/hra-glb-mesh-collisions.svg)](https://pypi.org/project/hra-glb-mesh-collisions)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/hra-glb-mesh-collisions.svg)](https://pypi.org/project/hra-glb-mesh-collisions)

-----

## Table of Contents

- [hra\_glb\_mesh\_collisions](#hra_glb_mesh_collisions)
  - [Table of Contents](#table-of-contents)
  - [Installation](#installation)
  - [License](#license)
  - [Dependencies](#dependencies)
  - [Usage](#usage)

## Installation

```console
pip install hra-glb-mesh-collisions
```

## License

`hra-glb-mesh-collisions` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.

## Dependencies

System packages:

You may need to install libfcl liboctomap if the program does not work right away using this command (on Ubuntu):

```bash
$ sudo apt install liboctomap-dev libfcl-dev
```

For Python library:

1. pygltflib
2. trimesh

Install python dependencies with:

```bash
pip install -r requirements.txt
```

## Usage

Example usage:

```bash
python3 mesh-mesh-collisions.py ./examples/VH_F_Kidney_Left.glb collision_result.csv
```

For help documentation:

```bash
$ python3 mesh-mesh-collisions.py --help

usage: mesh-mesh-collisions.py [-h] [--include-distances] [-v] input_glb output_csv

positional arguments:
  input_glb            path to input glb file
  output_csv           path to output collisions csv file

options:
  -h, --help           show this help message and exit
  --include-distances  include distances even if they dont' colide
  -v, --verbose
```

Sample result ouptut csv:

Notes about the distance colum:
- distance is in meters
- -1 = intersection
- distance measured between two closest points

```csv
source,target,distance
VHF_hilum_of_kidney_L,VHF_kidney_capsule_L,-1
VHF_hilum_of_kidney_L,VHF_major_calyx_L_a,-1
VHF_hilum_of_kidney_L,VHF_major_calyx_L_b,0.0014157565638410548
VHF_hilum_of_kidney_L,VHF_major_calyx_L_c,-1
VHF_hilum_of_kidney_L,VHF_major_calyx_L_d,-1
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_a,0.011878771067593177
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_b,0.014892350577084101
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_c,0.01049842653752553
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_d,0.013852964218697942
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_e,-1
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_f,0.0003293750826728972
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_g,0.0013917394770369632
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_h,0.002076302121193277
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_i,0.0001650410537290576
VHF_hilum_of_kidney_L,VHF_minor_calyx_L_j,0.0026597163618629024
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "hra-glb-mesh-collisions",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "\"Bruce W. Herr II\" <bherr@iu.edu>",
    "keywords": "collision detection, glb",
    "author": null,
    "author_email": "Chenran Li <chenran.li@stonybrook.edu>, \"Bruce W. Herr II\" <bherr@iu.edu>",
    "download_url": "https://files.pythonhosted.org/packages/0d/c8/93ea3a4cb34a931b3489205a8c0eee1faddee3f1c76f66a3503f2b2f23fb/hra_glb_mesh_collisions-0.1.1.tar.gz",
    "platform": null,
    "description": "# hra_glb_mesh_collisions\n\n[![PyPI - Version](https://img.shields.io/pypi/v/hra-glb-mesh-collisions.svg)](https://pypi.org/project/hra-glb-mesh-collisions)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/hra-glb-mesh-collisions.svg)](https://pypi.org/project/hra-glb-mesh-collisions)\n\n-----\n\n## Table of Contents\n\n- [hra\\_glb\\_mesh\\_collisions](#hra_glb_mesh_collisions)\n  - [Table of Contents](#table-of-contents)\n  - [Installation](#installation)\n  - [License](#license)\n  - [Dependencies](#dependencies)\n  - [Usage](#usage)\n\n## Installation\n\n```console\npip install hra-glb-mesh-collisions\n```\n\n## License\n\n`hra-glb-mesh-collisions` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.\n\n## Dependencies\n\nSystem packages:\n\nYou may need to install libfcl liboctomap if the program does not work right away using this command (on Ubuntu):\n\n```bash\n$ sudo apt install liboctomap-dev libfcl-dev\n```\n\nFor Python library:\n\n1. pygltflib\n2. trimesh\n\nInstall python dependencies with:\n\n```bash\npip install -r requirements.txt\n```\n\n## Usage\n\nExample usage:\n\n```bash\npython3 mesh-mesh-collisions.py ./examples/VH_F_Kidney_Left.glb collision_result.csv\n```\n\nFor help documentation:\n\n```bash\n$ python3 mesh-mesh-collisions.py --help\n\nusage: mesh-mesh-collisions.py [-h] [--include-distances] [-v] input_glb output_csv\n\npositional arguments:\n  input_glb            path to input glb file\n  output_csv           path to output collisions csv file\n\noptions:\n  -h, --help           show this help message and exit\n  --include-distances  include distances even if they dont' colide\n  -v, --verbose\n```\n\nSample result ouptut csv:\n\nNotes about the distance colum:\n- distance is in meters\n- -1 = intersection\n- distance measured between two closest points\n\n```csv\nsource,target,distance\nVHF_hilum_of_kidney_L,VHF_kidney_capsule_L,-1\nVHF_hilum_of_kidney_L,VHF_major_calyx_L_a,-1\nVHF_hilum_of_kidney_L,VHF_major_calyx_L_b,0.0014157565638410548\nVHF_hilum_of_kidney_L,VHF_major_calyx_L_c,-1\nVHF_hilum_of_kidney_L,VHF_major_calyx_L_d,-1\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_a,0.011878771067593177\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_b,0.014892350577084101\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_c,0.01049842653752553\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_d,0.013852964218697942\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_e,-1\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_f,0.0003293750826728972\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_g,0.0013917394770369632\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_h,0.002076302121193277\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_i,0.0001650410537290576\nVHF_hilum_of_kidney_L,VHF_minor_calyx_L_j,0.0026597163618629024\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A command-line interface to extract mesh-mesh collision information from GLB files",
    "version": "0.1.1",
    "project_urls": {
        "Changelog": "https://github.com/hubmapconsortium/hra-glb-mesh-collisions/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/hubmapconsortium/hra-glb-mesh-collisions",
        "Homepage": "https://github.com/hubmapconsortium/hra-glb-mesh-collisions",
        "Issues": "https://github.com/hubmapconsortium/hra-glb-mesh-collisions/issues",
        "Repository": "https://github.com/hubmapconsortium/hra-glb-mesh-collisions.git"
    },
    "split_keywords": [
        "collision detection",
        " glb"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "65c0eeb64c760bf08576bcd59cdf01b23205640fc22d8314d6845c6a5c6ecbe0",
                "md5": "8afb7b33e9f9d0e989ea0b3d1cf0862d",
                "sha256": "4cf8f47de2b8a0de35a7293ce705b82dde7304bcda8e4705728442bb9746c046"
            },
            "downloads": -1,
            "filename": "hra_glb_mesh_collisions-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "8afb7b33e9f9d0e989ea0b3d1cf0862d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 5857,
            "upload_time": "2024-09-11T14:28:52",
            "upload_time_iso_8601": "2024-09-11T14:28:52.487460Z",
            "url": "https://files.pythonhosted.org/packages/65/c0/eeb64c760bf08576bcd59cdf01b23205640fc22d8314d6845c6a5c6ecbe0/hra_glb_mesh_collisions-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0dc893ea3a4cb34a931b3489205a8c0eee1faddee3f1c76f66a3503f2b2f23fb",
                "md5": "b116f3f4cdafdd39ccfab57f2caddf1e",
                "sha256": "68f59e9a9377318121d37458998af6a53fbe7bcaab9ee2ecd2ca3e99e892561a"
            },
            "downloads": -1,
            "filename": "hra_glb_mesh_collisions-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "b116f3f4cdafdd39ccfab57f2caddf1e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 1422265,
            "upload_time": "2024-09-11T14:28:54",
            "upload_time_iso_8601": "2024-09-11T14:28:54.211952Z",
            "url": "https://files.pythonhosted.org/packages/0d/c8/93ea3a4cb34a931b3489205a8c0eee1faddee3f1c76f66a3503f2b2f23fb/hra_glb_mesh_collisions-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-11 14:28:54",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "hubmapconsortium",
    "github_project": "hra-glb-mesh-collisions",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "hra-glb-mesh-collisions"
}
        
Elapsed time: 0.31023s