10 lines
786 B
Markdown
10 lines
786 B
Markdown
# Geo-Tools 项目特定编码规范
|
||
|
||
## 地理数据处理黄金法则
|
||
1. **投影先行**:任何涉及距离、面积的计算前,必须先检查 CRS,若是地理坐标系(如 EPSG:4326),必须提示用户或自动调用 `suggest_projected_crs` 转换。
|
||
2. **几何清洗**:任何接收用户输入的 GeoDataFrame 的公开方法,内部必须包含 `gdf = gdf[gdf.is_valid]` 或 `make_valid()` 的处理逻辑,防止脏数据导致底层 C 库崩溃。
|
||
3. **内存控制**:读取大文件函数需要提供 `mask` (裁剪范围) 或 `rows` (读取行数限制) 参数。
|
||
|
||
## 代码风格
|
||
- 空间操作函数返回新的 GeoDataFrame,尽量不修改原始输入数据(Immutable)。
|
||
- 使用 `pathlib.Path` 处理所有文件路径,而不是字符串拼接。 |