找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 563|回复: 0

[求助]:向NO.1和各位大虾回馈结果和新问题!

[复制链接]
发表于 2002-9-1 00:11:18 | 显示全部楼层 |阅读模式

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

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

×
//获得NO.1提供的捕捉AutoCad中鼠标移动的实时坐标(WCS)的核心代码后,
//我进行充分实践有如下问题:显示结果的X和Y坐标值与AutoCAD状态行显示
//的稍有不同,整数部分相同,小数部分不同。是否是我的程序中acutPrintf()
//函数与AutoCAD状态行显示不同步造成的?还是按鼠标的微动造成的。请NO.1
//和各位“大虾”帮忙分析一下。
//下面是AutoCAD中捕捉鼠标左键按下的WCS坐标的主要代码,后面是程序运行的
//部分结果。
void movemouse(const MSG* pMsg)
{
        switch(pMsg->message ){
                case WM_LBUTTONDOWN:
                        {
                                acedDwgPoint cpt ={ 0 , 0, 0 } ;
                                CPoint cPnt (pMsg->lParam) ;
                                acedCoordFromPixelToWorld (cPnt, cpt) ; //象素点变WCS
                                ads_point pt ={ cpt[X], cpt[Y], 0 } ;
                       
                                acutPrintf("x=%f,y=%f\n",pt[X],pt[Y]);  //显示坐标
                        }
                        break;
                case WM_KEYDOWN:
                        acedRemoveWatchWinMsg(movemouse);  //按任意键退出消息监视钩子。
                default:
                        break;

        }
}
//
void addhookfn()
{
        acedRegisterWatchWinMsg(movemouse);

}

//程序运行结果
x=224.688605,y=126.627907
x=225.264730,y=127.203489
x=225.264730,y=129.505814
x=225.840854,y=130.081396
x=225.840854,y=130.656977
x=225.840854,y=131.232558
x=225.840854,y=131.808140
x=225.840854,y=132.383721
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-15 21:00 , Processed in 0.380890 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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