# Mesh Processing Tools
A Python package for 3D mesh processing and analysis, offering a suite of tools for loading, analyzing, simplifying, and computing properties of 3D meshes.
## Features
- Mesh loading and analysis
- Mesh simplification
- Curvature calculation
- Signed Distance Field (SDF) computation
- Comprehensive error handling
## Installation
You can install Mesh Processing Tools using pip:
```bash
pip install jp-mesh-processing
```
## Quick Start
To use the package, you can import the necessary functions and classes from the `mesh_processing` module.
```python
from jp_mesh_processing import load_mesh, analyze_mesh, simplify_mesh, calculate_mesh_curvature, compute_sdf_mesh_to_sdf
# Example usage
mesh = load_mesh("path/to/your/mesh.obj")
analysis = analyze_mesh(mesh)
simplified_mesh = simplify_mesh(mesh, 0.5)
curvatures = calculate_mesh_curvature(mesh)
sdf = compute_sdf_mesh_to_sdf(mesh, 64)
```
## TODO
- [ ] Implement better testing for SDF computation with various parameter inputs
- [ ] Replace 'skull.obj' with a licensed 3D model from custom assets.jeevanpillay.com
- [ ] Integrate documentation and visualization into a web application:
- [ ] Set up apps/www website for project documentation
- [ ] Develop web-based visualization for mesh and SDF converted files
- [ ] Ensure fast and easy access to visualizations and documentation
- [ ] Review and update dependencies:
- [ ] Remove unused dependencies from requirements.txt and setup files
- [ ] Verify the necessity of 'rtree' and remove if unused
- [ ] Ensure 'pymeshlab' and 'pyvista' are properly utilized in the codebase
- [ ] Pylint & Pytest Integration
## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.
Raw data
{
"_id": null,
"home_page": "https://github.com/jeevanpillay/jp-mesh",
"name": "jp-mesh",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "mesh, 3D, processing, analysis, simplification, curvature, SDF",
"author": "jeevanpillay",
"author_email": "jp@jeevanpillay.com",
"download_url": "https://files.pythonhosted.org/packages/7a/c7/4c1e34ae2352fbbeecba44fe5e022b99ec6c129bf0258366cb251ad08945/jp_mesh-0.1.1.tar.gz",
"platform": null,
"description": "# Mesh Processing Tools\r\n\r\nA Python package for 3D mesh processing and analysis, offering a suite of tools for loading, analyzing, simplifying, and computing properties of 3D meshes.\r\n\r\n## Features\r\n\r\n- Mesh loading and analysis\r\n- Mesh simplification\r\n- Curvature calculation\r\n- Signed Distance Field (SDF) computation\r\n- Comprehensive error handling\r\n\r\n## Installation\r\n\r\nYou can install Mesh Processing Tools using pip:\r\n\r\n```bash\r\npip install jp-mesh-processing\r\n```\r\n\r\n## Quick Start\r\n\r\nTo use the package, you can import the necessary functions and classes from the `mesh_processing` module.\r\n\r\n```python\r\nfrom jp_mesh_processing import load_mesh, analyze_mesh, simplify_mesh, calculate_mesh_curvature, compute_sdf_mesh_to_sdf\r\n\r\n# Example usage\r\nmesh = load_mesh(\"path/to/your/mesh.obj\")\r\nanalysis = analyze_mesh(mesh)\r\nsimplified_mesh = simplify_mesh(mesh, 0.5)\r\ncurvatures = calculate_mesh_curvature(mesh)\r\nsdf = compute_sdf_mesh_to_sdf(mesh, 64)\r\n```\r\n\r\n## TODO\r\n\r\n- [ ] Implement better testing for SDF computation with various parameter inputs\r\n- [ ] Replace 'skull.obj' with a licensed 3D model from custom assets.jeevanpillay.com\r\n- [ ] Integrate documentation and visualization into a web application:\r\n - [ ] Set up apps/www website for project documentation\r\n - [ ] Develop web-based visualization for mesh and SDF converted files\r\n - [ ] Ensure fast and easy access to visualizations and documentation\r\n- [ ] Review and update dependencies:\r\n - [ ] Remove unused dependencies from requirements.txt and setup files\r\n - [ ] Verify the necessity of 'rtree' and remove if unused\r\n - [ ] Ensure 'pymeshlab' and 'pyvista' are properly utilized in the codebase\r\n- [ ] Pylint & Pytest Integration\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.\r\n",
"bugtrack_url": null,
"license": null,
"summary": "A package for 3D mesh processing and analysis",
"version": "0.1.1",
"project_urls": {
"Bug Tracker": "https://github.com/jeevanpillay/jp-mesh/issues",
"Documentation": "https://github.com/jeevanpillay/jp-mesh/wiki",
"Homepage": "https://github.com/jeevanpillay/jp-mesh"
},
"split_keywords": [
"mesh",
" 3d",
" processing",
" analysis",
" simplification",
" curvature",
" sdf"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b250de012d8447aed24af0e764414c6c104839c7d303157cdb9d98b5fa9d260d",
"md5": "9391475cf89ad54a44c302420b6abe22",
"sha256": "1a8ccdeaf34c86193ef37b0d953b8eedbdc50a920fb8a0364a0c067df72b46c1"
},
"downloads": -1,
"filename": "jp_mesh-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9391475cf89ad54a44c302420b6abe22",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 11650,
"upload_time": "2024-10-16T06:43:48",
"upload_time_iso_8601": "2024-10-16T06:43:48.021787Z",
"url": "https://files.pythonhosted.org/packages/b2/50/de012d8447aed24af0e764414c6c104839c7d303157cdb9d98b5fa9d260d/jp_mesh-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7ac74c1e34ae2352fbbeecba44fe5e022b99ec6c129bf0258366cb251ad08945",
"md5": "b91610a3e0b8a0e150884bb13254b4e0",
"sha256": "0184d049dd637f36e4bd9789df8e5337fc78f3898b7bf123195ec6f2fb216337"
},
"downloads": -1,
"filename": "jp_mesh-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "b91610a3e0b8a0e150884bb13254b4e0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 9933,
"upload_time": "2024-10-16T06:43:49",
"upload_time_iso_8601": "2024-10-16T06:43:49.356496Z",
"url": "https://files.pythonhosted.org/packages/7a/c7/4c1e34ae2352fbbeecba44fe5e022b99ec6c129bf0258366cb251ad08945/jp_mesh-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-16 06:43:49",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "jeevanpillay",
"github_project": "jp-mesh",
"github_not_found": true,
"lcname": "jp-mesh"
}