[已解決]LISP的寫法請教
4 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
[已解決]LISP的寫法請教
新手練習,以下煩請教請高手指點一二:
1.參考參考書一般都是選擇集比較多,點位的範例似乎比較少,所以我想問
如果 (setq pp1 (getpoint "第1點:"))
(setq pp2 (getpoint "下1點:"))
有什麼方法可以以LISP求得這兩點的距離?(因為會有方向性跟角度點的問題)
2.請問LINE及PLINE指令的LISP可以在資料夾內找的到嘛?
(PS:一直想要去模擬它 可是再怎麼用都試不成功)
3.我想將下面的pline
(command "pline")
(setq pp2 (getpoint "第1點:"))
(while pp2 (command pp2)
(setq pp2 (getpoint pp2 "下1點:"))
)
(command "")
(command "move" "cp" ) )
上面那一段 是我要連同框把內容物移走 也就是說有一個圖形 被包在pline不規則多邊形框內的圖形 有方什麼方法可以取得點位並帶入MOVE的指令中呢?或者要採用其它的方法呢?
1.參考參考書一般都是選擇集比較多,點位的範例似乎比較少,所以我想問
如果 (setq pp1 (getpoint "第1點:"))
(setq pp2 (getpoint "下1點:"))
有什麼方法可以以LISP求得這兩點的距離?(因為會有方向性跟角度點的問題)
2.請問LINE及PLINE指令的LISP可以在資料夾內找的到嘛?
(PS:一直想要去模擬它 可是再怎麼用都試不成功)
3.我想將下面的pline
(command "pline")
(setq pp2 (getpoint "第1點:"))
(while pp2 (command pp2)
(setq pp2 (getpoint pp2 "下1點:"))
)
(command "")
(command "move" "cp" ) )
上面那一段 是我要連同框把內容物移走 也就是說有一個圖形 被包在pline不規則多邊形框內的圖形 有方什麼方法可以取得點位並帶入MOVE的指令中呢?或者要採用其它的方法呢?
Tiger&蘋果爸 在 周一 30 五月 - 9:57 作了第 4 次修改 (原因 : 將主題顏色改為無)
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]LISP的寫法請教
1. (distance pt1 pt2)
2. 就是模擬它,如(command "line" pt1 pt2 "")
3. 請參考,依自己的需求再完善
(defun c:test()
(setq osm (getvar "osmode"))
(setq tsort '())
(setq pt1 (getpoint "\n第一點:"))
(setq tsort (cons pt1 tsort))
(vl-cmdf "pline" pt1)
(while (setq pt2 (getpoint pt1 "\n下一點:"))
(vl-cmdf pt2)
(setq tsort (cons pt2 tsort))
(setq pt1 pt2)
)
(vl-cmdf "c")
(setq ssl (entlast))
(setq ss (ssget "wp" tsort))
(if (/= ss nil)
(progn
(vl-cmdf "move" ss ssl "")
(prompt "\指定基準點:")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))
)
)
(setvar "osmode" osm)
(prin1)
)
2. 就是模擬它,如(command "line" pt1 pt2 "")
3. 請參考,依自己的需求再完善
(defun c:test()
(setq osm (getvar "osmode"))
(setq tsort '())
(setq pt1 (getpoint "\n第一點:"))
(setq tsort (cons pt1 tsort))
(vl-cmdf "pline" pt1)
(while (setq pt2 (getpoint pt1 "\n下一點:"))
(vl-cmdf pt2)
(setq tsort (cons pt2 tsort))
(setq pt1 pt2)
)
(vl-cmdf "c")
(setq ssl (entlast))
(setq ss (ssget "wp" tsort))
(if (/= ss nil)
(progn
(vl-cmdf "move" ss ssl "")
(prompt "\指定基準點:")
(while (= (logand (getvar "CmdActive") 1) 1) (command pause))
)
)
(setvar "osmode" osm)
(prin1)
)
Tiger&蘋果爸 寫到: 謝謝熱心講解分享~< 積分 +1>
[公告]關於團隊成員的回文及貢獻
Tiger&蘋果爸 在 周一 30 五月 - 9:58 作了第 1 次修改 (原因 : 加分囉~)
lsj- 初級會員
- 文章總數 : 43
年齡 : 59
來自 : 桃園
職業 : 營建工程
愛好 : 閒
個性 : 懶
使用年資 : 10↑
使用版本 : 2008
積分 : 2
經驗值 : 5506
威望值 : 110
注冊日期 : 2010-06-28
回復: [已解決]LISP的寫法請教
前輩,受教了謝謝您 都有獲得解決了
其實我是要用來加入extrim來修剪局部的圖檔,沒有這個的話會浪費我很多時間再修邊框
不過再請教一下(setq tsort '()) 第一次看到setq之後的括弧也可以用空的 這有什麼特別的功能 還有我看書上有很多座標串列都會加入前面那一點 是所有的座標都要加入那一點嘛?
再次謝謝您的幫忙
其實我是要用來加入extrim來修剪局部的圖檔,沒有這個的話會浪費我很多時間再修邊框
不過再請教一下(setq tsort '()) 第一次看到setq之後的括弧也可以用空的 這有什麼特別的功能 還有我看書上有很多座標串列都會加入前面那一點 是所有的座標都要加入那一點嘛?
再次謝謝您的幫忙
adslwang 在 周六 28 五月 - 16:53 作了第 1 次修改 (原因 : 修改文字)
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]LISP的寫法請教
(setq tsort '()) = (setq tsort nil)
指令: (setq a '(1 1))
(1 1)
指令: (setq b (list 1 1))
(1 1)
指令: (setq c '())
nil
指令: (setq d (list))
nil
指令: (setq a '(1 1))
(1 1)
指令: (setq b (list 1 1))
(1 1)
指令: (setq c '())
nil
指令: (setq d (list))
nil
lsj- 初級會員
- 文章總數 : 43
年齡 : 59
來自 : 桃園
職業 : 營建工程
愛好 : 閒
個性 : 懶
使用年資 : 10↑
使用版本 : 2008
積分 : 2
經驗值 : 5506
威望值 : 110
注冊日期 : 2010-06-28
回復: [已解決]LISP的寫法請教
lsj 寫到:(setq tsort '()) = (setq tsort nil)
指令: (setq a '(1 1))
(1 1)
指令: (setq b (list 1 1))
(1 1)
指令: (setq c '())
nil
指令: (setq d (list))
nil
前輩,您說的很詳細,謝謝您的指教
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]LISP的寫法請教
若是要使用EXTRIM
之前我有試過使用巨集(連續指令)
你可以試試看合不合用~
矩形修剪巨集語法:
^C^CRECTANG;\\EXTRIM;L;\ERASE;L;;
之前我有試過使用巨集(連續指令)
你可以試試看合不合用~
矩形修剪巨集語法:
^C^CRECTANG;\\EXTRIM;L;\ERASE;L;;
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
高手雲集的地方!!
這裡真的是高手雲集的地方啊!!
看著LISP的語法,我都要頭昏了~
不過,我還是可以使用蘋果爸老師的巨集,
謝謝您的提供!
看著LISP的語法,我都要頭昏了~
不過,我還是可以使用蘋果爸老師的巨集,
謝謝您的提供!
YU HSIANG- 初級會員
- 文章總數 : 140
年齡 : 46
來自 : 新北市
職業 : 繪圖
愛好 : 上網
個性 : 靜
使用年資 : 12
使用版本 : AUTO CAD 2010
積分 : 9
經驗值 : 5657
威望值 : 195
注冊日期 : 2011-05-05
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章