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

[討論]請問各位都如何使用"延伸資料"這個功能

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

[討論]請問各位都如何使用"延伸資料"這個功能

發表 由 awi 于 2014-06-11, 02:52

我在書上看到這項功能,但是他也只有教寫入跟讀取延伸資料。
延伸資料也無法用(ssget "x" ...)過濾出來,
那他的使用時機是何時,又如何使用呢?
avatar
awi
一般會員
一般會員

文章總數 : 74
年齡 : 34
來自 : 新北市
職業 : 電機技師事務所
愛好 : 新奇有趣的事物
個性 : 固執
使用年資 : 6
使用版本 : 2012
經驗值 : 2054
威望值 : 42
注冊日期 : 2013-05-03
男 白羊座 豬

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 judyyai 于 2014-06-20, 01:41

幫頂一個~都沉這麼多天~

____________________________________________________________________________________
avatar
judyyai
管理顧問
管理顧問

文章總數 : 7642
年齡 : 40
來自 : 台南
職業 : 機械製圖
愛好 : 電腦相關
個性 : think too much...
使用年資 : 10↑
使用版本 : AC2014(開始於2015九月底)
AutoCAD基礎篇等級 : 10星級
積分 : 392
最佳解答 : 1
經驗值 : 27169
威望值 : 3454
發帖精華 : 2
回帖精華 : 4
注冊日期 : 2008-11-19
2D基礎函授 3D基礎函授 顧問外掛程式 經典問與答讀者 藍鵲2號
2009聚會勳章 串連貼紙成功 女 巨蟹座 蛇

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 leoneriol 于 2014-06-20, 09:19

SSGET 是個超好用的選集建立指令!!

尤其是他能夠配合群碼做篩選,絕對是程式設計的一大利器!!

但是想使用 ssget 是有些門道需要去了解的,

就如同剛才所提到的"群碼"

簡單舉幾個群碼的例子,

圖層的群碼是8,而你希望要找在"DIM"圖層下的物件,則群碼的表是方式就是 (8 . "DIM")

物件類別的群碼是0,而你希望要找"circle"類別的物件,則群碼的表是方式就是 (0 . "CIRCLE")

建立選集的方式就如下:

(setq SelWorks1 (ssget "X" '(0 . "CIRCLE"))) ;這是將變數SelWorks1設為圖面上所有的"圓"物件的選集

(setq SelWorks2 (ssget "X" '(8 . "DIM"))) ;這是將變數SelWorks2設為圖面上所有"圖層為DIM"的物件的選集

(setq SelWorks3 (ssget "X" '((8 . "DIM")(0 . "CIRCLE")))) ;這是將變數SelWorks3設為圖面上所有"圖層為DIM的圓物件"的選集


這樣舉例不知道有沒有幫道您呢?

PS:之前有看到此討論....只是留言到一半被打斷去趕工到後來忘記了.....還好有被頂出來XD...哈哈
avatar
leoneriol
榮譽顧問
榮譽顧問

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

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 shenhung 于 2014-06-20, 16:22

延伸資料基本的概念就是.在圖元中添加資料.以群組碼1000-1071範圍.定義使用者添加的資料內容.
VLIDE 編輯器內HELP
DXF參考->進階DXF問題->延伸資料.有群組碼詳細說明.~!!


這是我的O-形環圖塊BLOCK  延伸資料範例.~!!
基本上.就看你要添加什麼資料. 自己定義資料內容.
因為我的O-RING 有公制和英制規格.上視圖種類也有8種.水孔大小配合的水管牙尺寸也不同..因為我不想用圖塊屬性記錄這些資料.就用延伸資料了.!!
大原則就是要尊照 群組碼的資料型態.
(1000 . "FxP15-3/8_1") 記錄O-RING 規格.F為公制 P15-PT3/8 ,圖型類別為1
(1000 . "clf") ;記錄O-RING 資料庫名稱為CLF.TXT
(1000 . "0")  ;0-RING 水隔板旋轉角度為0
(1041 . 12.0) ;水孔直徑.
(1000 . "16.662") ;PT-3/8 外徑
(1000 . "14.950") ;PT-3/8 內徑




程式範例

代碼:

(defun clf-#make_insert(bname clf-pt lay $cl_sz / xdet_str1 xdet_str2 xdset_clf)
      (if (= catlog_name "dme") (setq clf:ptn "D") (setq clf:ptn "F"))
      (setq xdet_str1 (cons 1000 (strcat  clf:ptn "x" $cl_sz "_" (rtos clf_cmd 2 0))))
      (setq xdet_str2 (cons 1000 data_type))
      (setq xdet_ang  (cons 1000 co:ang))
  (if (= clf:trans "Y")
      (setq xdet_dia  (cons 1041 (atof $co:d))) ;轉換的水孔徑
      (setq xdet_dia  (cons 1041 (atof co:d)))
  )    

  (if (or (/= clf:tap_size nil)(= clf:trans "Y")) ;攻牙
      (progn
      (setq xdet_tap-outdia  (cons 1000 tap:outdia))
      (setq xdet_tap-india   (cons 1000 tap:india))
      )
      (progn ;無攻牙
      (setq xdet_tap-outdia  (cons 1000 "0"))
      (setq xdet_tap-india   (cons 1000 "0"))
      )
  )  
  
      (regapp "AMD_CLF")
      (setq xdset_clf  (list -3 (list "AMD_CLF" '(1002 . "{")  xdet_str1 xdet_str2 xdet_ang XDET_DIA xdet_tap-outdia xdet_tap-india '(1002 . "}"))))
      (entmake (list (cons 0 "INSERT")
           (cons 2 bname)
           (cons 8 lay)
           (cons 10 clf-pt)
           xdset_clf
          )
      )
      (ENTMAKE '((0 . "SEQEND")))
)



選取圖面上的O-RING !! SSGET方法.  加 "X" 就是全圖選取了.~
(SETQ b_ens (SSGET (LIST (LIST -3  (LIST "AMD_CLF")))))

看這則帖子.幾天了.一直在想不知道怎樣說明比較好.怕詞不達義.~!! 有問題歡迎再討論了.

Tiger&蘋果爸 寫到:讚啦!! 謝謝熱心圖文回覆~< 積分 +1>
[公告]關於團隊成員的回文及貢獻
avatar
shenhung
高級會員
高級會員

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

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 leoneriol 于 2014-06-20, 18:42

太厲害了!我看到一個龐大的圖塊資料庫範例!大大願意分享這樣的心血結晶一定要推!受教了!又在這臥虎藏龍的地方學了一招!
avatar
leoneriol
榮譽顧問
榮譽顧問

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

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 adslwang 于 2014-06-23, 06:00

雖然有個概念知道是什麼東西,只是連測式過都沒有
前輩分享了很好的例子,我來吸收了,謝謝分享
avatar
adslwang
高級會員
高級會員

文章總數 : 372
年齡 : 39
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 4601
威望值 : 355
回帖精華 : 1
注冊日期 : 2008-10-02
藍鵲88號
男 處女座 馬

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 awi 于 2014-06-23, 06:10

shenhung 寫到:延伸資料基本的概念就是.在圖元中添加資料.以群組碼1000-1071範圍.定義使用者添加的資料內容.
VLIDE 編輯器內HELP ...................

acad的help>延伸資料我有看過,只是看了扔然不知道延伸資料的用途,看完shenhung大的解說後有了更深一層的認識了,多試一下應該會有新的發現。
shenhung大的解說解決了我多日來不管是acad help、翻書、google都找不到答案的疑惑,真是太強了啦~~~
 讚啦!!
avatar
awi
一般會員
一般會員

文章總數 : 74
年齡 : 34
來自 : 新北市
職業 : 電機技師事務所
愛好 : 新奇有趣的事物
個性 : 固執
使用年資 : 6
使用版本 : 2012
經驗值 : 2054
威望值 : 42
注冊日期 : 2013-05-03
男 白羊座 豬

回頂端 向下

回復: [討論]請問各位都如何使用"延伸資料"這個功能

發表 由 pizg 于 2014-07-18, 10:25

想在圖上加資料, 不懂程式的人可以用屬性, 懂程式的人可以用延伸資料和字典.
avatar
pizg
高級會員
高級會員

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

回頂端 向下

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


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