[已解決]IF問題請教
5 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
[已解決]IF問題請教
我的問題如下:
1.我想練習一個可以輸入A或S就可以進入到那一個程序,可是不管我輸入什麼只一直停留在游標轉角度上跑
2.紅色的部份是兩相矛盾的,也嘗試刪除其中之一,依然沒有作用....
以上,我想應該是觀念出現了問題,請各位前輩幫忙一下,謝謝........
(defun c:pt()
(setq sr (getstring "請輸入 (A)兩點轉游標轉角度 (S)查角度值(A):"))
(if (= sr "")(setq sr "A"))
(setq sr (strcase sr))
(COND
(if (= sr "A")
(setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
(command "snapang" angh "")
)
(if (= sr "S")
(setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
)
(t (prompt"\n 請輸入正確字體"))
)
(prin1)
)
1.我想練習一個可以輸入A或S就可以進入到那一個程序,可是不管我輸入什麼只一直停留在游標轉角度上跑
2.紅色的部份是兩相矛盾的,也嘗試刪除其中之一,依然沒有作用....
以上,我想應該是觀念出現了問題,請各位前輩幫忙一下,謝謝........
(defun c:pt()
(setq sr (getstring "請輸入 (A)兩點轉游標轉角度 (S)查角度值(A):"))
(if (= sr "")(setq sr "A"))
(setq sr (strcase sr))
(COND
(if (= sr "A")
(setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
(command "snapang" angh "")
)
(if (= sr "S")
(setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
)
(t (prompt"\n 請輸入正確字體"))
)
(prin1)
)
adslwang 在 周六 11 6月 - 20:42 作了第 2 次修改
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]IF問題請教
已使用cond就不用if
直接用cond做判斷即可
第一個if也拿掉
(COND
((= sr "A")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
(command "snapang" angh "")
)
)
((= sr "S")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
)
)
(t (prompt"\n 請輸入正確字體"))
)
我沒測試您試一下吧
直接用cond做判斷即可
第一個if也拿掉
(COND
((= sr "A")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
(command "snapang" angh "")
)
)
((= sr "S")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
)
)
(t (prompt"\n 請輸入正確字體"))
)
我沒測試您試一下吧
Tiger&蘋果爸 寫到: 謝謝熱心回覆~< 積分 +1>
[公告]關於團隊成員的回文及貢獻
Tiger&蘋果爸 在 周六 11 6月 - 22:45 作了第 1 次修改 (原因 : 非常專業喔~)
tarpon- 中級會員
- 文章總數 : 209
年齡 : 34
來自 : 台北
職業 : 設計
愛好 : 打球
個性 : 溫和
使用年資 : 5年
使用版本 : 2006
積分 : 6
經驗值 : 6252
威望值 : 263
注冊日期 : 2010-07-01
回復: [已解決]IF問題請教
tarpon 寫到:已使用cond就不用if
直接用cond做判斷即可
第一個if也拿掉
(COND
((= sr "A")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
(command "snapang" angh "")
)
)
((= sr "S")
((setq asw1 (getpoint "\n 對準物件第1點"))
(setq asw2 (getpoint asw1 "\n 對準物件第2點"))
(setq ang (angle asw1 asw2))
(setq angh (* ang 57.29))
)
)
(t (prompt"\n 請輸入正確字體"))
)
我沒測試您試一下吧
前輩,謝謝您 的確是多加了IF的問題,練習終於成功了,謝謝您的幫忙。
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]IF問題請教
1. 可再修改限制輸入A或S
(initget "A a S s")
(setq sr (getkword "\n請輸入[兩點轉游標轉角度(A)/查角度值(S)] :"))
(if (= sr nil)(setq sr "A"))
2. 57.29為(/ 180 pi)略值,若用在計算上不建議取略值
個人淺見供參考
(initget "A a S s")
(setq sr (getkword "\n請輸入[兩點轉游標轉角度(A)/查角度值(S)] :"))
(if (= sr nil)(setq sr "A"))
2. 57.29為(/ 180 pi)略值,若用在計算上不建議取略值
個人淺見供參考
lsj- 初級會員
- 文章總數 : 43
年齡 : 59
來自 : 桃園
職業 : 營建工程
愛好 : 閒
個性 : 懶
使用年資 : 10↑
使用版本 : 2008
積分 : 2
經驗值 : 5506
威望值 : 110
注冊日期 : 2010-06-28
回復: [已解決]IF問題請教
的確!lsj 寫到:1. 可再修改限制輸入A或S
(initget "A a S s")
(setq sr (getkword "\n請輸入[兩點轉游標轉角度(A)/查角度值(S)] :"))
(if (= sr nil)(setq sr "A"))
2. 57.29為(/ 180 pi)略值,若用在計算上不建議取略值
個人淺見供參考
再將已上2點加入後,整個程式就更完整!
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
回復: [已解決]IF問題請教
謝謝兩位前輩教導
再請問一下57.29我有兩個問題想問:
1.如不採用57.29則採用(/ 180 pi)是比較好的方式嘛 還是有其它的方法呢
再請問一下57.29我有兩個問題想問:
1.如不採用57.29則採用(/ 180 pi)是比較好的方式嘛 還是有其它的方法呢
adslwang- 高級會員
- 文章總數 : 376
年齡 : 46
來自 : 台南
職業 : 自由業
愛好 : 電腦、旅行
個性 : 樂觀
使用年資 : 1年
使用版本 : 2009
積分 : 17
經驗值 : 7211
威望值 : 356
回帖精華 : 1
注冊日期 : 2008-10-02
回復: [已解決]IF問題請教
感謝版大分享這各問題~有學到歐~
avene- 一般會員
- 文章總數 : 61
年齡 : 46
來自 : 桃園
職業 : 製圖
愛好 : 羽毛球
個性 : 內向
使用年資 : 5
使用版本 : 2009
經驗值 : 5086
威望值 : 9
注冊日期 : 2011-05-13
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章