前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >比例尺与层级的转换

比例尺与层级的转换

作者头像
Freedom123
发布2024-03-29 08:27:42
770
发布2024-03-29 08:27:42
举报
文章被收录于专栏:DevOpsDevOps
代码语言:javascript
复制
double ImageTile::scale2Level(double scale) //  //比例转换为层级
{
	//实际距离
	double mapdis = 0.0254 * ((double)tilesize / 96.0)*scale;
	double x, y, x1, y1;
	ImageRowCol2Projection(m_adfGeoTransform, 0, 0, x, y);
	ImageRowCol2Projection(m_adfGeoTransform, tilesize, tilesize, x1, y1);
	double srcscale = (x1 - x) / (0.0254 * ((double)tilesize / 96.0));
	if (scale >= srcscale)
	{
		double level = mapdis / (x1 - x);
		return fabs(level)*m_adfGeoTransform[1];
	}
	else
	{
		double s = mapdis / (x1 - x);
		return fabs(s)*m_adfGeoTransform[1];
	}
	return 1;
}


double  ImageTile::level2scale(double level) //计算当前层级比例尺
{
	//return 1.0 / (0.0254 / (2 * 96));
	//地图距离
	double mapdis = 0.0254 * ((double)tilesize / 96.0);
	//实际距离
	double x, y, x1, y1;
	TDRasterCommon::ImageRowCol2Projection(m_adfGeoTransform, 0, 0, x, y);
	TDRasterCommon::ImageRowCol2Projection(m_adfGeoTransform, tilesize*level, tilesize*level, x1, y1);
	return (x1 - x) / mapdis;
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档