[討論]繪圖前儲存變數值於繪圖完成後復原的副程式
2 posters
[討論]繪圖前儲存變數值於繪圖完成後復原的副程式
很方便的副程式
書上的範例
也可依主程式需求修改擴充
程式碼:
(defun s_acad_sysvar()
(setq acad_sysvar_list '("clayer" "osmode" "textstyle" "cmdecho" "celtype"))
(setq old_sysvar_list (mapcar 'getvar acad_sysvar_list))
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "undo" "be")
)
(defun r_acad_sysvar()
(command "undo" "e")
(mapcar 'setvar acad_sysvar_list old_sysvar_list)
(prin1)
)
書上的範例
也可依主程式需求修改擴充
程式碼:
(defun s_acad_sysvar()
(setq acad_sysvar_list '("clayer" "osmode" "textstyle" "cmdecho" "celtype"))
(setq old_sysvar_list (mapcar 'getvar acad_sysvar_list))
(setvar "cmdecho" 0)
(setvar "osmode" 0)
(command "undo" "be")
)
(defun r_acad_sysvar()
(command "undo" "e")
(mapcar 'setvar acad_sysvar_list old_sysvar_list)
(prin1)
)
chengshunyi- 高級會員
- 文章總數 : 67
年齡 : 58
來自 : 台北市文山區
職業 : 建築規劃
愛好 : 散步
個性 : 溫和
使用年資 : 15
使用版本 : 2018
經驗值 : 5760
威望值 : 97
注冊日期 : 2010-07-04
回復: [討論]繪圖前儲存變數值於繪圖完成後復原的副程式
以前學習到的方式為:
謝謝分享,這裡學習了MAPCAR函數的使用~
- 代碼:
(DEFUN STARTLISP ()
(SETVAR "CMDECHO" 0)
(COMMAND "UNDO" "BE")
(SETQ OLDOSMODE (GETVAR "OSMODE"))
(SETQ OLDLAYEAR (GETVAR "CLAYER"))
(SETVAR "OSMODE" 0)
)
(DEFUN ENDLISP ()
(SETVAR "OSMODE" OLDOSMODE)
(SETVAR "CLAYER" OLDLAYEAR)
(COMMAND "UNDO" "E")
(PRIN1)
)
謝謝分享,這裡學習了MAPCAR函數的使用~
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
這個論壇的權限:
您 無法 在這個版面回復文章*** disclaimer. 免責聲明 ***
“AUTOCAD®, and AUTODESK® are registered trademarks of Autodesk, Inc., its subsidiaries, and/or its affiliates.”
“This website is independent of Autodesk, Inc., and is not affiliated with, authorized, endorsed, sponsored, or otherwise approved of by Autodesk, Inc.”
“AUTOCAD® 和 AUTODESK® 是 Autodesk, Inc. 及其子公司和/或關聯公司的註冊商標。此網站與 Autodesk, Inc. 無關,並且未經 Autodesk, Inc. 授權、認可、贊助或以其他方式批准”
“AutoCAD 顧問論壇為台灣創立之網站,我們以熱忱服務 AutoCAD 用戶,致力於技術討論、知識分享及教學影片(課程)等內容,為 AutoCAD 社群提供支持與貢獻”