找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 987|回复: 5

[源码]对象复制旋转

[复制链接]
发表于 2009-7-3 16:01:13 | 显示全部楼层 |阅读模式

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

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

×

  1. (princ "\n[carrot1983][7/3/09]★复制旋转命令: CR")
  2. (defun C:CR (/ LAST_PT NEW_SSALL SS SSALL SSP)
  3.   (princ "\n★选择对象复制旋转")
  4.   (if (and (setq SSALL (ssget "X"))
  5.            (setq SS (ssget))
  6.       )
  7.     (progn
  8.       (command "_.COPY" SS "")
  9.       (while (= (getvar "CMDNAMES") "COPY")
  10.         (command PAUSE)
  11.       )
  12.       (if (and (setq LAST_PT (getvar "LASTPOINT"))
  13.                (setq NEW_SSALL (ssget "X"))
  14.           )
  15.         (progn
  16.           (command "_.SELECT" NEW_SSALL "R" SSALL "")
  17.           (setq SSP (ssget "P"))
  18.           (command "_.ROTATE" SSP "" "_NON" LAST_PT)
  19.         )
  20.       )
  21.     )
  22.   )
  23.   (princ)
  24. )

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

使用道具 举报

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

使用道具 举报

发表于 2009-7-11 21:38:29 | 显示全部楼层
我用了下,有时候好像速度有点慢。是不是因为选择集“X”所有图形,全选了的原因?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2009-7-20 10:10:17 | 显示全部楼层
;;;************************
;;;No.9-3 复制并旋转 函数  
;;;************************
(defun C:CR (/ SS1        newSS xPtnewEntName XPT)
  (prompt "\n【提示】选择复制并旋转对象...")
  (if (and (setq SS1 (ssget))
                                         (setq xPt (getpoint "\n指定基点:")))
    (progn
                        (while T
              (setq newEntName (entlast))
              (princ "\n指定目标点:")
              (command "copy" SS1 "" xPt pause)
              (setq newSS (ssadd))
              (while (setq newEntName (entnext newEntName)) (ssadd newEntName newSS))
              (princ "\n指定旋转角度或 [参照(R)]:")
              (command "rotate" newSS "" "non" "@" pause)
                        );end_while T
    );end_progn
  );end_if
);end_defun
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 20:37 , Processed in 0.323986 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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