Posts for: #Timezone

tzf 的演进过程

tzf 及相关项目的基础开发工作基本稳定了,在之前的文章零星有些开发和设计过程的资料:

这一篇是最终的总结,从项目的启动到逐步优化和演进的过程。

Read more

tzfpy Rust 重写🎉

书接上文:

经过一个周末的各种折腾,终于用 Rust 实现了 tzf 的功能,代码在 ringsaturn/tzf-rs

又用了晚上跑了多次 CI 将 Python 移植也重写出来了 ringsaturn/tzfpy

tzfpy 只要安装 >= 0.11.0 版本的就是用纯 Rust 实现的,在这个版本号之前都是 Python+CGO 实现的。 API 参数和之前一样,没有变化,但是索引命中的时候只需要 3~4 微妙,之前 Python+Go 需要 16 微妙。 最慢的单次查询 300 多微妙,timezonefinder(用 C 实现的多边形算法版本) 最慢的时候会有 1000 多微妙。

Read more

tzf 预览图制作

上周花了点时间学习下 mbtiles 文件格式,顺手给 tzf 项目制作了一个 social preview media:

制作流程很简单:

# 根据 GeoJSON 制作 .mbtiles 文件
tippecanoe -o timezone.mbtiles -l Timezons -z7 combined-with-oceans.fmt.json
mbview ./timezone.mbtiles

网页里调整合适的角度,截图,调整下图片的分辨率即可。

Read more