找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2744|回复: 11

[求助] 矩形随光标移动

[复制链接]

已领礼包: 1个

财富等级: 恭喜发财

发表于 2018-11-5 14:02:37 | 显示全部楼层 |阅读模式

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

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

×
思路是:
1.获得光标十字丝的坐标
2.以坐标为中心,生成一个矩形(大小目前不管,就是定值)
3.鼠标移动时,矩形也随之移动

感觉这个需求有点像把拾取框放大一点,随鼠标移动。

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

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2018-11-5 14:53:33 | 显示全部楼层
http://bbs.xdcad.net/thread-2662-1-1.html 根据晓东在这里的回复,获取到的坐标总是与CAD左下角显得坐标有大概 2 个单位的偏差?为什么咧

点评

换下面代码试试 处理什么消息自己改 case WM_LBUTTONDOWN: CView * myDwgView = acedGetAcadDwgView(); acedDwgPoint wcsPt; CPoint winPt(LOWORD(pMsg->lParam), HIWORD(pMsg->lParam)); if  详情 回复 发表于 2018-11-5 15:44
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2018-11-5 15:25:51 | 显示全部楼层
1、AcEdInputPointManager 用点监视器
2、acedGrRead
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2018-11-5 15:44:03 | 显示全部楼层
__april 发表于 2018-11-5 14:53
http://bbs.xdcad.net/thread-2662-1-1.html 根据晓东在这里的回复,获取到的坐标总是与CAD左下角显得坐标 ...

换下面代码试试
处理什么消息自己改

case WM_LBUTTONDOWN:
                CView * myDwgView = acedGetAcadDwgView();

                        acedDwgPoint wcsPt;
                        CPoint winPt(LOWORD(pMsg->lParam), HIWORD(pMsg->lParam));

                        if (myDwgView->m_hWnd == pMsg->hwnd)
                        {
                                CPoint ptMouse;
                                GetCursorPos(&ptMouse);
                                ScreenToClient(adsw_acadDocWnd(), &ptMouse);
                                acedCoordFromPixelToWorld(ptMouse, wcsPt);
                        }
                break;

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2018-11-5 15:55:55 | 显示全部楼层
XDSoft 发表于 2018-11-5 15:44
换下面代码试试
处理什么消息自己改

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2018-11-5 19:03:11 | 显示全部楼层
XDSoft 发表于 2018-11-5 15:25
1、AcEdInputPointManager 用点监视器
2、acedGrRead

并不需要拖动,只是生成一个矩形后,随光标移动而已,这个点监视器是不是需要鼠标点击?

点评

(xd::drag:simplemove (entlast) "\n插入点:" 5 t) 这个就是点监视器实现的 [attachimg]81447[/attachimg]  详情 回复 发表于 2018-11-5 20:30
移动不就是拖动嘛  详情 回复 发表于 2018-11-5 20:21
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-11-5 20:21:41 | 显示全部楼层
__april 发表于 2018-11-5 19:03
并不需要拖动,只是生成一个矩形后,随光标移动而已,这个点监视器是不是需要鼠标点击?

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2018-11-5 20:30:31 | 显示全部楼层
__april 发表于 2018-11-5 19:03
并不需要拖动,只是生成一个矩形后,随光标移动而已,这个点监视器是不是需要鼠标点击?

(xd::drag:simplemove (entlast) "\n插入点<退出>:" 5 t)

这个就是点监视器实现的

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2018-11-7 08:29:50 | 显示全部楼层
newer 发表于 2018-11-5 20:30
(xd::drag:simplemove (entlast) "\n插入点:" 5 t)

这个就是点监视器实现的

谢谢你!
按照点监视器的方法实现了。但是如你的图一样,鼠标移动的时候,矩形跟随似乎有一定延迟

点评

有延迟正常,如果是很大的图纸,你整体拖动,延迟肯定更大,因为要刷新显示他们啊,如果你想更快,自己画向量。  详情 回复 发表于 2018-11-7 08:57
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2018-11-7 08:57:45 | 显示全部楼层
__april 发表于 2018-11-7 08:29
谢谢你!
按照点监视器的方法实现了。但是如你的图一样,鼠标移动的时候,矩形跟随似乎有一定延迟

有延迟正常,如果是很大的图纸,你整体拖动,延迟肯定更大,因为要刷新显示他们啊,如果你想更快,自己画向量。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

 楼主| 发表于 2018-11-8 10:20:37 | 显示全部楼层
本帖最后由 __april 于 2018-11-8 10:25 编辑
newer 发表于 2018-11-7 08:57
有延迟正常,如果是很大的图纸,你整体拖动,延迟肯定更大,因为要刷新显示他们啊,如果你想更快,自己画 ...

谢谢你!
当坐标系并不是常规那种,而是有45度的时候,矩形无法生成也许是无法显示
like:C:\Users\aaa\Desktop\coord.PNG
coord.PNG
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 13个

财富等级: 恭喜发财

发表于 2018-11-26 19:03:52 | 显示全部楼层
CAD图纸大师就有这个功能(插入楼梯、柜子等),这几天要宣传。 等宣传完了,把开发环境建立起来,就给你关键代码。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 11:08 , Processed in 0.530440 second(s), 59 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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