AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

Join the forum, it's quick and easy

AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~
AutoCAD顧問
Would you like to react to this message? Create an account in a few clicks or log in to continue.
[討論]看不懂的LISP Ioaoe110[討論]看不懂的LISP 2020-310[討論]看不懂的LISP Oiu15010[討論]看不懂的LISP 2020-211[討論]看不懂的LISP Ia15010[討論]看不懂的LISP Aizyao10[討論]看不懂的LISP Uos15010[討論]看不懂的LISP BPl3tjj[討論]看不懂的LISP Ziao1510
[討論]看不懂的LISP Aoe15010[討論]看不懂的LISP Oo-2-110[討論]看不懂的LISP Zuoiy_10[討論]看不懂的LISP Aizyao11[討論]看不懂的LISP Iyb_1510[討論]看不懂的LISP Aoe1-111[討論]看不懂的LISP Uos15011[討論]看不懂的LISP Aoe2da10[討論]看不懂的LISP Aoe2da11[討論]看不懂的LISP Aoe10

[討論]看不懂的LISP

2 posters

向下

[討論]看不懂的LISP Empty [討論]看不懂的LISP

發表 由 Alanlam 2012-09-12, 22:02

(defun ax:RenameBlock (doc bn nn / layout i)
(vlax-for layout (vla-get-layouts doc)
(vlax-for i (vla-get-block layout)
(if (and
(= (vla-get-objectname i) "AcDbBlockReference")
(= (strcase (vla-get-name i)) (strcase bn))
)
(vla-put-name i nn)
)
)
)
)


有大大可以解釋一下
Alanlam
Alanlam
一般會員
一般會員

文章總數 : 24
年齡 : 35
來自 : 中國
職業 : 學生
愛好 : 足球
個性 : 害羞
使用年資 : 4
使用版本 : 2012
經驗值 : 4430
威望值 : 0
注冊日期 : 2012-07-23
男 雙子座 龍

回頂端 向下

[討論]看不懂的LISP Empty 回復: [討論]看不懂的LISP

發表 由 pizg 2012-09-14, 11:03

ax:RenameBlock 是用來置換圖塊參考物件的.
我們都知道重新定義圖塊可以快速更換圖面中的圖塊圖形,
這個函式類似這樣的功能.

它須要三個參數 doc bn nn
doc 文件物件
bn 來源圖塊參考名稱
nn 目標圖塊參考名稱

使用這個函式時要注意其目標圖塊參考名稱必須是既存於圖面中才行.
下列是該函式的用法

;;2012-09-14 by PizG
(defun C:ReplaceBlock(/ doc ent bn nn)
(vl-load-com)
(setq doc (vla-get-ActiveDocument (vlax-get-acad-Object)))
(if (and (setq ent (entsel "\n選取來源圖塊:"))
(setq dxf (entget (car ent)))
(= (cdr (assoc 0 dxf)) "INSERT")
(setq bn (cdr (assoc 2 dxf)))
(/= (setq nn (getstring "\n目標圖塊名稱:")) "")
(tblsearch "BLOCK" nn)
)
(ax:RenameBlock doc bn nn)
)
(princ)
)
pizg
pizg
高級會員
高級會員

文章總數 : 258
年齡 : 59
來自 : 桃園縣
職業 : 建築設計;程式設計
愛好 : 音樂;攝影;繪畫;棋奕;電子;機器人
個性 : 隨和
使用年資 : 30↑
使用版本 : 2015
積分 : 10
經驗值 : 6499
威望值 : 320
發帖精華 : 1
注冊日期 : 2010-04-16
串連貼紙成功 男 摩羯座 龍

https://pizgchen.blogspot.com/

回頂端 向下

回頂端


 
這個論壇的權限:
無法 在這個版面回復文章
[討論]看不懂的LISP Ioaoe110[討論]看不懂的LISP 2020-310[討論]看不懂的LISP Oiu15010[討論]看不懂的LISP 2020-211[討論]看不懂的LISP Ia15010[討論]看不懂的LISP Aizyao10[討論]看不懂的LISP Uos15010[討論]看不懂的LISP BPl3tjj[討論]看不懂的LISP Ziao1510
[討論]看不懂的LISP Aoe15010[討論]看不懂的LISP Oo-2-110[討論]看不懂的LISP Zuoiy_10[討論]看不懂的LISP Aizyao11[討論]看不懂的LISP Iyb_1510[討論]看不懂的LISP Aoe1-111[討論]看不懂的LISP Uos15011[討論]看不懂的LISP Aoe2da10[討論]看不懂的LISP Aoe2da11[討論]看不懂的LISP Aoe10