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.
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110[討論]如何在LISP程式中使用外掛指令來應用 2020-310[討論]如何在LISP程式中使用外掛指令來應用 Oiu15010[討論]如何在LISP程式中使用外掛指令來應用 2020-211[討論]如何在LISP程式中使用外掛指令來應用 Ia15010[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10[討論]如何在LISP程式中使用外掛指令來應用 Uos15010[討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj[討論]如何在LISP程式中使用外掛指令來應用 Ziao1510
[討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110[討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10[討論]如何在LISP程式中使用外掛指令來應用 Aizyao11[討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510[討論]如何在LISP程式中使用外掛指令來應用 Aoe1-111[討論]如何在LISP程式中使用外掛指令來應用 Uos15011[討論]如何在LISP程式中使用外掛指令來應用 Aoe2da10[討論]如何在LISP程式中使用外掛指令來應用 Aoe2da11[討論]如何在LISP程式中使用外掛指令來應用 Aoe10

[討論]如何在LISP程式中使用外掛指令來應用

5 posters

向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周六 18 五月 - 3:01

在寫LISP的時候我發現一般CAD的指令如:copy erase ...等等,都可以把它寫進LISP動作,
但我想要用外掛程式裡的刪除覆線OVERKILL這指令卻一直無法在LISP中使用,一直出現查無指令,

請問有什麼方法可以在LISP中使用外掛指令?

或是有其他的方法在LISP程式刪覆線?

或LISP程式動作後等待我輸入指令,以供我輸入外掛指令?

以上3種方法都可以讓我達成想要的動作,不知哪個可行。

以下是我想要寫入的LISP程式,但不接受外掛指令,求教:

(defun c:123 ()
(PROMPT "選取範圍內 紅色線 黃色線  青色線 紫色線  的線型為隱藏線 ")
(command "change" (ssget '((-4 . "<OR" ) (62 . 1)(62 . 2)(62 . 4)(62 . 6)(-4 . "OR>"))) "" "P" "LT" "HIDDEN" "")
(PROMPT "選取範圍內  隱藏線除外的線為綠色  線型為BYBLOCK ")
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "P" "LT" "BYBLOCK" "C" "3" "")
(PROMPT "選取範圍內  隱藏線除外的線為綠色  刪除覆線 ")
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "OVERKILL" "")
(prin1))


( <>為半形,因無法顯示改打全形)

倒數第二行的OVERKILL就是外掛程式指令,無法動作。請教了!
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周一 20 五月 - 6:01

我沒有仔細研究你程式的目的,不過你在下OVERKILL時,CHANGE的指令還沒作用完,要先把CHENGE流程走完再執行,另外你可在OVERKILL前加個"-"號,這樣才不會出現對話框,影響你程式的執行.

____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周二 21 五月 - 4:34

是這樣加-號嗎?
改完程式如下:

(defun c:123 ()
(PROMPT "選取範圍內 紅色線 黃色線 青色線 紫色線 的線型為隱藏線 ")
(command "change" (ssget '((-4 . "<OR" ) (62 . 1)(62 . 2)(62 . 4)(62 . 6)(-4 . "OR>"))) "" "P" "LT" "HIDDEN" "")
(PROMPT "選取範圍內 隱藏線除外的線為綠色 線型為BYBLOCK ")
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "P" "LT" "BYBLOCK" "C" "3" "")
(PROMPT "選取範圍內 隱藏線除外的線為綠色 刪除覆線 ")
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "-OVERKILL" "")
(prin1))

( <>為半形,因無法顯示改打全形)


執行後的動作我貼在以下:

指令: 123 選取範圍內 紅色線 黃色線 青色線 紫色線 的線型為隱藏線 change
選取物件: 指定對角點: 找到 5 個
選取物件:
選取物件: 找到 5 個
選取物件: 指定變更點或 [性質(P)]: P
輸入要變更的性質
[顏色(C)/立面(E)/圖層(LA)/線型(LT)/線型比例(S)/線粗(LW)/厚度(T)/材料(M)/可註解(A)]: LT
輸入新線型名稱 : HIDDEN
輸入要變更的性質
[顏色(C)/立面(E)/圖層(LA)/線型(LT)/線型比例(S)/線粗(LW)/厚度(T)/材料(M)/可註解(A)]:
指令: 選取範圍內 隱藏線除外的線為綠色 線型為BYBLOCK change
選取物件: 指定對角點: 找到 24 個
選取物件:
選取物件: 找到 24 個
選取物件: 指定變更點或 [性質(P)]: P
輸入要變更的性質
[顏色(C)/立面(E)/圖層(LA)/線型(LT)/線型比例(S)/線粗(LW)/厚度(T)/材料(M)/可註解(A)]: LT
輸入新線型名稱 : BYBLOCK
輸入要變更的性質
[顏色(C)/立面(E)/圖層(LA)/線型(LT)/線型比例(S)/線粗(LW)/厚度(T)/材料(M)/可註解(A)]: C
新顏色 [全彩(T)/顏色表(CO)] <多種的>: 3
輸入要變更的性質
[顏色(C)/立面(E)/圖層(LA)/線型(LT)/線型比例(S)/線粗(LW)/厚度(T)/材料(M)/可註解(A)]:
指令: 選取範圍內 隱藏線除外的線為綠色 刪除覆線 change
選取物件: 指定對角點: 找到 24 個
選取物件:
選取物件: 找到 24 個
選取物件: 指定變更點或 [性質(P)]: -OVERKILL
需要點或選項關鍵字。
; 錯誤: 函數被取消

請問最後OVERKILL部份是怎麼修改才能執行。
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周二 21 五月 - 4:38

或是要怎麼改寫成等待讓我自行輸入OVERKILL指令
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 Tiger&蘋果爸 周二 21 五月 - 4:57

aaronchung.tw 寫到:選取物件: 指定變更點或 [性質(P)]: -OVERKILL
這個表示「選取步驟」還沒有執行完畢!
建議可以改為選取執行完畢後,結束步驟再自行輸入-OVERKILL

____________________________________________________________________________________
👉[好康]🎁加入專屬B取得大補帖及看2D+3D影片(點我)👈
[討論]如何在LISP程式中使用外掛指令來應用 Sesa2011 [討論]如何在LISP程式中使用外掛指令來應用 Youtub11 [討論]如何在LISP程式中使用外掛指令來應用 Oiea2011 [討論]如何在LISP程式中使用外掛指令來應用 Oe20011 [討論]如何在LISP程式中使用外掛指令來應用 Fbi20011 [討論]如何在LISP程式中使用外掛指令來應用 Line2011
Tiger&蘋果爸
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 21076
年齡 : 48
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照/吸貓
個性 : 幽默/樂觀/善良
使用年資 : 20↑
使用版本 : AutoCAD 2022
經驗值 : 88421
威望值 : 16930
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i.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

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周二 21 五月 - 5:36

以下這一行不完整,因為change選取完後,還少了一個"enter",
也就是你不執行"性質(p)"的修改,要再打一個"",
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "-OVERKILL" "")

改寫成下列這行,至少你的overkill會開始作用,
(command "change" (ssget '((-4 . "<NOT" )(-4 . "<OR" )(6 . "HIDDEN")(62 . 5)(-4 . "OR>")(-4 . "NOT>" ))) "" "" "-OVERKILL" "")
不過我是建議你,別把太多動作都寫在同一行裡,久了你會不好維護!

____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周二 21 五月 - 6:32

我用比較單純的指令作出這兩個程式比較:

第一個
(defun c:123 ()
(PROMPT "\n 挑選紅色線刪除 \n")
(command "ERASE" (ssget '((62 . 1))) "")
(prin1))

第二個
(defun c:456 ()
(PROMPT "\n 挑選紅色線並刪除重疊部分 \n")
(command "OVERKILL" (ssget '((62 . 1))) "")
(prin1))

第二個的指令我試了之前說的方法都不行,可能我不太能理解之前說的方法,可以用這比較單純的這個程式再舉例一次嗎?感謝!
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周三 22 五月 - 5:34

改成這樣試試看.

(defun c:456 ()
(PROMPT "\n 挑選紅色線並刪除重疊部分 \n")
(command "-OVERKILL" (ssget '((62 . 1))) """")
(prin1))

我簡單做個說明,在OVERKILL前加上"-",表通透式指令,可以以不出現對話框方式執行指令,可以等候你輸入再做下一個動作,一般寫程式都會使用,不然程式作用中又跳出對話框,實在是不方便.但不是所有的指令都需要加這個"-",使用前你得再查看看.

另外在最後我又加上了"",代表再按一次ENTER,我跟蘋果爸都給過你提示,在還沒加上ENTER之前,你的指令事實上是還沒有作用完的,它還在等待你下達選項,之前的CHANGE和這次的OVERKILL都是還少了一次的ENTER.

____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周三 22 五月 - 6:34

感謝ginse0727詳細的說明,我再去試試看。
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周三 22 五月 - 6:40

測試結果如下:

指令: 456
挑選紅色線並刪除重疊部分
-OVERKILL 不明的指令「-OVERKILL」。請按 F1 取得說明。
指令:


執行的程式如下:

(defun c:456 ()
(PROMPT "\n 挑選紅色線並刪除重疊部分 \n")
(command "-OVERKILL" (ssget '((62 . 1))) """")
(prin1))

會這樣是代表lisp無法使用外掛程式的指令嗎?

(我有把程式中-OVERKILL換成copy可以正確執行無誤。但要取消一次"")

註:我在cad中直接打-OVERKILL是可以動作的。
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周四 23 五月 - 5:41

程式修改如下,你再試看看行不行,

(defun c:456 ()
(PROMPT "\n 挑選紅色線並刪除重疊部分 \n")
(command "-OVERKILL" (ssget "X" '((62 . 1))) """")
(prin1))

之前沒有去測試,所以沒有發現到,
在程式第三行也就是選集裡出了一些問題.

選集我舉二個例子解釋:
(ssget '((0 . "CIRCLE")(62 . 1))),表示選取圖元為"紅色的圓",
(ssget '((0 . "TEXT")(8 . AA)(62 . 2))),表示選取AA圖層下圖元為"紅色的文字",

你的選集(ssget '((62 . 1))),
意思選取紅色的??,條件似乎不夠明確.
你沒有限制條件是(0 . "LINE")或是其他型態的元件,
我不確定在限制條件不過明確的情況下,選集是否無法完成(目前測起來好像就是沒有作用).

所以我在選集裡再加上過濾條件"X",
意思是直接過濾圖面上"所有"紅色的圖元(不論是CIRCLE,LINE,MLINE....等等).
這樣選集裡就有過濾出物件了.

目前程式主要的作用是:
選取圖面上所有紅色的圖元,
只要是紅色的就刪除重疊的部份.

PS:我是用CAD 2012版本測試,跑起來沒有問題,但2006跑起來就不曉得了.
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周四 23 五月 - 6:59

2006跑出來變成以下:

指令: 123
挑選紅色線並刪除重疊部分
-OVERKILL 不明的指令「-OVERKILL」。請按 F1 取得說明。
指令:
指令: 123 不明的指令「123」。請按 F1 取得說明。
指令: 123 不明的指令「123」。請按 F1 取得說明。
指令:


難道是2006無法執行-OVERKILL,但直接打又可以,有沒有人也是裝2006版的,幫我測一下程式。感謝!
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周一 27 五月 - 23:47

想找一套2006幫你測試看看,可惜網上也找不到,公司最舊的版本還是2007,你如果可以找到下載連結點的話,po上來我再來測測看是不是程式的問題.

____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周二 28 五月 - 1:53

嗯!載點我還要找找。
ㄟ,我發現我的是2008版。
有安裝2008的朋友們有沒有人可以幫忙測試一下下面這個LISP:

(defun c:456 ()
(PROMPT "\n 挑選紅色線並刪除重疊部分 \n")
(command "-OVERKILL" (ssget "X" '((62 . 1))) """")
(prin1))

(但要有裝Express)

我是把Express直接複製到C:\Program Files\AutoCAD 2008\
就有作用,這樣安裝方式對嗎?
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 Tiger&蘋果爸 周二 28 五月 - 2:59

ginse0727 寫到:想找一套2006幫你測試看看,可惜網上也找不到,公司最舊的版本還是2007,你如果可以找到下載連結點的話,po上來我再來測測看是不是程式的問題.
我這邊可以幫忙測試!
結果:
「2011」以下版本無法執行,因為無法在LISP程式中,再執行express的overkill。
「2012」以上版本將overkill新增為AutoCAD預設功能,所以可以順利執行。
認同

____________________________________________________________________________________
👉[好康]🎁加入專屬B取得大補帖及看2D+3D影片(點我)👈
[討論]如何在LISP程式中使用外掛指令來應用 Sesa2011 [討論]如何在LISP程式中使用外掛指令來應用 Youtub11 [討論]如何在LISP程式中使用外掛指令來應用 Oiea2011 [討論]如何在LISP程式中使用外掛指令來應用 Oe20011 [討論]如何在LISP程式中使用外掛指令來應用 Fbi20011 [討論]如何在LISP程式中使用外掛指令來應用 Line2011
Tiger&蘋果爸
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 21076
年齡 : 48
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照/吸貓
個性 : 幽默/樂觀/善良
使用年資 : 20↑
使用版本 : AutoCAD 2022
經驗值 : 88421
威望值 : 16930
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i.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

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 ginse0727 周二 28 五月 - 5:40

謝謝蘋果爸的測試,既然無法在程式裡使用overkill,那你試看看改成巨集的方式,新增一個按鈕,巨集裡貼上下面這一段,
^C^C_OVERKILL;(ssget "X" '((62 . 1)));;;
試試看能不能這樣用.


____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
ginse0727
ginse0727
高級會員
高級會員

文章總數 : 256
年齡 : 49
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6590
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-12
經典問與答讀者 藍鵲61號
2011聚會勳章 男 獅子座 虎

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 adslwang 周三 29 五月 - 16:10

其實並不是不能使用 是這一行要改成
(command (C:-OVERKILL) (ssget "X" '((62 . 1))) "" "")
才能夠實際上使用透通的方法
個人淺見,這樣子沒有實值上面的意義,因為OVERKILL是單一程式,即使後面給你附加了SSGET篩選紅色圖元也只是多餘的.......
還是花時間了解OVERKILL是如何判斷重疊線段並且刪除它,還比較實在。
adslwang
adslwang
高級會員
高級會員

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

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周五 31 五月 - 4:49

adslwang 寫到:其實並不是不能使用 是這一行要改成
(command (C:-OVERKILL) (ssget "X" '((62 . 1))) "" "")
才能夠實際上使用透通的方法
個人淺見,這樣子沒有實值上面的意義,因為OVERKILL是單一程式,即使後面給你附加了SSGET篩選紅色圖元也只是多餘的.......
還是花時間了解OVERKILL是如何判斷重疊線段並且刪除它,還比較實在。

對喔!這樣確實就可以使用了沒錯,但篩選紅色圖元的功能也就沒了。

本來想利用OVERKILL來做挑選特定顏色來做刪除複雜線的功能,看來無法辦到。或許要直接寫刪除複雜線的程式,實在等級要很高。
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周五 31 五月 - 6:16

ginse0727 寫到:謝謝蘋果爸的測試,既然無法在程式裡使用overkill,那你試看看改成巨集的方式,新增一個按鈕,巨集裡貼上下面這一段,
^C^C_OVERKILL;(ssget "X" '((62 . 1)));;;
試試看能不能這樣用.



可以執行,但就無法挑顏色了
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 aaronchung.tw 周五 31 五月 - 6:25

我平時都是使用qselect指令來挑選顏色,然後使用OVERKILL指令來刪除重複線,還是說有辦法只挑選不做動作,我再自行打OVERKILL。
aaronchung.tw
aaronchung.tw
初級會員
初級會員

文章總數 : 89
年齡 : 45
來自 : Taipei
職業 : 繪圖
愛好 : 電腦網路,閑逛
個性 : 隨和
使用年資 : 8年
使用版本 : 2008
積分 : 1
經驗值 : 4956
威望值 : 25
注冊日期 : 2011-12-03
藍鵲198號
男 射手座 馬

回頂端 向下

[討論]如何在LISP程式中使用外掛指令來應用 Empty 回復: [討論]如何在LISP程式中使用外掛指令來應用

發表 由 wateraustin 周六 30 五月 - 3:24

感情,,,,這樣也許可以解決我的問題

____________________________________________________________________________________
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110 [討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10 [討論]如何在LISP程式中使用外掛指令來應用 2020-211 [討論]如何在LISP程式中使用外掛指令來應用 Aizyao11 [討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510
[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10 [討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj.png [討論]如何在LISP程式中使用外掛指令來應用 Ziao1510 [討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110 [討論]如何在LISP程式中使用外掛指令來應用 Oooa_110
wateraustin
wateraustin
一般會員
一般會員

文章總數 : 71
年齡 : 58
來自 : 台南
職業 : soho 3d,2d 模具
愛好 : pop music,movie
個性 : very good EQ
使用年資 : 30
使用版本 : 2011
經驗值 : 5268
威望值 : 15
注冊日期 : 2010-09-16
男 水瓶座 馬

回頂端 向下

回頂端


 
這個論壇的權限:
無法 在這個版面回復文章
[討論]如何在LISP程式中使用外掛指令來應用 Ioaoe110[討論]如何在LISP程式中使用外掛指令來應用 2020-310[討論]如何在LISP程式中使用外掛指令來應用 Oiu15010[討論]如何在LISP程式中使用外掛指令來應用 2020-211[討論]如何在LISP程式中使用外掛指令來應用 Ia15010[討論]如何在LISP程式中使用外掛指令來應用 Aizyao10[討論]如何在LISP程式中使用外掛指令來應用 Uos15010[討論]如何在LISP程式中使用外掛指令來應用 BPl3tjj[討論]如何在LISP程式中使用外掛指令來應用 Ziao1510
[討論]如何在LISP程式中使用外掛指令來應用 Oo-2-110[討論]如何在LISP程式中使用外掛指令來應用 Zuoiy_10[討論]如何在LISP程式中使用外掛指令來應用 Aizyao11[討論]如何在LISP程式中使用外掛指令來應用 Iyb_1510[討論]如何在LISP程式中使用外掛指令來應用 Aoe1-111[討論]如何在LISP程式中使用外掛指令來應用 Uos15011[討論]如何在LISP程式中使用外掛指令來應用 Aoe2da10[討論]如何在LISP程式中使用外掛指令來應用 Aoe2da11[討論]如何在LISP程式中使用外掛指令來應用 Aoe10