网络能力

7.0 新版功能.

项目7.0已经引入,根据 项目RFC 4:远程访问网格和GeoTIFF网格 ,处理未安装在执行PROJ的本地计算机上的网格文件的能力。

这样可以透明地下载执行坐标变换所需的栅格部分。

土工格栅CDN

可通过网络传送访问(默认情况下通过CDN)文件https://cdn.proj.org,包含 大地TIFF网格(GTG) 由镜像和管理的数据集https://github.com/OSGeo/PROJ-data/GitHub项目。CDN中的文件设计用于PROJ 7或更高版本,但鼓励任何希望使用CDN进行转移支持的软件项目参与该项目并利用CDN。

如何启用网络功能?

此功能假定项目是根据 libcurl ,并且用户授权网络访问。

可以通过多种方式授权网络访问:

  • 启用/取消注释 network = on 生产线 proj.ini

  • 定义 PROJ_NETWORK 环境变量设置为ON

  • 或使用 proj_context_set_enable_network() 使用一个 enabled = TRUE 价值。

备注

而不是使用 libcurl 实现时,使用projapi的应用程序可以通过具有 proj_context_set_network_callbacks() . 启用网络使用仍然必须使用上述方法之一。

端点设置

如果启用此选项,并且在其中的各个位置中找不到网格 resource files are looked for ,PROJ将尝试从远程服务器加载文件,默认为https://cdn.proj.org网址 proj.ini . 此位置可以使用 PROJ_NETWORK_ENDPOINT 环境变量或 proj_context_set_url_endpoint() .

高速缓存

为了避免重复访问网络,将下载的网格块本地缓存作为SQLite3数据库, cache.db ,存储在 PROJ user writable directory

此本地缓存在默认情况下处于启用状态(可以在中更改) proj.ini 或与 proj_grid_cache_set_enable() ). 缓存的默认最大大小为300 MB,这是写入时可用网格总大小的一半以上。这种尺寸也可以定制 proj.ini 或与 proj_grid_cache_set_max_size()

下载API

当不需要按需加载网格时,projapi还提供了在 PROJ user writable directory 通过使用 proj_is_download_needed()proj_download_file() 功能。

下载实用程序

projsync公司 是下载资源文件的工具。

镜像

如果您有能力,建议您通过AWS S3命令行镜像网格:

aws s3 sync s3://cdn.proj.org .

如果无法直接访问S3,还可以使用wget本地镜像数据:

wget --mirror https://cdn.proj.org/

致谢

s3://cdn.proj.orgbucket由 Amazon Public Datasets program . CDN服务由AWS公共数据集团队通过 CloudFront