[討論]測試LISP
5 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
[討論]測試LISP
這是我自己找資料慢慢寫 寫出來的>"<
之前需要複製文字內容的但是不知怎寫怎用
然後看到有複製文字的LISP 但卻因為積分不夠無法觀看
所以是著找資料寫寫看
跟版上的大大的有點不同
是先點選要更改的文字 然後再點選複製的文字
希望有幫到各位
有些小問題 如果想像大大那樣
1. 先點要複製的文字在點要更改的文字的話要如何寫比較好?
2. 如果是要改某個物件但是不是去點選他 而是想用<圖元名稱: 7ee4ea00> 把它叫出來改
要怎用 不知從何下手 請各位大大幫忙
之前需要複製文字內容的但是不知怎寫怎用
然後看到有複製文字的LISP 但卻因為積分不夠無法觀看
所以是著找資料寫寫看
跟版上的大大的有點不同
是先點選要更改的文字 然後再點選複製的文字
希望有幫到各位
有些小問題 如果想像大大那樣
1. 先點要複製的文字在點要更改的文字的話要如何寫比較好?
2. 如果是要改某個物件但是不是去點選他 而是想用<圖元名稱: 7ee4ea00> 把它叫出來改
要怎用 不知從何下手 請各位大大幫忙
as920029as 在 2012-06-19, 00:04 作了第 1 次修改
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
這是我先前寫的LSP,主要用在複製貼上文字,對象可以用在文字,標註,以及多重引線,免去手動填寫會產生的失誤,以及增進打字的效率.
提供給有需要的人參考.
至於你的第二個問題,我是有看沒有懂,圖元名稱好像每次都會不一樣,如果不用選取的,那要怎麼確定選到的就是你要的圖元呢?
示範影片
http://screencast.com/t/nmJSdWrKr
以下回覆可見
提供給有需要的人參考.
至於你的第二個問題,我是有看沒有懂,圖元名稱好像每次都會不一樣,如果不用選取的,那要怎麼確定選到的就是你要的圖元呢?
示範影片
http://screencast.com/t/nmJSdWrKr
以下回覆可見
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6812
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [討論]測試LISP
抱歉XD" 剛剛LISP沒PO好 回家後才發現 現在以補上
第二個問題˙˙ 做個表格 存成檔案 然後
只是把圖套進來 在存成別的這樣@@
圖元名稱一樣會變?
想試著做看看 是否友直接點選文字 然
後會自己複製文字內容進表格框框裡的LISP
第二個問題˙˙ 做個表格 存成檔案 然後
只是把圖套進來 在存成別的這樣@@
圖元名稱一樣會變?
想試著做看看 是否友直接點選文字 然
後會自己複製文字內容進表格框框裡的LISP
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
以下和式註解處做了修改,看看是不是你要的.
關於圖元名稱會變,
你可以做一個小測試,new一張新圖,裡面擺一個簡單的圖元,然後儲存,離開這張圖之前,先用entsel記下圖元的名稱,關閉圖檔後再重打開,再用entsel選取相同的圖元,你看看圖元名稱是不是不一樣了.
(defun c:mm()
(setvar "cmdecho" 0)
(setq en (entsel "1文字"))
(setq en_data (entget (car en)))
(setq en_txt (cdr (assoc 1 en_data)))
(setq oldt (assoc 1 en_data))
(setq en2 (entsel "2文字"))
(setq en2_data (entget (car en2)))
(setq en2_txt (cdr (assoc 1 en2_data)))
(setq newt (cons 1 en2_txt))
(setq en2_data (subst oldt newt en2_data));;;這裡修改了
(entmod en2_data)
)
(prin1)
關於圖元名稱會變,
你可以做一個小測試,new一張新圖,裡面擺一個簡單的圖元,然後儲存,離開這張圖之前,先用entsel記下圖元的名稱,關閉圖檔後再重打開,再用entsel選取相同的圖元,你看看圖元名稱是不是不一樣了.
(defun c:mm()
(setvar "cmdecho" 0)
(setq en (entsel "1文字"))
(setq en_data (entget (car en)))
(setq en_txt (cdr (assoc 1 en_data)))
(setq oldt (assoc 1 en_data))
(setq en2 (entsel "2文字"))
(setq en2_data (entget (car en2)))
(setq en2_txt (cdr (assoc 1 en2_data)))
(setq newt (cons 1 en2_txt))
(setq en2_data (subst oldt newt en2_data));;;這裡修改了
(entmod en2_data)
)
(prin1)
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6812
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [討論]測試LISP
謝謝....大大無私的分享,入內學習感恩!
DARDAR- 高級會員
- 文章總數 : 337
年齡 : 66
來自 : 台北
職業 : 營造金屬
愛好 : AutoCAD
個性 : 隨和
使用年資 : 5年↑
使用版本 : 2012
積分 : 15
經驗值 : 6710
威望值 : 96
注冊日期 : 2008-05-13
回復: [討論]測試LISP
感謝大大分享
大大改的正是我要的XD
圖元名稱我有測試了~"~每次都會改
還有個問題是@@
要去哪邊可以找到群碼的總表
在網路上找都找不到說...
以下這種的
找不到全部的只找到少數常用的
(-1 . <圖元名稱: 2940518>) 群碼-1對應『圖元名稱』
(0 . "CIRCLE") 群碼0對應『圖元類別』
(5 . "23") 群碼5對應『處理碼』
大大改的正是我要的XD
圖元名稱我有測試了~"~每次都會改
還有個問題是@@
要去哪邊可以找到群碼的總表
在網路上找都找不到說...
以下這種的
找不到全部的只找到少數常用的
(-1 . <圖元名稱: 2940518>) 群碼-1對應『圖元名稱』
(0 . "CIRCLE") 群碼0對應『圖元類別』
(5 . "23") 群碼5對應『處理碼』
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
群碼總表,可以參考CAD的說明(CAD裡按F1),
DXF 參考\ 對《DXF 參考》的修訂\
有 ENTITIES 區段及 OBJECTS 區段.
你可以先看ENTITIES區段.裡面應該有蠻多你要的資料.
如果嫌麻煩,那可以去找本教LSP的書.附錄裡應該都有做說明.
DXF 參考\ 對《DXF 參考》的修訂\
有 ENTITIES 區段及 OBJECTS 區段.
你可以先看ENTITIES區段.裡面應該有蠻多你要的資料.
如果嫌麻煩,那可以去找本教LSP的書.附錄裡應該都有做說明.
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6812
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [討論]測試LISP
感謝大大XD 這正是我要找的東西 3Q
還有幾個問題是
如果
文字1複製 → 文字2 但是文字1字高8 文字2字高4
文字1字高維持不變複製過去 大概怎寫? 請提示我一下
跟
(1 . "\\A1;20{\\H0.7x;\\S+0.01^-0.02;}") 文字內容是這樣@@
如何改到後面堆疊的字高? 或字高比例?
還有幾個問題是
如果
文字1複製 → 文字2 但是文字1字高8 文字2字高4
文字1字高維持不變複製過去 大概怎寫? 請提示我一下
跟
(1 . "\\A1;20{\\H0.7x;\\S+0.01^-0.02;}") 文字內容是這樣@@
如何改到後面堆疊的字高? 或字高比例?
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
文字字高的群碼是40,試著把文字1的40取出來,再跟文字2的40置換,
跟你先前更改文字的內容一樣,程式做點小修改就可以做到了,不是很難你玩玩看吧!
跟你先前更改文字的內容一樣,程式做點小修改就可以做到了,不是很難你玩玩看吧!
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6812
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [討論]測試LISP
(defun c:BIG()
(setvar "cmdecho" 0)
(setq en (entsel "1文字"))
(setq en_data (entget (car en)))
(setq en_txt (cdr (assoc 1 en_data)))
(setq oldt (assoc 1 en_data))
(setq en2 (entsel "2文字"))
(setq en2_data (entget (car en2)))
(setq en2_txt (cdr (assoc 1 en2_data)))
(setq newt (cons 1 en2_txt))
(setq en2_data (subst oldt newt en2_data))
(entmod en2_data)
(setq en_rad (cdr (assoc 40 en_data)))
(setq oldr (assoc 40 en_data))
(setq newr (cdr (assoc 40 en2_data)))
(setq newrr (cons 40 newr))
(setq en4_data (subst oldr newrr en2_data))
(entmod en4_data)
)
(prin1)
以上是我試著寫的
但是我想做一個 把文字1放大N倍後 用(STRCAT)+入到文字2的前面 但文字2的字沒有變大
文字1:A 文字2:B
A→AB
如果用上面lisp改的話 文字AB會一起變大 或是有辦法可以只讓B變大?
(setvar "cmdecho" 0)
(setq en (entsel "1文字"))
(setq en_data (entget (car en)))
(setq en_txt (cdr (assoc 1 en_data)))
(setq oldt (assoc 1 en_data))
(setq en2 (entsel "2文字"))
(setq en2_data (entget (car en2)))
(setq en2_txt (cdr (assoc 1 en2_data)))
(setq newt (cons 1 en2_txt))
(setq en2_data (subst oldt newt en2_data))
(entmod en2_data)
(setq en_rad (cdr (assoc 40 en_data)))
(setq oldr (assoc 40 en_data))
(setq newr (cdr (assoc 40 en2_data)))
(setq newrr (cons 40 newr))
(setq en4_data (subst oldr newrr en2_data))
(entmod en4_data)
)
(prin1)
以上是我試著寫的
但是我想做一個 把文字1放大N倍後 用(STRCAT)+入到文字2的前面 但文字2的字沒有變大
文字1:A 文字2:B
A→AB
如果用上面lisp改的話 文字AB會一起變大 或是有辦法可以只讓B變大?
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
我做了一下測試,
像你這種情況,只能適用在MTEXT的圖元,
當你遇到了TEXT的類型,就不能使用了.
因為TEXT的圖元無法同時存在不同高度的文字,
像你描述的要讓不同高度的A與B聯結,
我不曾試過,只是看來要處理的手續就多了點,
需要點時間研究,以我的功力短期是沒辦法給你什麼有用的建議.
看有沒有其他的高手可以指點一下.
像你這種情況,只能適用在MTEXT的圖元,
當你遇到了TEXT的類型,就不能使用了.
因為TEXT的圖元無法同時存在不同高度的文字,
像你描述的要讓不同高度的A與B聯結,
我不曾試過,只是看來要處理的手續就多了點,
需要點時間研究,以我的功力短期是沒辦法給你什麼有用的建議.
看有沒有其他的高手可以指點一下.
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6812
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [討論]測試LISP
但還是感謝大大分享 讓我學習到很多^^ 3Q
as920029as- 一般會員
- 文章總數 : 110
年齡 : 33
來自 : 台南市
職業 : 繪圖員
愛好 : 電腦遊戲
個性 : 開朗
使用年資 : 3年
使用版本 : 2010
經驗值 : 5209
威望值 : 47
注冊日期 : 2012-05-06
回復: [討論]測試LISP
感謝無私分享,又挖到好東西
原本想說人家的圖都好整齊漂亮
畫得又快
原來除了熟練以外還有許多撇步
來試用看看
原本想說人家的圖都好整齊漂亮
畫得又快
原來除了熟練以外還有許多撇步
來試用看看
____________________________________________________________________________________
沒有功勞也有苦勞,沒有苦勞也有疲勞的年代已經過去
現在是...........................................
沒有功勞直接就是個屁,連個屁都不是,那就真的很疲勞了
大家一起努力吧,努力別落到連個屁都不是................
lingo_st- 中級會員
- 文章總數 : 211
年齡 : 60
來自 : 新北市
職業 : 營造,建設
愛好 : 學習,服務,電腦軟硬體
個性 : 正直,達觀且無可救藥的雞婆
使用年資 : 使用12年但真的是新手
使用版本 : 2012,2013
積分 : 6
經驗值 : 5948
威望值 : 271
注冊日期 : 2011-12-18
回復: [討論]測試LISP
我也好需要這個
可以除去筆誤的問題
我正在試著寫文字對齊的和旋轉的LISP
再上網查資料,看到
納入參考
可以除去筆誤的問題
我正在試著寫文字對齊的和旋轉的LISP
再上網查資料,看到
納入參考
hendry- 一般會員
- 文章總數 : 29
年齡 : 40
來自 : 台南
職業 : 建築相關
愛好 : 吃喝玩樂
個性 : 好學
使用年資 : 6
使用版本 : 2008
經驗值 : 4381
威望值 : 24
注冊日期 : 2013-04-24
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章