找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 857|回复: 11

[已解决] 不用Command如何旋转图元或选择集?【已解决】

[复制链接]

已领礼包: 201个

财富等级: 日进斗金

发表于 2020-12-31 13:44:08 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 a117034423 于 2021-1-9 10:49 编辑

目前已知是xdrx_entity_rotate
还有其他办法吗?
用command 关闭对象捕捉 布置为何,有时会出错
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 19个

财富等级: 恭喜发财

发表于 2020-12-31 16:21:57 | 显示全部楼层
用矩阵 搜索 论坛, 去看看 矩阵变换
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2020-12-31 16:27:15 | 显示全部楼层
【越飞越高讲堂2】用LISP论矩阵
27 个回复 - 10031 次查看
用LISP论矩阵矩阵的LISP程序,国内讨论的比较少, 而国外的研究比较深入。 经过长时间的收藏和探索,我综合成了这篇帖子。 这个帖子里面的函数主要是跟CAD 相关。附件包含了本帖完整的lisp代码,还有测试样例。 ...

矩阵旋转图元的方法,这样么写对么
20 个回复 - 422 次查看
刚接触矩阵,试着写了一个动态拖动旋转的联系,总是感觉写的太繁琐求指导一下,有什么其他好方法。我知道有封装的函数xdrx_drag_rotate 只是针对这个练习
2017-9-2 11:26 - brainstorm - XDRX_API技术支持


矩阵、向量在计算机图形学中的应用
25 个回复 - 7831 次查看
矩阵、向量在计算机图形学中的应用
2013-4-8 11:34 - XDSoft - A/VLISP

[测试]:XDAPI矩阵应用示例之自由缩放旋转。
5 个回复 - 1193 次查看

2003-2-21 23:48 - eachy - A/VLISP



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

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2020-12-31 16:29:30 | 显示全部楼层
[API应用]:[学习心得]XDAPI中几个矩阵类函数测试
4 个回复 - 1050 次查看
XDAPI中几个矩阵类函数测试 用两个单位矩阵测试:2D和3D矩阵 _$ (setq mat2 (xdrx_matrix_identity 2)) ((1.0 0.0 0.0) (0.0 1.0 0.0) (0.0 0.0 1.0)) _$ (setq mat3 (xdrx_matrix_identity 3)) ((1.0 0.0 ...
2003-3-5 11:33 - eachy - XDRX_API技术支持

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

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2020-12-31 16:42:20 | 显示全部楼层

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

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2020-12-31 16:49:45 | 显示全部楼层
构建旋转变换矩阵,然后作用到实体上

下面是实体绕自身中心点旋转的示例代码

  1. (defun c:tt1 ()
  2.   (if (and (setq rot (getreal "\n旋转角度<退出>:"))
  3.            (setq rot (xdrx-math-dtr rot))
  4.            (setq ss (xdrx-ssget "\n旋转原地旋转的对象<退出>:"))
  5.       )
  6.     (progn
  7.       (mapcar '(lambda (x)
  8.                  (setq cen (xd::geom:get9pt x 5)
  9.                        mat (xdrx-matrix-setrotation rot '(0 0 1) cen)
  10.                  )
  11.                  (xdrx-entity-transform x mat)
  12.                )
  13.               (xdrx-pickset->ents ss)
  14.       )
  15.     )
  16.   )
  17.   (princ)
  18. )


点评

谢谢老大的代码 道理我是懂了,可是是什么原因导致 rotate和vla-rotate有时旋转会出错呢?  详情 回复 发表于 2020-12-31 21:42
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2020-12-31 21:42:03 | 显示全部楼层
marting 发表于 2020-12-31 16:49
构建旋转变换矩阵,然后作用到实体上

下面是实体绕自身中心点旋转的示例代码

谢谢老大的代码 道理我是懂了,可是是什么原因导致 rotate和vla-rotate有时旋转会出错呢?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2020-12-31 21:56:06 | 显示全部楼层
a117034423 发表于 2020-12-31 21:42
谢谢老大的代码 道理我是懂了,可是是什么原因导致 rotate和vla-rotate有时旋转会出错呢?

你的代码?
出错是什么现象尼?
你的本意是什么,详细的说清楚下,最好截图

点评

新年快乐了老大,bug我都找到了,谢了  详情 回复 发表于 2021-1-1 00:03
老大 你不反问 我还真没看出来 生成后旋转没加判定条件  详情 回复 发表于 2020-12-31 22:36
我在做等分凸凹直角多边形 如果 多边形 与X轴夹角不是0 90 180 的话 我想先把矩形转到水平 然后等分完 再旋转回去 问题就出在 有时 旋转就出毛病 找不出原因 转没了 捕捉关了,而且也确认了是WCS 偶尔就出  详情 回复 发表于 2020-12-31 22:26
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2020-12-31 22:26:18 | 显示全部楼层
marting 发表于 2020-12-31 21:56
你的代码?
出错是什么现象尼?
你的本意是什么,详细的说清楚下,最好截图

我在做等分凸凹直角多边形
如果 多边形 与X轴夹角不是0 90 180 的话
我想先把矩形转到水平
然后等分完 再旋转回去

  1. (if (not (or (equal (abs (- (setq ang1 (angle (car mod0) (cadr mod0))) pi)) 0 1e-5)
  2.                (equal (abs (- ang1 pi)) (/ pi 2) 1e-5)
  3.           ))
  4.       (progn
  5.       (setq strpt (car mod0)) ;旋转点坐标
  6.       (vla-Rotate (vlax-ename->vla-object yy) (vlax-3d-point strpt) (- (* pi 2) ang1))
  7.       (setq mod0 (vl-remove nil (mapcar '(lambda (x) (if (= (car x) 10) (cdr x))) (entget yy))))
  8.       );旋转判断函数,若不为正交则旋转
  9.       )
  10. ;等分完之后旋转
  11. (repeat (setq xznn (sslength bty))
  12.             (vla-Rotate (vlax-ename->vla-object (ssname bty (setq xznn (1- xznn)))) (vlax-3d-point strpt) ang1))

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

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2020-12-31 22:36:02 | 显示全部楼层
marting 发表于 2020-12-31 21:56
你的代码?
出错是什么现象尼?
你的本意是什么,详细的说清楚下,最好截图

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

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2021-1-1 00:03:57 | 显示全部楼层
marting 发表于 2020-12-31 21:56
你的代码?
出错是什么现象尼?
你的本意是什么,详细的说清楚下,最好截图

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

使用道具 举报

已领礼包: 201个

财富等级: 日进斗金

 楼主| 发表于 2021-1-3 00:19:59 | 显示全部楼层
谢谢了老大,矩阵 真是个好东西
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 08:48 , Processed in 0.199278 second(s), 50 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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