[已解決]lsp如何取出動態圖塊正確圖塊名稱
3 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
[已解決]lsp如何取出動態圖塊正確圖塊名稱
lsp如何取出動態圖塊正確圖塊名稱
有一動態圖塊名稱"電視地板插座"
內含可見參數tv1,tv2,tv3,tv4
將動態圖塊"電視地板插座"插入圖面數次後
修改部份動態圖塊可見參數為tv2
用lsp抓取計算數量卻發生圖塊名稱錯誤
動態圖塊"電視地板插座"未修改可見參數時可正確計算
圖元資料串列如下
((-1 . <圖元名稱: 7ef82990>) (0 . "INSERT") (330 . <圖元名稱: 7ef80cc0>)
(5 . "632") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "TV")
(100 . "AcDbBlockReference") (2 . "電視地板插座") (10 -157.324 -20.4497 0.0)
(41 . 1.0) (42 . 1.0) (43 . 1.0) (50 . 0.0) (70 . 0) (71 . 0) (44 . 0.0) (45 . 0.0)
(210 0.0 0.0 1.0))
動態圖塊"電視地板插座"修改可見參數為tv2後
圖元資料串列如下
((-1 . <圖元名稱: 7ef82998>) (0 . "INSERT") (5 . "633")
(102 . "{ACAD_XDICTIONARY") (360 . <圖元名稱: 7ef829a0>) (102 . "}")
(330 . <圖元名稱: 7ef80cc0>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "TV")
(100 . "AcDbBlockReference") (2 . "*U1") (10 -49.8946 -41.4134 0.0) (41 . 1.0)
(42 . 1.0) (43 . 1.0) (50 . 0.0) (70 . 0) (71 . 0) (44 . 0.0) (45 . 0.0) (210 0.0 0.0 1.0))
用list查詢動態圖塊"電視地板插座"修改可見參數為tv2
有兩個圖塊名稱
一個是正確的"電視地板插座"
一個是匿名的"*U1"
請問用lsp要如何取回 正確的"電視地板插座"圖塊名稱
有一動態圖塊名稱"電視地板插座"
內含可見參數tv1,tv2,tv3,tv4
將動態圖塊"電視地板插座"插入圖面數次後
修改部份動態圖塊可見參數為tv2
用lsp抓取計算數量卻發生圖塊名稱錯誤
動態圖塊"電視地板插座"未修改可見參數時可正確計算
圖元資料串列如下
((-1 . <圖元名稱: 7ef82990>) (0 . "INSERT") (330 . <圖元名稱: 7ef80cc0>)
(5 . "632") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "TV")
(100 . "AcDbBlockReference") (2 . "電視地板插座") (10 -157.324 -20.4497 0.0)
(41 . 1.0) (42 . 1.0) (43 . 1.0) (50 . 0.0) (70 . 0) (71 . 0) (44 . 0.0) (45 . 0.0)
(210 0.0 0.0 1.0))
動態圖塊"電視地板插座"修改可見參數為tv2後
圖元資料串列如下
((-1 . <圖元名稱: 7ef82998>) (0 . "INSERT") (5 . "633")
(102 . "{ACAD_XDICTIONARY") (360 . <圖元名稱: 7ef829a0>) (102 . "}")
(330 . <圖元名稱: 7ef80cc0>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "TV")
(100 . "AcDbBlockReference") (2 . "*U1") (10 -49.8946 -41.4134 0.0) (41 . 1.0)
(42 . 1.0) (43 . 1.0) (50 . 0.0) (70 . 0) (71 . 0) (44 . 0.0) (45 . 0.0) (210 0.0 0.0 1.0))
用list查詢動態圖塊"電視地板插座"修改可見參數為tv2
有兩個圖塊名稱
一個是正確的"電視地板插座"
一個是匿名的"*U1"
請問用lsp要如何取回 正確的"電視地板插座"圖塊名稱
tarpon 在 2011-03-22, 11:28 作了第 1 次修改
tarpon- 中級會員
- 文章總數 : 209
年齡 : 34
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 6251
威望值 : 263
注冊日期 : 2010-07-01
回復: [已解決]lsp如何取出動態圖塊正確圖塊名稱
隨著 AutoCAD 引入越來越多的物件,DXF格式資料也漸漸地不易使用。
改採 Automation 試試看
(vlax-get-property (vlax-ename->vla-object (car (entsel))) "effectivename")
改採 Automation 試試看
(vlax-get-property (vlax-ename->vla-object (car (entsel))) "effectivename")
DevilWang- 高級會員
- 文章總數 : 113
年齡 : 57
來自 : 台北
職業 : AEC
愛好 : Thinking...
個性 : 閒散
使用年資 : 25↑
使用版本 : 2012
積分 : 15
經驗值 : 6053
威望值 : 355
發帖精華 : 1
回帖精華 : 3
注冊日期 : 2010-03-29
回復: [已解決]lsp如何取出動態圖塊正確圖塊名稱
DevilWang 寫到:隨著 AutoCAD 引入越來越多的物件,DXF格式資料也漸漸地不易使用。
改採 Automation 試試看
(vlax-get-property (vlax-ename->vla-object (car (entsel))) "effectivename")
感謝提供資訊來去試看看
tarpon- 中級會員
- 文章總數 : 209
年齡 : 34
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 6251
威望值 : 263
注冊日期 : 2010-07-01
回復: [已解決]lsp如何取出動態圖塊正確圖塊名稱
請問各位先進
那有Visual Lisp函數語法使用說明或相關圖書介紹謝謝
在網上找到的都是簡體的
請問DevilWang
上述語法取出的圖元名稱是不是不能直接用(ssget "X" (list (.........)結合過瀘串列建立選集呢
那有Visual Lisp函數語法使用說明或相關圖書介紹謝謝
在網上找到的都是簡體的
請問DevilWang
上述語法取出的圖元名稱是不是不能直接用(ssget "X" (list (.........)結合過瀘串列建立選集呢
tarpon- 中級會員
- 文章總數 : 209
年齡 : 34
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 6251
威望值 : 263
注冊日期 : 2010-07-01
回復: [已解決]lsp如何取出動態圖塊正確圖塊名稱
tarpon 寫到:請問各位先進
那有Visual Lisp函數語法使用說明或相關圖書介紹謝謝
在網上找到的都是簡體的
請問DevilWang
上述語法取出的圖元名稱是不是不能直接用(ssget "X" (list (.........)結合過瀘串列建立選集呢
(vlax-get-property (vlax-ename->vla-object (car (entsel))) "effectivename")
這一行也可以改為
(vla-get-effectivename (vlax-ename->vla-object (car (entsel))))
你應該是想統計圖塊數量吧, 解答如下:
(setq sl (ssget '((0 . "INSERT"))))
(setq i 0)
(repeat (sslength sl)
(setq name (vla-get-effectivename (vlax-ename->vla-object (ssname sl i)))) ;;取出圖塊名稱
;;比對圖塊是否已存在
;;不存在時計為1 存在時數量加 1
(setq i (1+ i))
)
Tiger&蘋果爸 寫到: 謝謝熱心解答~< 積分 +1>
[公告]關於團隊成員的回文及貢獻
Tiger&蘋果爸 在 2011-03-23, 16:45 作了第 1 次修改 (原因 : 加分囉~)
回復: [已解決]lsp如何取出動態圖塊正確圖塊名稱
是的要統計數量
謝謝pizg的熱情解答
謝謝pizg的熱情解答
tarpon- 中級會員
- 文章總數 : 209
年齡 : 34
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 6251
威望值 : 263
注冊日期 : 2010-07-01
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章