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

[已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

上一篇主題 下一篇主題 向下

[已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-03, 05:30

因應客戶圖形,圖面內有許多複雜圖層,顏色不依,線型不依,線粗也不依,每次都必須一項一項改,再用MA指令複製性質....但因為圖形太多,每次都必須花很多時間修改,因為圖形複雜不能全部圖形改成預設圖層,只能部份修改。
有辦法幫我設計這功能的LISP嗎?
還是有類似指令!!!可以快速還原圖形為預設圖層!!!


pc200098 在 2012-07-16, 03:14 作了第 3 次修改
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 leoneriol 于 2012-07-06, 09:24

請您先試試使用下列兩種選取方式做條件式選取

_qselect快速選取 跟 Fi 篩選

如果有辦法做到.....則可以寫成lisp

PS:其是這兩種選取功能能用的話,也不太需要在設計lisp了
avatar
leoneriol
榮譽顧問
榮譽顧問

文章總數 : 816
年齡 : 33
來自 : 基隆市七堵區
職業 : 機電工程公司-繪圖(工地)
愛好 : 看小說
個性 : 不愛說話-反應慢
使用年資 : 6年
使用版本 : 2008 & 2012
積分 : 27
經驗值 : 6582
威望值 : 938
發帖精華 : 1
回帖精華 : 1
注冊日期 : 2009-03-12
經典問與答讀者 藍鵲34號
2009聚會勳章 2014聚會勳章 男 雙魚座 鼠

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 Tiger&蘋果爸 于 2012-07-06, 10:08

是否有試過「設定為依圖層」SETBYLAYER指令。
可以指定變更為「依圖層」的性質,包括顏色、線型、線粗和材料。
竊喜

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17200
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 64643
威望值 : 12750
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-06, 11:03

Tiger&蘋果爸 寫到:是否有試過「設定為依圖層」SETBYLAYER指令。
可以指定變更為「依圖層」的性質,包括顏色、線型、線粗和材料。
竊喜

有!且目前也是利用這方法,只不過要先把圖層改為0圖層,因為這指令無法還原0圖層!

選取方式不限制,快速篩選或F或WP或CP都沒差,只要能輸入一個熱鍵,能選取一定範圍圖形,還原到0圖層 害羞
目前我只能寫SETBYLAYER指令Y Y,但還是要手動將圖形歸到0圖層
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 shenhung 于 2012-07-06, 12:07

不知道是不是我理解有誤..否則.用CHANGE (性質P) .將顏色.線性.線粗..圖層.是可以一次修改到位的.還是你有特別的過濾或歸類方式..須要用到LISP
avatar
shenhung
高級會員
高級會員

文章總數 : 238
年齡 : 50
來自 : 新北市
職業 : 塑膠模具設計.AUTOLISP
愛好 : 音樂
個性 : 隨和
使用年資 : 18年
使用版本 : 2010
積分 : 15
經驗值 : 5007
威望值 : 913
注冊日期 : 2009-06-03
男 摩羯座 馬

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-06, 17:33

shenhung 寫到:不知道是不是我理解有誤..否則.用CHANGE (性質P) .將顏色.線性.線粗..圖層.是可以一次修改到位的.還是你有特別的過濾或歸類方式..須要用到LISP

恩!可能是我表達有誤,要還原圖層、顏色、線性、線粗有很多方法,只是量多的話,這些步驟都是很花時間的,我想要將這些步驟集中成一個按鈕或是一個熱鍵,以便每開一個圖檔就可輕鬆達到效果!

例如我常用的一個指令^C^C'_-scalelistedit _r _y _e
我就設成一個按鈕,一個快速指令,可以省下一些時間!
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pizg 于 2012-07-09, 10:15

;;2012-07-09 By PizG
;;將物件移到0層,且性質改成ByLayer
(defun c:chg0(/ sl)
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
(princ)
)
avatar
pizg
高級會員
高級會員

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

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-09, 16:15

pizg 寫到:;;2012-07-09 By PizG
;;將物件移到0層,且性質改成ByLayer
(defun c:chg0(/ sl)
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
(princ)
)

哇!好厲害!這語法我沒學到耶!晚點試試看! 先感謝囉!
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-10, 15:29

pizg 寫到:;;2012-07-09 By PizG
;;將物件移到0層,且性質改成ByLayer
(defun c:chg0(/ sl)
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
(princ)
)

經過測試後,該lisp完全符合我的需求,但我呼叫指令改QB (QuickBylayer)
再另外新增工具列,新增按鈕指令,巨集輸入 (if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
也可以正常使用!
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-12, 16:32

想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pizg 于 2012-07-13, 10:27

pc200098 寫到:想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
可以的, 請到下面網頁下載程式.
http://tw.myblog.yahoo.com/rain-fall/archive?l=f&id=19
avatar
pizg
高級會員
高級會員

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

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-16, 03:09

pizg 寫到:
pc200098 寫到:想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
可以的, 請到下面網頁下載程式.
http://tw.myblog.yahoo.com/rain-fall/archive?l=f&id=19

真是!太甘心了,好用耶,謝謝pizg大,順便問一下,這炸開只能炸第一層吧,圖塊中的圖塊,還要再炸一次吧?
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 tan866 于 2012-07-18, 08:03

感謝 pizg 分享實用程序!
使用很方便喔!
avatar
tan866
初級會員
初級會員

文章總數 : 67
年齡 : 40
來自 : 高雄
職業 : 繪圖
愛好 : 騎腳踏車
個性 : 開朗
使用年資 : 5
使用版本 : 2008
積分 : 1
經驗值 : 2898
威望值 : 39
注冊日期 : 2010-10-24
藍鵲346號
男 摩羯座 龍

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 lingo_st 于 2012-07-19, 14:10

pizg 寫到:
pc200098 寫到:想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
可以的, 請到下面網頁下載程式.
http://tw.myblog.yahoo.com/rain-fall/archive?l=f&id=19

試用過 正常可用
但只能炸開第一層圖塊再還原,多層圖塊無法執行(但真的很好用!!!)

附帶一問
附檔名VLX要如何開啟編修?用記事本開啟變一堆亂碼
還有 要如何修改程式名?(試改檔名為 QB.VLX 無法用 QB叫出應用程式)
因為原程式名 objreset好長,想改短一點
avatar
lingo_st
中級會員
中級會員

文章總數 : 211
年齡 : 53
來自 : 新北市
職業 : 營造,建設
愛好 : 學習,服務,電腦軟硬體
個性 : 正直,達觀且無可救藥的雞婆
使用年資 : 使用12年但真的是新手
使用版本 : 2012,2013
積分 : 6
經驗值 : 3377
威望值 : 271
注冊日期 : 2011-12-18
經典問與答讀者 藍鵲238號
男 雙魚座 龍

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 lingo_st 于 2012-07-19, 14:17

pizg 寫到:;;2012-07-09 By PizG
;;將物件移到0層,且性質改成ByLayer
(defun c:chg0(/ sl)
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
(princ)
)

請問這段要如何載入到autocad裡?
我試的方式是講內容copy到記事本
存檔後改檔名為 qb.lsp
載入後 執行 qb 它跟我說 不明指令

請教教我哪做錯

更正:

我改成功囉!!!
剛看蘋果爸分享 圖塊計算 那篇
仿格式改一下竟然成功把指令名改掉囉
太感動!!!特地來回報一下
avatar
lingo_st
中級會員
中級會員

文章總數 : 211
年齡 : 53
來自 : 新北市
職業 : 營造,建設
愛好 : 學習,服務,電腦軟硬體
個性 : 正直,達觀且無可救藥的雞婆
使用年資 : 使用12年但真的是新手
使用版本 : 2012,2013
積分 : 6
經驗值 : 3377
威望值 : 271
注冊日期 : 2011-12-18
經典問與答讀者 藍鵲238號
男 雙魚座 龍

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pizg 于 2012-07-20, 02:41

lingo_st 寫到:
pizg 寫到:
pc200098 寫到:想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
可以的, 請到下面網頁下載程式.
http://tw.myblog.yahoo.com/rain-fall/archive?l=f&id=19

試用過 正常可用
但只能炸開第一層圖塊再還原,多層圖塊無法執行(但真的很好用!!!)

附帶一問
附檔名VLX要如何開啟編修?用記事本開啟變一堆亂碼
還有 要如何修改程式名?(試改檔名為 QB.VLX 無法用 QB叫出應用程式)
因為原程式名 objreset好長,想改短一點

(defun c:qb()
(c:objReset)
(princ)
)
avatar
pizg
高級會員
高級會員

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

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 lingo_st 于 2012-07-20, 04:32

pizg 寫到:
lingo_st 寫到:
pizg 寫到:
pc200098 寫到:想請問,這lisp能再加入炸開功能嗎,就是還原圖層+炸開圖形?
可以的, 請到下面網頁下載程式.
http://tw.myblog.yahoo.com/rain-fall/archive?l=f&id=19

試用過 正常可用
但只能炸開第一層圖塊再還原,多層圖塊無法執行(但真的很好用!!!)

附帶一問
附檔名VLX要如何開啟編修?用記事本開啟變一堆亂碼
還有 要如何修改程式名?(試改檔名為 QB.VLX 無法用 QB叫出應用程式)
因為原程式名 objreset好長,想改短一點


(defun c:qb()
(c:objReset)
(princ)
)

感謝回應,已經解決, 程式名稱可修改無誤 ,特此回報
avatar
lingo_st
中級會員
中級會員

文章總數 : 211
年齡 : 53
來自 : 新北市
職業 : 營造,建設
愛好 : 學習,服務,電腦軟硬體
個性 : 正直,達觀且無可救藥的雞婆
使用年資 : 使用12年但真的是新手
使用版本 : 2012,2013
積分 : 6
經驗值 : 3377
威望值 : 271
注冊日期 : 2011-12-18
經典問與答讀者 藍鵲238號
男 雙魚座 龍

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 Tiger&蘋果爸 于 2012-07-20, 07:58

lingo_st 寫到: 感謝回應,已經解決, 程式名稱可修改無誤 ,特此回報
也可以透過自訂指令別名(PGP)的方式喔~
認同

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17200
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 64643
威望值 : 12750
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 pc200098 于 2012-07-21, 16:35

lingo_st 寫到:
pizg 寫到:;;2012-07-09 By PizG
;;將物件移到0層,且性質改成ByLayer
(defun c:chg0(/ sl)
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
(princ)

)
AutoCAD~工具~auto lisp 直接將紅色區域與法輸入即可使用,另可修改語法中的chg0為欲呼叫語法的快速指令,例如QB,如此作業中直接輸入QB即可呼叫該語法!
另外,如自訂CUI也可新增新指令編輯圖示並命名後在巨集欄裡輸入(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
就可以在工具列新增一個該功能的按鈕!
avatar
pc200098
初級會員
初級會員

文章總數 : 46
年齡 : 32
來自 : 台南市
職業 : 機械製圖
愛好 : 電玩
個性 : 執著
使用年資 : 12
使用版本 : 2013&2016
積分 : 1
經驗值 : 2682
威望值 : 55
注冊日期 : 2011-03-10
男 天秤座 牛

回頂端 向下

回復: [已解決]將指定範圍內圖形快速還原到(0圖層-顏色ByLayer-線型ByLayer-線粗ByLayer)

發表 由 狗狗 于 2014-01-09, 13:34

各位大大好 我有試過剛剛在cui設定巨集
增強屬性編輯器的圖塊 在模型中會變成0圖層 但是在增強屬性編輯器中 圖層並沒有變成0圖層
請問是我操作上出了問題嗎?? (我是在cui設定快捷建 而語法是
(if (setq sl (ssget)) (command "_.change" sl "" "p" "la" "0" "c" "ByLayer" "lt" "ByLayer" "lw" "ByLayer" ""))
avatar
狗狗
一般會員
一般會員

文章總數 : 41
年齡 : 33
來自 : 台中市
職業 : 水電圖
愛好 : 畫畫
個性 : 好學
使用年資 : 幾個月
使用版本 : 2010
經驗值 : 2680
威望值 : 24
注冊日期 : 2011-02-26
藍鵲280號
女 雙魚座 鼠

回頂端 向下

上一篇主題 下一篇主題 回頂端


 
這個論壇的權限:
無法 在這個版面回復文章