当前位置:   article > 正文

地图坐标2D映射3D地图场景中_3d位置映射到地图

3d位置映射到地图

1.采集数据的地图mapData(名称),地图 长、宽: L,W
2.unity 需要一张地图map(名称) 长、宽:L/N,W/N (N 是缩放系数,和数据采集的地图保持比例 不能压缩变形)

unity 中的地图是3D模型 还是是2D平面 分两种情况

处理3D模型:
1. unity 中新建Canvas
2. 在3DMapCanvas下新建Panel命名为mapPanle 将map添加mapPanel的Image组件,同时设置mapPanel 的
Width=L/N,Height=W/N 即 分别对应map图片的长、和宽, 在mapPanel下新建imge命名为point,设置锚点为左上角
3.设置3DMapCanvasRenderMode :WorldSpace
4.找到3D地图模型,将3DMapCanvas位置和旋转以及缩放调整,保持和3D模型横截面重合。
5.注意 3DMapCanvas 和 3D地图模型可以放置统一的根节点下,根节点 缩放保持为1
6.界面处理完毕。
7.处理坐标 :平面坐标映射3D坐标
图片坐标系是左上角(0,0) 右下角(width,hight)

unity UI坐标系 可以根据自身锚点设置

例如Panle 作为地图容器 设置锚点任意一般设置中心,子节点point(width=0,hight=0) 设置锚点在左上角

此时Panel坐标系 左上角(0,0)右下角(width,-hight)

处理分三个步骤转换:
步骤一 :在mapData上采集的点source=(x,y)
步骤二 : 映射到缩放后的map地图上的点mapSource=(source.x/N,source.y/N)
步骤三:映射到mapPanel上point的anchoredPosition=(mapSource.x,-mapSource.y)
此时 平面地图坐标 映射到3D地图完毕

8.处理坐标 :平面坐标映射unity2D坐标

图片坐标系是左上角(0,0) 右下角(width,hight)

unity UI坐标系 可以根据自身锚点设置

例如Panle 作为地图容器 设置锚点任意一般设置中心,子节点point(width=0,hight=0) 设置锚点在左上角

此时Panel坐标系 左上角(0,0)右下角(width,-hight)

处理分三个步骤转换:
步骤一 :在mapData上采集的点source=(x,y)
步骤二 : 映射到缩放后的map地图上的点mapSource=(source.x/N,source.y/N)
此时 平面地图坐标 映射到2D地图完毕

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/91646
推荐阅读
相关标签
  

闽ICP备14008679号