Metadata-Version: 2.1
Name: cnceye
Version: 0.5.0
Summary: CMM python library
Home-page: https://github.com/OpenCMM/cnceye
License: MIT
Keywords: cnc,cmm,milling,gcode
Author: yuichiroaoki
Author-email: 45054071+yuichiroaoki@users.noreply.github.com
Requires-Python: >=3.11,<3.13
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: numpy (>=1.26.2,<2.0.0)
Requires-Dist: rtree (>=1.1.0,<2.0.0)
Requires-Dist: scipy (>=1.11.4,<2.0.0)
Requires-Dist: trimesh (>=4.0.5,<5.0.0)
Project-URL: Repository, https://github.com/OpenCMM/cnceye
Description-Content-Type: text/markdown

# cnceye
![Test](https://github.com/OpenCMM/cnceye/actions/workflows/ci.yml/badge.svg)

cnceye analyzes 3D models from a stl file and find measuring lines and curves.

![a laser triagulation sensor](https://opencmm.xyz/assets/images/sensor-55b7cf98350f293eba2c2b9d593bdd4f.png)

## Installation
```bash
pip install cnceye
```

## Usage

```python
from cnceye import Shape

shape = Shape("tests/fixtures/stl/sample.stl")
lines, arcs = shape.get_lines_and_arcs()
```

## Simulation with Blender
Create test data

Prerequisites 
- Blender 3.6.1 or later

```bash
blender "blender/measure.blend" --background --python scripts/demo.py -- tests/fixtures/gcode/edge.gcode
```
