明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4503|回复: 22

一石二鸟——复制与画圆快捷键二合一

    [复制链接]
发表于 2011-8-21 13:46 | 显示全部楼层 |阅读模式
在cad制图中我们经常用到画圆和复制命令。复制到命令是co、cp、Ctrl+c,这三个命令使用都不是很方便,c跟o、p相隔较远,Ctrl+c有些人可能不习惯在cad中使用。如是有些人就修改快捷键,把复制改为c,画圆改为cc。有没有更好的办法呢?我现在要的是用c既可画圆也可复制,因为这两个命令都很常用。那么,以下代码即可实现:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; c快捷键,当没有选择实体是按c为画圆;当选择实体是按c为复制。
; by: ProgramFancier  2011.8.21
; Test in AutoCAD2010
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:c()
(setq ss (ssget "i")) ;将已选中的实体加入选择集
(if (= ss nil)
(command "CIRCLE") ;如果选择集为空,则执行画圆命令
(command "COPY" "M")   ;如果选择集不为空,则执行复制命令
)
(princ)
)
以上代码在 AutoCAD2010 下测试通过,在其他版本可能要稍作改动。
程序很简短,原理是在执行c命令前检查当前选择集是否为空,如果为空则执行画圆命令,如果不为空则执行复制名。要求在复制前先选择实体,这更符合我们使用复制的习惯。

评分

参与人数 1金钱 +15 收起 理由
zctao1966 + 15 很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下

本帖被以下淘专辑推荐:

  • · 收集|主题: 58, 订阅: 4
发表于 2011-8-25 11:57 | 显示全部楼层
本帖最后由 lrd1861 于 2011-8-25 11:58 编辑

老迈修改版  支持07
(defun c:c()
(setq ss (ssget "i")) ;将已选中的实体加入选择集
(if ss
    (if (> ( atof (substr (getvar "acadver") 1 4)) 17)
            (command "_.COPY" "m")   ;如果选择集不为空,则执行复制命令
            (command "_.COPY" ss "" "M")   ;如果选择集不为空,则执行复制命令
    )
    (command "_.CIRCLE") ;如果选择集为空,则执行画圆命令
)
(princ)
)
回复 支持 1 反对 0

使用道具 举报

发表于 2011-8-21 18:19 | 显示全部楼层
这样是不是多了一步 选择情况 (setq ss (ssget "i"))   的操作.
思路还是不错的.
发表于 2011-8-21 20:50 | 显示全部楼层
不习惯先选择实体。如果编成命令C,第一次回车指定圆心,第二次回车执行COPY,会不会好些
发表于 2011-8-21 21:06 来自手机 | 显示全部楼层
本帖最后由 669423907 于 2011-8-21 21:16 编辑

这个一定要顶!让CAD更智能化!
选择对象后,按 C ,再左键,能在鼠标点粘贴吗?
手机登录中.....................
发表于 2011-8-21 21:24 | 显示全部楼层
顶一下,看有没有更好的方法
发表于 2011-8-22 08:58 | 显示全部楼层
思路不错 有待完善
发表于 2011-8-23 08:37 | 显示全部楼层
思路不错,,,,,,,,,,,,,,,,,,,,,,
发表于 2011-8-23 08:39 | 显示全部楼层
顶一下,思路不错
发表于 2011-8-23 22:12 | 显示全部楼层
我试着改了一下:
(defun c:c()
(setq ss (ssget "i"))       ;将已选中的实体加入选择集
(if (= ss nil)
(command "CIRCLE")          ;如果选择集为空,则执行画圆命令
(command "COPY" ss "" "m")) ;如果选择集不为空,则执行复制命令
(princ))

效果很好!

本帖子中包含更多资源

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

x

评分

参与人数 1金钱 +10 收起 理由
zctao1966 + 10 赞一个!

查看全部评分

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-2 09:13 , Processed in 4.326016 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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