找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1129|回复: 5

[讨论]:大地坐标与cad世界坐标的转化

[复制链接]
发表于 2004-6-10 21:07:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
已知cad两点坐标(x1,y1),(x2,y2)及对应的大地坐标(E1,N1),(E2,N2),怎样将任一大地坐标点(E,N)转化为cad对应的坐标及反之将cad内任一坐标(x,y)转化为对应的大地坐标。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-6-11 10:55:10 | 显示全部楼层
坐标的转换主要是坐标的平移、旋转、及缩放。
通过对两点长度比较可知缩放的比例。
通过两直线的夹角可计算出旋转的角度。
通过两点间的坐标差可得出平移的坐标。
得出这些转换矩阵后就可以进行转换和逆转换
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-6-11 14:47:10 | 显示全部楼层
谢谢回复,我已编程实现。源码如下:
void CTestDlg::OnButtonJs4()
{
        // TODO: Add your control notification handler code here
           double pi = 3.1415926535;
           double n,e,x,y,jj;
           float ax,ae;
// m_x1,m_y1 m_x2,m_y2,m_e1,m_n1,m_e2,m_n2 为两点的cad坐标及对应的大地坐标               
           n=(m_n2-m_n1);
           e=(m_e2-m_e1);
           x=(m_x2-m_x1);
           y=(m_y2-m_y1);

       m_k=sqrt((n*n+e*e)/(x*x+y*y));

           ax=atan2(y,x);
           ae=atan2(n,e);
           jj=(ax-ae);
           m_jj=(ax-ae)*180.0/pi;   

       m_ydx=m_x1-(cos(jj)*m_e1-sin(jj)*m_n1)/m_k;
       m_ydy=m_y1-(cos(jj)*m_n1+sin(jj)*m_e1)/m_k;
//以下计算坐标互换          
       m_x=m_ydx+(cos(jj)*m_e-sin(jj)*m_n)/m_k;
       m_y=m_ydy+(cos(jj)*m_n+sin(jj)*m_e)/m_k;

   m_e=m_k*(cos(jj)*(m_x-m_ydx)+sin(jj)*(m_y-m_ydy));
       m_n=m_k*(-sin(jj)*(m_x-m_ydx)+cos(jj)*(m_y-m_ydy));

           UpdateData(FALSE);
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-6-11 14:54:26 | 显示全部楼层
我一直被这个问题捆饶,请问:具体怎么操作?不用list.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-10-9 14:22:06 | 显示全部楼层
还有没简单的方法啊,我现在急需要解决啊,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2个

财富等级: 恭喜发财

发表于 2004-10-10 15:20:02 | 显示全部楼层
大地坐标转换应使用高斯公式,不是简单的平移旋转!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-22 04:22 , Processed in 0.266879 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表