GIS:如何使用.prj(WKT)投影调整图层大小? (地理坐标系)
简而言之:
如何参数化 .prj WKT 文件以便我可以执行 7 点转换 (wiki)。我知道 false_easting 和 false_northing 参数如何工作,但如何调整比例?我的意思不是scale_factor'
这就是问题描述:
我将交通网络(矢量图层)保存在非GIS环境(交通建模软件)中。网络由节点(点)和折线(道路链接)组成。它主要是从随机背景完成的,无论任何投影、坐标等。
我需要为网络设置适当的投影。
我可以访问 .prj 文件(如果我处于 WGS84 投影中,我可以切换到任何其他投影)
,这就是我正在尝试的:
我尝试 7 点 Helmert 变换 (http://proj.maptools.org/gen_parms.html) 。我在 .prj 文件中使用 towgs84 变换作为 WKT 参数,其中假设旋转矩阵为零(我可以这样做吗?)并且我仅计算 delta_x、delta_y 和比例参数。
然而它不会起作用。这是我的 .prj , TOWGS84 中的参数不会影响转换:
PROJCS["UTM 17 (WGS84) in northern hemisphere.",
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563],
TOWGS84[0,0,0,0,0,0,100000000000000000000000]],
PRIMEM["Greenwich",0],
UNIT["DMSH",0.0174532925199433],
AXIS["Lat",NORTH],
AXIS["Long",EAST],
PROJECTION["Transverse_Mercator"],
PARAMETER["latitude_of_origin",0],
PARAMETER["central_meridian",0],
PARAMETER["scale_factor",1],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0]]
所以我尝试使用 false_norting
和 false_easting
参数,这些参数效果很好,并且正确地转换了我的网络,但是:
它不会改变我的网络规模,只会改变位置。那么如何使用 .prj 文件重新调整我的网络?
感谢您的任何提示
Briefly:
How to parametrize .prj WKT file so that I can perform 7 point tranformation (wiki). I know how false_easting and false_northing
params work, but how can I adjust scale? I do not mean scale_factor'
That's the problem description:
I have transportation network (vector layer) saved in non-GIS environment (transport modeling software). Network consists of nodes (points) and polylines (road links). It's done mostly from random backgrounds, regardless any projection, coordinates, etc.
I need to set appropriate projection for the network.
I have accesss to .prj files (if I'm in an say WGS84 projection I can switch to any other projection)
So that's what I'm trying:
I try 7 point Helmert Transformation (http://proj.maptools.org/gen_parms.html). I use towgs84 transformation as a WKT param in .prj file, where I assume that rotation matrix is zero (can I do so?) and I calculate only delta_x, and delta_y, and scale param.
However it will not work. This is my .prj , params in TOWGS84 do not affect transformation:
PROJCS["UTM 17 (WGS84) in northern hemisphere.",
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.257223563],
TOWGS84[0,0,0,0,0,0,100000000000000000000000]],
PRIMEM["Greenwich",0],
UNIT["DMSH",0.0174532925199433],
AXIS["Lat",NORTH],
AXIS["Long",EAST],
PROJECTION["Transverse_Mercator"],
PARAMETER["latitude_of_origin",0],
PARAMETER["central_meridian",0],
PARAMETER["scale_factor",1],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0]]
So I tried to use false_norting
and false_easting
params, and those work good, and transform my network proprely, BUT:
It will not chcange scale of my network, only position. So how can I rescale my network using .prj file?
Thanks for any hints
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题已解决: 'scale_factor' 和
UNIT['Meter',%scale_factor]
仅在数据发生变化时才起作用。实际上在 gis.stackexchange.com/ 这里给我带来了解决方案。
无论如何:.prj 文件、地理坐标系、proj4js、EPSG 等的记录都很薄弱:没有 API、没有教程、没有示例、没有参考资料。
IE
1)没有任何关于 EPSG 数据库代码是什么以及应该选择哪些代码的直接描述。
2)我应该选择什么+proj参数来定义投影
3)如何创建.prj以及特定.prj文件元素的参数是什么。
糟糕的编程区!
Problem solved: both 'scale_factor' , and
UNIT['Meter',%scale_factor]
works only if datum changes.Actually comments at the same problem at gis.stackexchange.com/ here brought me to solution.
Anyway: .prj files, Geo Coordinate Systems, proj4js, EPSG etc. are vary weakly documented: no API, no tutorials, no examples, no refernces.
i.e.
1)not any straighforward description of what EPSG database codes are, and which should be chosen.
2)what +proj parameters should I choose to define projection
3)how to create .prj and what are parameters of specific .prj file elements.
awful programming area!