h3
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
pg_h3 | 4.5.0 | GIS | Apache-2.0 | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 1530 | h3 | 否 | 是 | 否 | 是 | 否 | 是 | - |
| 1531 | h3_postgis | 否 | 是 | 否 | 是 | 否 | 是 | - |
| 相关扩展 | postgis qdgc pg_geohash pgrouting q3c pg_polyline mobilitydb pg_eviltransform earthdistance pg_sphere |
|---|---|
| 下游依赖 | h3_postgis |
RPM and DEB 4.5.0 statically link the pinned H3 core; point coordinates use longitude, latitude. Reindex affected h3index btree and distance-dependent indexes after upgrading.
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | PIGSTY | 4.5.0 | 1817161514 | pg_h3 | - |
| RPM | PIGSTY | 4.5.0 | 1817161514 | h3-pg_$v | - |
| DEB | PIGSTY | 4.5.0 | 1817161514 | postgresql-$v-h3 | - |
构建
您可以使用 pig build 命令构建 pg_h3 扩展的 RPM / DEB 包:
安装
您可以直接安装 pg_h3 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
使用 pig 或者是 apt/yum/dnf 安装扩展:
创建扩展:
用法
来源:
h3 在 PostgreSQL 中提供 H3 分层六边形网格。h3index 类型保存单元格、有向边和顶点标识符,可用于将坐标映射到网格、按分辨率聚合及遍历邻域。扩展无需预加载。
升级到 4.5.0
安装匹配的文件后,在每个数据库中更新扩展。更新会自动重建受影响的 H3 btree 索引,因为旧比较器导致索引中的物理排序方向错误。迁移还可能重新计算依赖距离运算的存储生成列、重建相关索引并刷新相关物化视图。应为锁、写入和维护时间预留窗口;仅替换库文件不会执行这些操作。
若需手动安排 btree 重建,上游建议在扩展更新前删除受影响的索引,更新后重新创建。请求上述扩展更新前,先安装 4.5.0 软件包文件。
将坐标映射到单元格
PostgreSQL 点坐标顺序为 经度、纬度,单位为度。不要传入投影坐标或交换坐标轴。分辨率范围是 0 到 15。
h3.strict 默认为 false,开启后拒绝越界坐标。h3.extend_antimeridian 控制 180 度经线附近的边界处理,常见的 PostGIS 平面运算应保持 false。
核心接口
| 任务 | 函数 |
|---|---|
| 检查标识符 | h3_get_resolution、h3_get_base_cell_number、h3_is_valid_cell、h3_is_valid_index、h3_is_pentagon |
| 遍历邻域 | h3_grid_disk、h3_grid_disk_distances、h3_grid_ring、h3_grid_path_cells、h3_grid_distance |
| 改变分辨率 | h3_cell_to_parent、h3_cell_to_children、h3_cell_to_center_child、h3_compact_cells、h3_uncompact_cells |
| 覆盖区域 | h3_polygon_to_cells、h3_cells_to_multi_polygon |
| 有向边 | h3_cells_to_directed_edge、h3_directed_edge_to_cells、h3_reverse_directed_edge |
| 顶点与测量 | h3_cell_to_vertexes、h3_vertex_to_latlng、h3_cell_area、h3_edge_length、h3_great_circle_distance |
| 显式单元格分量 | h3_get_index_digit、h3_construct_cell |
4.5.0 新增通用标识符校验、显式单元格分量构造及有向边反转。五边形附近应优先使用新的环遍历接口,避免不安全变体;邻域返回行不保证顺序。距离和路径计算可能因单元格相距过远或五边形畸变失败。
运算符与索引
等值和排序支持 btree 索引,包含与相交运算使用 @>、<@ 和 &&。<-> 返回网格距离,无法计算时返回 bigint 最大值作为哨兵值;它不是以米计量的物理距离。
GiST 和 SP-GiST 运算符类仍为实验功能。涉及几何、地理、栅格及 SRID 的工作流,应使用独立的 h3_postgis 扩展。将多边形转换为单元格前先检查有效性,无效多边形可能产生未定义结果或异常庞大的输出。
这个页面对您有帮助吗?
感谢反馈,我们会据此改进这篇文档。
哪里没有解决?(可选)