哪位大神能不能帮忙开发个复杂的分图程序!!!急,在线等
本帖最后由 humans23 于 2018-9-13 10:55 编辑介绍下,一张大图里有很多有编号的零件,我要做的是手动把这些有编号的零件全部另存出来,并用编号字母前的数字命名保存。 比如我要编号1234B-42654这个零件,
我的手动操作是:1.先用查找find,搜索1234B,并定位
2.定位后,窗选零件,用TXTEXP命令把字体炸开(注意此命令不能大批量使用,且不能缩放太小使用,否则炸开的文字线条是一条直线或者字体变形)
3.然后再窗选,用WB命令,1234命名保存,完毕这些零件编号取自Excel中,图形乱序排列,只得一个一个搜索,我的理想程序是通过Excel中的编号能不能分图,或则是给出图形中心坐标,把图中字体分解并以字母前的数字命名保存。如有大神觉得能实现,具体细节请QQ332369043联系我
Try this
(defun dxg (code ele)
(cdr (assoc code (entget ele)))
)
(Defun C:Try ()
(setq ss (ssget "X" '((1 . "J*B-*")))
Dir (GetVar "DWGPREFIX")
HH1 '(500 450)
HH2 '(1705 450)
IDX-1
)
(While (setq ee (ssname ss (setq idx (1+ idx))))
(setq pt (dxg 10 ee)
p1 (mapcar '- pt HH1)
p2 (mapcar '+ pt HH2)
Tmp (ssget "C" p1 p2)
txt (dxg 1 ee)
txt (substr txt 2 4)
)
(command "Wblock" (strcat Dir txt) "" "non" pt Tmp "")
)
) 急得话上例图,用钱砸。 mikewolf2k 发表于 2018-9-12 15:00
急得话上例图,用钱砸。
嗯啊,就不知道什么价位呀。你看看这个样图,可以实现吗。
怎么联系楼主 QQ332369043{:1_1:} 能不能发一份想要的结果图 纵横八方 发表于 2018-9-12 16:48
能不能发一份想要的结果图
结果图是取B字母前的数字命名
Andyhon 发表于 2018-9-12 19:29
Try this
(defun dxg (code ele)
……6666666,长老,此程序能不能再改一下,能不能把分出来的图字体炸成线条 ;;; 替換如下
(Defun C:Try ()
(SetVar 'CmdEcho 0)
(setq ss (ssget "X" '((1 . "J*B-*")))
Dir (GetVar "DWGPREFIX")
HH1 '(600 500)
HH2 '(1700 500)
IDX-1
)
(While (setq ee (ssname ss (setq idx (1+ idx))))
(setq pt (dxg 10 ee)
p1 (mapcar '- pt HH1)
p2 (mapcar '+ pt HH2)
txt (dxg 1 ee)
txt (substr txt 2 4)
ff (strcat Dir txt)
)
(command "Zoom" "w" p1 p2)
(setq Tmp (ssget "W" p1 p2 '((0 . "*TEXT"))))
(command "WMFOUT" ff Tmp "")
(acet-wmfin ff)
(vl-file-delete (strcat ff ".wmf"))
(command "Erase" Tmp "")
(setq Tmp (ssget "C" p1 p2))
(command "Wblock" ff "" "non" pt Tmp "")
)
)
页:
[1]