老師這程式最後能否改良最後顯示線的數量
2 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
老師這程式最後能否改良最後顯示線的數量
; Duong han
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ)
)
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ)
)
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
在你的程式碼加上 >> (princ (strcat "\n已繪製 " (itoa n) " 條線段。"))
會顯示結果 >> 已繪製 xx 條線段。
會顯示結果 >> 已繪製 xx 條線段。
- 代碼:
(setvar "OSMODE" 1791)
(princ (strcat "\n已繪製 " (itoa n) " 條線段。"))
(princ)
____________________________________________________________________________________
👉[訂購]AutoCAD圖塊大師課程(點我)👈
rickyyang likes this post
使用程式後開頭少一條線 能否再修改璧如目前使用文字圖層顏色6號色使用這指令後能強制換成標註顏色6號色嗎謝謝
; Duong han
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ(strcat"\已繪製 " (itoa n) " 條線段。"))
(princ)
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ(strcat"\已繪製 " (itoa n) " 條線段。"))
(princ)
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
你的程式一開始請加入以下這行程式碼,這樣執行速度會快一點
(SETVAR "CMDECHO" 0)
想要自訂圖層及顏色可以參考以下這行程式碼
(command "layer" "make" "DIM" "color" 3 "" "")
說明:
(command "layer" "make" "圖層名稱" "color" 顏色代碼 "" "")
(SETVAR "CMDECHO" 0)
想要自訂圖層及顏色可以參考以下這行程式碼
(command "layer" "make" "DIM" "color" 3 "" "")
說明:
(command "layer" "make" "圖層名稱" "color" 顏色代碼 "" "")
- 代碼:
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(SETVAR "CMDECHO" 0)
(command "layer" "make" "DIM" "color" 3 "" "")
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
____________________________________________________________________________________
👉[訂購]AutoCAD圖塊大師課程(點我)👈
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
程式已成功老師謝謝你
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
; Duong han
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(SETVAR "CMDECHO" 0)
(SETQ OLDLAYEAR (GETVAR "CLAYER"))
(PROMPT "\n建立標註")
(command "LAYER" "MAKE" 標註"" "COLOR" 2 "" "")
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ (strcat "\n已繪製1+ " (itoa n) " 條線段。"))
(princ)
)
(defun C:10 ( / p1 p2 p3 p4 a b l n deltaX deltaY i x1 y1 x2 y2 )
(SETVAR "CMDECHO" 0)
(SETQ OLDLAYEAR (GETVAR "CLAYER"))
(PROMPT "\n建立標註")
(command "LAYER" "MAKE" 標註"" "COLOR" 2 "" "")
(setq p1 (getpoint "Start point : ") )
(setq p2 (getpoint p1 "End point : ") )
; (setq a (getdist "Distance : ") )
; (setq b (getdist "Lenght : ") )
(setq a 10 )
(setq b 10 )
(setq l (distance p1 p2) )
(setq n (fix ( / l a ) ) )
(setq deltaX ( - (car p2) (car p1) ) )
(setq deltaY ( - (cadr p2) (cadr p1) ) )
(setq i 0)
(setvar "OSMODE" 0)
(command "_UNDO" "_GROUP")
(while (<= i n)
(setq x1 ( + (car p1) (* i (* (/ a l) deltaX )
)
)
)
(setq y1 ( + (cadr p1) (* i (* ( / a l ) deltaY )
)
)
)
(setq p3 (list x1 y1) )
(setq x2 ( + x1 (* -1 (* b (/ deltaY l) )
)
)
)
(setq y2 ( + y1 (* b (/ deltaX l)
)
)
)
(setq p4 (list x2 y2) )
(command "LINE" p3 p4 "")
(setq i (+ i 1) )
)
(command "_UNDO" "_END")
(setvar "OSMODE" 1791)
(princ (strcat "\n已繪製1+ " (itoa n) " 條線段。"))
(princ)
)
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
請問老師後來發現指令行的線顯示線條少一條線段 和性質面板的數量不一樣 性質面板的數量是正確的數量有辦法在改善嗎
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
回復: 老師這程式最後能否改良最後顯示線的數量
因為 n 值是等分數 只要在程式碼中加1即可shyrchu 寫到:請問老師後來發現指令行的線顯示線條少一條線段 和性質面板的數量不一樣 性質面板的數量是正確的數量有辦法在改善嗎
(princ (strcat "\n已繪製 " (itoa (1+ n)) " 條線段。"))
Tiger&蘋果爸 在 2024-03-25, 09:20 作了第 1 次修改
____________________________________________________________________________________
👉[訂購]AutoCAD圖塊大師課程(點我)👈
rickyyang likes this post
回復: 老師這程式最後能否改良最後顯示線的數量
程式以改善指令行的線數量和性質面板線數量一樣謝謝你
shyrchu- 贊助會員
- 文章總數 : 59
年齡 : 49
來自 : 草屯鎮
職業 : 鐵工
愛好 : 學習
個性 : 文静
使用年資 : 1
使用版本 : LT2024
經驗值 : 766
威望值 : 24
注冊日期 : 2023-05-28
Tiger&蘋果爸 and rickyyang like this post
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章