改圆柱的大小和里面的填充的程序
erichongxiaojian
2010年03月23日 13:32:56
只看楼主

改圆柱的大小是平面布置中常有的事情,以下的小的程序可以很快改圆柱子的大小并且一起改掉圆柱子里面的填充的大小,只要最初填充是关联的.选择圆的时候随便圆周上一点就行拉.(defun C:ccr() (setvar "cmdecho" 0) ; 命令过程不响应 (setq en (entsel " 选取已知圆: " )) ; 要求选取一对象 (setq en_data(entget(car en))) ; 取对象属性列表

改圆柱的大小是平面布置中常有的事情,以下的小的程序可以很快改圆柱子的大小
并且一起改掉圆柱子里面的填充的大小,只要最初填充是关联的.选择圆的时候随便圆周上一点就行拉.




(defun C:ccr()
(setvar "cmdecho" 0) ; 命令过程不响应
(setq en (entsel " 选取已知圆: " )) ; 要求选取一对象
(setq en_data(entget(car en))) ; 取对象属性列表
(setq old_radlist (assoc 40 en_data)) ; 取 radius 子列表,40是表头
(setq old_rr (cdr old_radlist)) ; 取 radius
(princ "\ old radius =") (princ old_rr) ; 显示该旧圆半径值
(setq cenpt (cdr (assoc 10 en_data))) ;取得圆的圆心
(setq new_rr (getdist cenpt "\ new radius=:")) ;输入新的半径
(princ "\ new radius =") (princ new_rr)
(setq new_rad_list (cons 40 new_rr)) ;产生新的子列表
(setq en_data (subst new_rad_list old_radlist en_data));为什么无效
(setq n_radlist (assoc 40 en_data))
(setq n_rad (cdr n_radlist))
(princ "\ updated radius =") (princ old_rr)
(entmod en_data)
(prin1)
)
免费打赏
小萝卜的头
2010年03月23日 22:06:20
2楼
[code];; 练习: 动态修改圆大小
;; 备注: 仅做为练习,不实用。
(defun C:TT (/ DATA ELIST ENT GRR KEY LOOP NEWRAD OLDELIST SEL V10)
(princ "\n动态修圆大小 2010年03月23日")
(if (setq SEL (entsel "\n选择圆: "))
(progn
;;
(setq ENT (car SEL))
(setq ELIST (entget ENT))
(setq OLDELIST ELIST)
(setq V10 (cdr (assoc 10 ELIST)))
(setq LOOP t)
(while LOOP
(setq GRR (grread t 15 0))
(setq KEY (car GRR))
(setq DATA (cadr GRR))
(redraw)
(cond ((= KEY 5)
(grdraw DATA V10 1)
(setq NEWRAD (distance DATA V10))
(setq ELIST (subst (cons 40 NEWRAD)
(assoc 40 ELIST)
ELIST
)
)
(entmod ELIST)
(princ "\r圆的大小:")
(princ NEWRAD)
)
((or (= KEY 3) (= DATA 32)) (setq LOOP NIL))
((member KEY '(12 25)) (entmod OLDELIST) (setq LOOP NIL))
)
)
(redraw)
)
)
(princ
"\n作者:蔡建伟 QQ:95818608 网盘:http://carrot1983.ys168.com/"
)
(princ)
)[/code]
回复
erichongxiaojian
2010年03月24日 15:10:07
3楼
carrot Could you please drop me your MSN contact number if convenient? I appreciate your skills in autplisp programming
回复
小萝卜的头
2010年03月24日 17:27:45
4楼


Sorry.
I don't have MSN,but QQ.
And my english is poor.

Thanks for your appreciation.
回复
erichongxiaojian
2010年03月24日 17:51:35
5楼
MY QQ has been blocked so could you please drop me your email adress if convenient, I want to talk with you because I am interested in some of your work such as the moving of the rebar mark, BTW my email is erichongxj@126.com
回复
小萝卜的头
2010年03月24日 20:23:15
6楼


虽然我看的懂,但是,在中文论坛,用英语,真的很别扭。
不好意思,有什么事情,都在这里用中文讨论吧。
回复
erichongxiaojian
2010年03月25日 10:35:57
7楼
抱歉我这里敲中文的速度很慢,想买你的集中标移动程序,想谈下
回复
小萝卜的头
2010年03月25日 10:48:29
8楼

看来我英语真的不好,哈哈
“moving of the rebar mark”这个叫集中标注移动。
详我的网盘: http://carrot1983.ys168.com/
拉移随心的淘宝地址:
http://item.taobao.com/auction/item_detail-0db2-ea3b476b0207c152e5362c7b70742571.jhtml
你可以跟我的QQ邮箱联系: 95818608@qq.com 我先把程序发到你的邮箱里面。我们邮箱联系。
回复
erichongxiaojian
2010年03月25日 11:34:18
9楼
已经给你写信了
回复

相关推荐

APP内打开