加载中...
搜索中...
无匹配项
投影工厂函数

用于创建坐标投影的工厂函数。 更多...

文件

文件  projection_factories.cuh
 

函数

template<typename Coordinate, typename T = typename Coordinate::value_type>
projection< Coordinate > * cuproj::make_utm_projection (int zone, hemisphere hemisphere, direction dir=direction::FORWARD)
 为给定的 UTM 区域和半球创建 WGS84<-->UTM 投影。
 
template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection (detail::epsg_code const &src_epsg, detail::epsg_code const &dst_epsg)
 从 EPSG 代码创建投影对象。
 
template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection (std::string const &src_epsg, std::string const &dst_epsg)
 从格式为“EPSG:XXXX”的字符串 EPSG 代码创建投影对象。
 
template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection (int src_epsg, int const &dst_epsg)
 从整数 EPSG 代码创建投影对象。
 

详细描述

用于创建坐标投影的工厂函数。

这些工厂使得从多种来源创建投影更加容易。

函数文档

◆ make_projection() [1/3]

template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection ( detail::epsg_code const & src_epsg,
detail::epsg_code const & dst_epsg )

从 EPSG 代码创建投影对象。

异常
cuproj::logic_error如果 EPSG 代码描述的变换不受支持
注意
目前仅支持 WGS84 到 UTM 以及 UTM 到 WGS84 的变换,因此其中一个 EPSG 代码必须是“EPSG:4326” (WGS84),另一个必须是 UTM EPSG 代码。
模板参数
Coordinate坐标类型
参数
src_epsg源 EPSG 代码
dst_epsg目标 EPSG 代码
返回值
指向实现两个 EPSG 代码之间变换的投影对象的 unique_ptr

定义于文件 projection_factories.cuh128 行。

◆ make_projection() [2/3]

template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection ( int src_epsg,
int const & dst_epsg )

从整数 EPSG 代码创建投影对象。

异常
cuproj::logic_error如果 EPSG 代码描述的变换不受支持
注意
目前仅支持 WGS84 到 UTM 以及 UTM 到 WGS84 的变换,因此其中一个 EPSG 代码必须是 4326 (WGS84),另一个必须是 UTM EPSG 代码。
模板参数
Coordinate坐标类型
参数
src_epsg源 EPSG 代码
dst_epsg目标 EPSG 代码
返回值
指向实现两个 EPSG 代码之间变换的投影对象的指针

定义于文件 projection_factories.cuh189 行。

◆ make_projection() [3/3]

template<typename Coordinate>
cuproj::projection< Coordinate > * cuproj::make_projection ( std::string const & src_epsg,
std::string const & dst_epsg )

从格式为“EPSG:XXXX”的字符串 EPSG 代码创建投影对象。

异常
cuproj::logic_error如果 EPSG 代码描述的变换不受支持
注意
目前仅支持 WGS84 到 UTM 以及 UTM 到 WGS84 的变换,因此其中一个 EPSG 代码必须是“EPSG:4326” (WGS84),另一个必须是 UTM EPSG 代码。
Auth 字符串不区分大小写
模板参数
Coordinate坐标类型
参数
src_epsg源 EPSG 代码
dst_epsg目标 EPSG 代码
返回值
指向实现两个 EPSG 代码之间变换的投影对象的指针

定义于文件 projection_factories.cuh165 行。

◆ make_utm_projection()

template<typename Coordinate, typename T = typename Coordinate::value_type>
projection< Coordinate > * cuproj::make_utm_projection ( int zone,
hemisphere hemisphere,
direction dir = direction::FORWARD )

为给定的 UTM 区域和半球创建 WGS84<-->UTM 投影。

模板参数
Coordinate坐标类型
Coordinate::value_type坐标值类型
参数
zoneUTM 区域
hemisphereUTM 半球
dir如果为 FORWARD,创建从 UTM 到 WGS84 的投影;否则创建从 WGS84 到 UTM 的投影
返回值
指向实现所请求变换的投影对象的 unique_ptr

定义于文件 projection_factories.cuh96 行。