Metadata-Version: 2.4
Name: ohtli
Version: 0.1.0
Summary: Cálculo y visualización de β-esqueletos mediante fuerza bruta
Author-email: Sara Luz Valenzuela Camacho <saraluz@gmail.com>
Maintainer-email: Sara Luz Valenzuela Camacho <saraluz@gmail.com>
Project-URL: Homepage, https://github.com/SaraLuzVC/Tesis-ITAM
Project-URL: Documentation, https://github.com/SaraLuzVC/Tesis-ITAM/tree/main/ohtli/README.md
Keywords: beta-skeleton,computational geometry,graph,archaeology
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.24
Requires-Dist: networkx>=3.0
Requires-Dist: matplotlib>=3.7
Requires-Dist: adjustText>=0.8
Provides-Extra: dev
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"

# beta-skeletons

Librería para el cálculo y visualización de β-esqueletos mediante fuerza bruta.

## Instalación

```bash
pip install beta-skeletons
```

O en modo desarrollo:

```bash
git clone https://github.com/tu-usuario/beta-skeletons.git
cd beta-skeletons
pip install -e ".[dev]"
```

## Uso básico

```python
import numpy as np
from beta_skeletons import adjacency_matrix, build_graph, plot_skeleton
from beta_skeletons import relative_asymmetry, control_value, plot_metric_bars

coords = np.array([[0,0],[1,0],[2,0],[1,1]], dtype=float)
names  = ["A", "B", "C", "D"]

# Matriz de adyacencia
adj = adjacency_matrix(coords, beta=1.0)

# Grafo de NetworkX
G = build_graph(coords, beta=2.0, labels=names)

# Visualización
ax, G = plot_skeleton(coords, beta=1.0, labels=names)

# Métricas
ra = relative_asymmetry(G)
cv = control_value(G)
plot_metric_bars(ra, metric_name="Asimetría relativa")
```

## Estructura del paquete

```
beta_skeletons/
├── geometry.py   # cálculo de lunas y vecindades
├── skeleton.py   # matriz de adyacencia y construcción del grafo
├── metrics.py    # asimetría relativa y valor de control
└── viz.py        # visualizaciones
```

## Referencia

Kirkpatrick, D. G. y Radke, J. D. (1985).
*A Framework for Computational Morphology*.
Computational Geometry, pp. 217-248.
