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.
標註複線的scale比例 Ioaoe110 標註複線的scale比例 2020-310 標註複線的scale比例 Oiu15010 標註複線的scale比例 2020-211 標註複線的scale比例 Oo-2-110 標註複線的scale比例 BPl3tjj

標註複線的scale比例

向下

標註複線的scale比例 Empty 標註複線的scale比例

發表 由 dog46 2021-10-26, 09:03

想請問版上的高手,我想要有自動標註複線比例的功能,目前code(下方)只能單一選取一個複線,我想要能夠選取多個複線,參考之前用的快速標記的code,應該可以用
(setq dpss (ssget "_:L" '((0 . "*MLINE"))))  這行達到,可是其他部分不太清楚要怎麼修改。想請大家幫忙把code更改成能夠選取多個複線嗎?

(defun c:mldim ( / olsnap dic obj xyz mlsty mlsc pt1 pt2 ang mp mp2 ent dic dict tot)

(setq oldsnap (getvar 'osmode))
(setvar 'osmode 0)

(setq dic (dictsearch (namedobjdict) "ACAD_MLINESTYLE"))

(setq obj (vlax-ename->vla-object (car (entsel "\nSelect mline"))))
(setq xyz (vlax-get obj 'Coordinates))
(setq mlsty (vlax-get obj 'StyleName))
(setq mlsc (vlax-get obj 'MLineScale))

(setq pt1 (list (nth 0 xyz)(nth 1 xyz)))
(setq pt2 (list (nth 3 xyz)(nth 4 xyz)))
(setq ang (- (angle pt1 pt2)(/ pi 2.0)))
(setq mp (mapcar '* (mapcar '+ pt1 pt2) '(0.5 0.5)))


(setq dict (dictsearch (setq dic (cdr (assoc -1 dic))) mlsty ))
(setq tot 0.0)
(foreach ent dict
(if (= (car ent) 49)
(setq tot (+ tot (abs (cdr ent))))
)
)
(setq tot (* mlsc tot))

(setq mp2 (polar mp ang tot))

(command "dimaligned" mp mp2 mp)

(princ)
)

(c:mldim)
dog46
dog46
一般會員
一般會員

文章總數 : 6
年齡 : 25
來自 : 台中市
職業 : 土木
愛好 : 美食遊戲
個性 : 普通
使用年資 : 1
使用版本 : 2019
經驗值 : 83
威望值 : 0
注冊日期 : 2021-10-21
男 白羊座 鼠

回頂端 向下

回頂端


 
這個論壇的權限:
無法 在這個版面回復文章
標註複線的scale比例 Uos15010 標註複線的scale比例 BPl3tjj 標註複線的scale比例 Ziao1510 標註複線的scale比例 Oo-2-110 標註複線的scale比例 Oooo-110 標註複線的scale比例 2020-211