[急求]自动识别两个半圆及自动缩放
如上图,我现在有大量的这种东西要进行缩放,但不是块,圆也是两个半圆拼起来的。
我的要求是:
1、能够批量进行;
2、能够识别两个半圆拼起来的这个圆,并对这个圆以及其内部的内容进行缩放,缩放基点是这个原因的圆心;
3、要求对每个这样的元素分别缩放;
4、缩放系数先定为2,如果你能提供lsp文件的画我自己来改也行。
急用急用。大神们出手帮帮忙。
看这样子好像是打散的圆环(dount),急用就请到我的网络U盘去下载一个CDN.lsp试试,不保证成功,但可以一试,在家里,手上东西不全,程序就不写了。
操作步骤:
先用PEdit的M模式把这些半圆连接成整的多义线(Pe-y-j-c),然后使用cdn.lsp。
ll_j 发表于 2013-3-24 19:50 static/image/common/back.gif
看这样子好像是打散的圆环(dount),急用就请到我的网络U盘去下载一个CDN.lsp试试,不保证成功,但可以一试 ...
额。。。这样的话有点慢了。。我一个个sc也可以了。。。啊哦 试试我的组合物体选择 yjr111 发表于 2013-3-24 22:03 static/image/common/back.gif
试试我的组合物体选择
?????长老,具体呢? yjr111 发表于 2013-3-24 22:03 static/image/common/back.gif
试试我的组合物体选择
找到了您的组合物体选择,但是:1、不能同时选择圆内的元素,2、不能选择缩放基点 yjr111 发表于 2013-3-24 22:03 static/image/common/back.gif
试试我的组合物体选择
不过能很大程度上提高我的效率,,非常感谢 yjr111 发表于 2013-3-24 22:03 static/image/common/back.gif
试试我的组合物体选择
找到过您发布源码的那个帖子,但是好像已经找不到下载的地方了么 本帖最后由 zml84 于 2013-4-30 14:31 编辑
;;;问题来源:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=100648;;;功能:两对扣半圆识别
;;;日期:zml84 于 2013-04-30
(defun c:tt ()
;;1 提取圆弧信息
(setq lst '()
i 0
)
(if (setq ss (ssget '((0 . "ARC"))))
(repeat (sslength ss)
(setq en (ssname ss i)
ent (entget en)
)
(setq pt (cdr (assoc 10 ent))
r (cdr (assoc 40 ent))
lst (cons (list pt r en) lst)
)
(setq i (1+ i))
)
)
;;(princ lst)
;;2 成对匹配
(setq lst2 '())
(while lst
(setq lst_new '()
tmp (car lst)
)
(foreach x (cdr lst)
(if (and (equal (car x) (car tmp) 1e-4)
(equal (cadr x) (cadr tmp) 1e-4)
)
(setq tmp (append tmp (cddr x)))
(setq lst_new (cons x lst_new))
)
)
(setq lst2 (cons tmp lst2)
lstlst_new
)
)
;;(princ lst2)
;;3 缩放操作
(command "_.undo" "be")
(foreach tmp lst2
(setq pt (car tmp)
r(cadr tmp)
)
(setq pt(trans pt 0 1)
pt1 (polar pt (* 0.25 pi) r)
pt2 (polar pt (* 1.25 pi) r)
)
(if (setq ss (ssget "c" pt1 pt2 '((0 . "text"))))
(progn
(foreach en (cddr tmp)
(ssadd en ss)
)
(command "SCALE" ss "" "non" pt 2)
)
)
)
(command "_.undo" "e")
;;
(princ)
) zml84 发表于 2013-4-30 14:25 static/image/common/back.gif
感谢回复。但是我试了一下,貌似不能缩放呢,,不知是何原因。。。
页:
[1]