Metadata-Version: 2.4
Name: 3s-toolkit
Version: 0.1.1
Summary: Lightweight GNSS, geodesy and spatial analysis toolkit for education
Author-email: 张云衢 <m13899938033@163.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://gitee.com/zhangborui_2026/3s-research-tool
Project-URL: Documentation, https://gitee.com/zhangborui_2026/3s-research-tool
Project-URL: Source, https://gitee.com/zhangborui_2026/3s-research-tool
Project-URL: Tracker, https://gitee.com/zhangborui_2026/3s-research-tool/issues
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Education
Classifier: Topic :: Scientific/Engineering :: GIS
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.21.0
Requires-Dist: scipy>=1.7.0
Provides-Extra: viz
Requires-Dist: pandas>=1.3.0; extra == "viz"
Requires-Dist: folium>=0.12.0; extra == "viz"
Requires-Dist: requests>=2.26.0; extra == "viz"
Requires-Dist: streamlit>=1.28.0; extra == "viz"
Requires-Dist: streamlit-folium>=0.15.0; extra == "viz"
Dynamic: license-file

# 3s-toolkit

轻量级 GNSS、大地测量和空间分析工具包，专为教学和快速原型设计。

## 名称说明

- **安装名（PyPI）**：`3s-toolkit`
- **导入名（Python）**：`s3_toolkit`

> 注意：PyPI 包名以数字 `3` 开头，但 Python 模块名不允许以数字开头，
> 因此导入时使用 `s3_toolkit`（数字 3 移到末尾）。

```bash
pip install 3s-toolkit
```

```python
import s3_toolkit
```

## 可选依赖（可视化）

核心库仅依赖 `numpy` 和 `scipy`。如果需要使用配套示例脚本中的绘图与 Web 可视化功能（`pandas`、`folium`、`streamlit` 等），请安装 `viz` 扩展组：

```bash
pip install 3s-toolkit[viz]
```

## 快速示例

```python
from s3_toolkit import haversine_distance

dist = haversine_distance(30.5235, 114.3575, 39.9042, 116.4074)
print(f"武汉大学到天安门距离：{dist:.0f} 米")
```

## 功能列表

- `haversine_distance` – 大圆距离计算
- `latlon_to_meters` – 经纬度转 Web 墨卡托米制坐标
- `trajectory_length` – 轨迹总长度
- `elevation_stats` – 高程统计
- `speed_between_points` – 点间速度
- `nearest_neighbor_distance` – 最近邻分析
- `parse_osm_response` – 地理编码响应解析

## 本地安装测试

在项目根目录打开终端（PowerShell），执行：

```bash
pip install -e .
```

然后测试导入：

```bash
python -c "import s3_toolkit as stk; print(stk.haversine_distance(30, 114, 31, 115))"
```

如果没有报错并输出了一个数字（如 `146775.68`），说明包已正常工作。

## 许可证

Apache 2.0
