明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 13971|回复: 50

[经验] 打造一个适合自己的运行环境(系统变量设置)

    [复制链接]
发表于 2016-5-30 20:00 | 显示全部楼层 |阅读模式
本帖最后由 ㄘ丶转裑ㄧ灬 于 2022-7-19 08:26 编辑

如题。。
加载下面的代码后,可用命令“4”循环切换两种环境,
可自行修改为习惯的方式,后面都有注释(注释中有些没有变量值标示,自行百度)。
几年工作中慢慢完善的,希望能帮到大家。

2016.06.10:新增自动恢复捕捉

  1. ;;;;;;;;;;;***********************自动恢复捕捉(不管程序自身出错或手动取消,均自动恢复为设定的值)
  2. ;;;bbs.mjtd.com/thread-107586-1-1.html
  3. (defun resetosmode (v1 v2 /)
  4.   (if (/= (getvar "osmode") 4775)
  5.     (setvar "osmode" 2183);;;;如果要“最近点”,改为2695;;;建议:平常不要用最近点,要用时输nea或设组合按键
  6.   )
  7.   (princ)
  8. )
  9. ;;;;;构造编辑器反应器对象;;如果没有数据则为 nil
  10. (vlr-editor-reactor
  11.   nil
  12.   '(
  13.     (:vlr-lispEnded . ResetOsmode) ;;;已完成对 AutoLISP 表达式的求值;;;可把此项删除
  14.     (:vlr-lispCancelled . ResetOsmode) ;;;已取消对 AutoLISP 表达式的求值
  15.     ;;;(:vlr-commandEnded . ResetOsmode)  ;;;已完成某 AutoCAD 命令
  16.     ;;;(:vlr-commandCancelled . ResetOsmode) ;;; 已取消某 AutoCAD 命令
  17.     ;;;(:vlr-commandFailed . ResetOsmode);;; 无法完成某 AutoCAD 命令
  18.    )
  19. )

  20. ;;;;;;;***************************打造一个适合自己的运行环境(即设置自己需要的系统变量)
  21. (defun c:4 ()
  22.   (if (= 4_tt 0)
  23.     (progn
  24.       (c:qht_01)
  25.       (setq 4_tt 1)
  26.     )
  27.     (progn
  28.       (c:qht_02)
  29.       (setq 4_tt 0)
  30.     )
  31.   )
  32.   (princ)
  33. )
  34. (defun c:qht_01 ()
  35.   (setvar "osmode" 2183);;;;对象捕捉方式1(如果要“最近点”,把数字改为2695)
  36. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;建议:平常不要用最近点,要用时输nea或设组合快捷键
  37.   (setvar "selectionpreview" 0);;;;选择集预览模式
  38.   (setvar "previewfilter" 31);;;;选择集预览模式
  39.   (setvar "autosnap" 63);;;;自动捕捉设置
  40.   (setvar "xclipframe" 0);;;;块剪裁边界不显示(若原图参数不为0,执行时会重生成)
  41.   ;;;(setvar "frameselection" 0);;;;块剪裁边界不会被选中(即无夹点显示)
  42.   (setvar "pickfirst" 1);;;;选择集模式(先选择后执行)
  43.   (setvar "qaflags" 0);;;;选择执行方式
  44.   (setvar "edgemode" 0);;;;修剪和延伸时,其边不假想延伸
  45.   (setvar "vtenable" 2);;;;动态视图动画关闭
  46.   (setvar "plinewid" 0);;;;多段线宽度
  47.   (setvar "blipmode" 0);;;;控制点回显
  48.   (setvar "AUPREC"   4);;;;角度精度
  49.   (setvar "LUNITS"   2);;;; 线性单位
  50.   (setvar "LUPREC"   4);;;;线性精度
  51.   (setvar "CMDDIA"   1);;;;显示外部命令及plot对话框:是
  52.   (setvar "aunits" 0);;;;角度单位:十进制度数
  53.   (setvar "filedia" 1);;;;显示文件定位对话框
  54.   (setvar "mirrtext" 0);;;;镜像文字:否
  55.   (setvar "SORTENTS" 127);;;;图元排序顺序
  56.   (setvar "CHAMFERA" 0);;;;倒角的长度A
  57.   (setvar "CHAMFERB" 0);;;; 倒角的长度B
  58.   (setvar "Elevation" 0);;;; 当前标高设为0
  59.   ;;;(setvar "osnapz" 1);;;;使用当前标高替换z值;;因替换后在三维操作时不好捕捉,故取消此项
  60.   (setvar "dimassoc" 1);;;;新标注可关联:否
  61.   (setvar "osnapoverride" 0);;;;组合按键控制(用于组合按键用过后框选不了的情况)
  62.   (setvar "snapmode" 0);;;;捕捉间距:否
  63.   (setvar "dynmode" -2);;;;动态输入(无)
  64.   (setvar "coords" 2);;;;图形坐标显示(极值)
  65.   (setvar "shortcutmenu" 0);;;;自定义右键单击(右键均为确认)
  66.   (setvar "pickbox" 6);;;;拾取框大小:6
  67.   (setvar "GRIDMODE" 0);;;; 显示点栅格:否
  68.   (setvar "LISPINIT" 1);;;;AutoLISP 函数和变量只在当前绘图任务中有效
  69.   (setvar "SLTSCALE" 0);;;;1:视口比例决定线型比例
  70.   (setvar "DIMZIN"   8);;;; 控制是否对主单位值作消零处理, 8:消除后续零
  71.   (setvar "cursorsize" 100);;;;十字光标大小:100
  72.   (setvar "zoomfactor" 85);;;;鼠标滑轮缩放比例(默认为60)
  73.   ;;;(setvar "layernotify" 0);;;;如果找到未协调的新图层,不显示警告;;打印时好像出现过问题,故取消此项
  74.   (setvar "re-init" 16);;;;重新加载pgp
  75.   (setvar "qpmode" -1);;;;不显示快捷特性面板
  76.   (setvar "tooltips" 0);;;;显示工具提示:否
  77.   (setvar "rollovertips" 0);;;;显示鼠标悬停提示:否(适用于CAD2009及更高版本)
  78.   (setvar "hpmaxlines" 200000);;;;图案填充线的最大数目(CAD2006无效)
  79.   (setvar "ucsdetect" 0);;;;动态UCS关闭(适用于CAD2010及更高版本)
  80.   (setvar "hpquickpreview" 0);;;;控制在指定填充区域时是否显示填充图案的预览,设为0会加快填充速度(适用于CAD2010及更高版本)
  81.   (setvar "menubar" 0);;;;关闭菜单栏(适用于CAD2010及更高版本)*****以此区分当前设置的变量状态及捕捉方式
  82.   (setvar "gripmultifunctional" 1);;;;动态夹点菜单关闭(适用于CAD2010及更高版本)
  83.   (setvar "statusbar" 1);;;;状态栏控制:不隐藏(适用于CAD2010及更高版本)
  84.   (setvar "navbardisplay" 0);;;关闭三维小控制栏
  85.   (setvar "proxyshow" 1);;;显示代理图形
  86.   (setvar "proxynotice" 0);;;代理图形对话框(不显示)
  87.    (setenv "DefaultFormatForSave" "24");;;设置CAD默认保存文件格式2004(24-2004,36-2007,48-2010,60-2013)
  88.    (setvar "ISAVEBAK" 0);;;控制备份文件 (BAK) 的创建。1-创建, 0-不创建
  89.   (setvar "cmdecho" 0)
  90.   (command "_.Cecolor" "Bylayer")
  91.   (princ)
  92. )
  93. (defun c:qht_02 ()
  94.   (setvar "osmode" 4775);;;;对象捕捉方式2
  95.   (setvar "shortcutmenu" 0);;;;自定义右键单击(0.右键均为确认)
  96. ;;;(setvar "frameselection" 1);;;;块剪裁边界有夹点显示
  97.   (setvar "dynmode" 3);;;;动态输入(显示)
  98.   (setvar "edgemode" 1);;;;修剪和延伸时,其边假想延伸
  99.   (setvar "qpmode" 1);;;;显示快捷特性面板
  100.   (setvar "tooltips" 1);;;;显示工具提示:是
  101.   (setvar "rollovertips" 1);;;;显示鼠标悬停提示:是(适用于CAD2009及更高版本)
  102.   (setvar "menubar" 1);;;;显示菜单栏(适用于CAD2010及更高版本)*****以此区分当前设置的变量状态及捕捉方式
  103.   (setvar "gripmultifunctional" 3);;;;动态夹点菜单显示(适用于CAD2010及更高版本)
  104.   (setvar "statusbar" 1);;;;状态栏控制:不隐藏(适用于CAD2010及更高版本) ;;还是不要隐藏的好,省不了多少屏幕空间,所以两个程序都改为了1
  105.   (setenv "DefaultFormatForSave" "60");;;设置CAD默认保存文件格式2013(24-2004,36-2007,48-2010,60-2013)
  106.   (setvar "cmdecho" 0)
  107.   (princ)
  108. )
  109. ;;打印样式.ctb与.stb互转命令:Convertpstyles;;此条仅为记录此命令
  110. ;;;;;
  111. ;;;;;




06.20:稍微更新下(恢复动态、插入单位)

  1. ;;;;;;;;;;;*********************自动恢复捕捉(不管程序自身出错或手动取消,均自动恢复为设定的值)
  2. ;;;;http://bbs.mjtd.com/thread-107586-1-1.html
  3. ;;;;http://bbs.xdcad.net/forum.php?m ... =670615&pid=3485091
  4. (vl-load-com)
  5. (defun ResetOSmode (v1 v2 /)
  6.   (if (/= (getvar 'Osmode) 4775)
  7.   (progn
  8.     (setvar 'Osmode 2183)
  9.     (setvar 'DYNmode 2)
  10.     (setvar 'DYNprompt 0)
  11.   )
  12.   )
  13.   (princ)
  14. )
  15. ;;;构造编辑器反应器对象
  16. (vlr-editor-reactor
  17.   nil
  18.   '(
  19.     ;(:vlr-lispEnded . ResetOsmode) ;;;已完成对 AutoLISP 表达式的求值
  20.     (:vlr-lispCancelled . ResetOsmode) ;;;已取消对 AutoLISP 表达式的求值
  21.     ;(:vlr-commandEnded . ResetOsmode)  ;;;已完成某 AutoCAD 命令
  22.     ;(:vlr-commandCancelled . ResetOsmode) ;;; 已取消某 AutoCAD 命令
  23.     ;(:vlr-commandFailed . ResetOsmode);;; 无法完成某 AutoCAD 命令
  24.    )
  25. )
  26. ;;;;;;;*************************************打造一个适合自己的运行环境(即设置自己需要的系统变量)
  27. (defun c:4 ()
  28.   (if (= 4_tt 0)
  29.     (progn (c:qht_01) (setq 4_tt 1)  )
  30.     (progn (c:qht_02) (setq 4_tt 0)  )
  31.   )
  32.   (princ)
  33. )
  34. (defun c:qht_01 ()
  35.   (setvar "osmode" 2183);;;;对象捕捉方式1(如果要“最近点”,把数字改为2695)
  36. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;建议:平常不要用最近点,要用时输nea或设组合按键
  37.   (setvar "selectionpreview" 0);;;;选择集预览模式
  38.   (setvar "previewfilter" 31);;;;选择集预览模式
  39.   (setvar "autosnap" 63);;;;自动捕捉设置
  40.   (setvar "xclipframe" 0);;;;块剪裁边界不显示(若原图参数不为0,执行时会重生成)
  41.   ;;;(setvar "frameselection" 0);;;;块剪裁边界不会被选中(即无夹点显示)
  42.   (setvar "pickfirst" 1);;;;选择集模式(先选择后执行)
  43.   (setvar "qaflags" 0);;;;选择执行方式
  44.   (setvar "edgemode" 0);;;;修剪和延伸时,其边不假想延伸
  45.   (setvar "vtenable" 2);;;;动态视图动画关闭
  46.   (setvar "plinewid" 0);;;;多段线宽度
  47.   (setvar "blipmode" 0);;;;控制点回显
  48.   (setvar "AUPREC"   4);;;;角度精度:小数点后4位
  49.   (setvar "LUNITS"   2);;;; 线性长度类型:小数
  50.   (setvar "LUPREC"   4);;;;线性长度精度:小数点后4位
  51.   (setvar "insunits" 4);;;;插入时缩放单位:毫米
  52.   (setvar "CMDDIA"   1);;;;显示外部命令及plot对话框:是
  53.   (setvar "aunits" 0);;;;角度单位:十进制度数
  54.   (setvar "filedia" 1);;;;显示文件定位对话框
  55.   (setvar "mirrtext" 0);;;;镜像文字:否
  56.   (setvar "SORTENTS" 127);;;;图元排序顺序
  57.   (setvar "CHAMFERA" 0);;;;倒角的长度A
  58.   (setvar "CHAMFERB" 0);;;; 倒角的长度B
  59.   (setvar "Elevation" 0);;;; 当前标高设为0
  60.   ;;;(setvar "osnapz" 1);;;;使用当前标高替换z值;;因替换后在三维操作时不好捕捉,故取消此项
  61.   (setvar "dimassoc" 1);;;;新标注可关联:否
  62.   (setvar "osnapoverride" 0);;;;组合按键控制(用于组合按键用过后框选不了的情况)
  63.   (setvar "snapmode" 0);;;;捕捉间距:否
  64.   (setvar 'DYNmode 2);;;;动态输入(无)
  65.   (setvar 'DYNprompt 0);;;不显示动态输入中的提示
  66.   (setvar "DYNPIFORMAT" 0);;;动态输入格式:极轴格式
  67.   (setvar "DYNPICOORDS" 0);;;动态输入格式:相对坐标
  68.   (setvar "DYNPIVIS" 1);;;动态输入可见性:需要一个点时
  69.   (setvar "coords" 2);;;;图形坐标显示(极值)
  70.   (setvar "shortcutmenu" 0);;;;自定义右键单击(右键均为确认)
  71.   (setvar "pickbox" 6);;;;拾取框大小:6
  72.   (setvar "GRIDMODE" 0);;;; 显示点栅格:否
  73.   (setvar "LISPINIT" 1);;;;AutoLISP 函数和变量只在当前绘图任务中有效
  74.   (setvar "SLTSCALE" 0);;;;1:视口比例决定线型比例
  75.   (setvar "DIMZIN"   8);;;; 控制是否对主单位值作消零处理, 8:消除后续零
  76.   (setvar "cursorsize" 100);;;;十字光标大小:100
  77.   (setvar "zoomfactor" 85);;;;鼠标滑轮缩放比例(默认为60)
  78.   ;;(setvar "FONTALT" "hztxt.shx");;;默认用此字体替换没有的字体;;;还是用默认的simplex.shx,用其它的会出现形未定义
  79.   ;;;(setvar "layernotify" 0);;;;如果找到未协调的新图层,不显示警告;;打印时好像出现过问题,故取消此项
  80.   (setvar "re-init" 16);;;;重新加载pgp
  81.   (setvar "qpmode" 2);;;;不显示快捷特性面板;;-1不显示,2有限制的显示
  82.   (setvar "tooltips" 0);;;;显示工具提示:否
  83.   (setvar "rollovertips" 0);;;;显示鼠标悬停提示:否(适用于CAD2009及更高版本)
  84.   (setvar "HPASSOC" 1);;;填充图案是否关联:是
  85.   (setvar "hpmaxlines" 200000);;;;图案填充线的最大数目(CAD2006无效)
  86.   (setvar "ucsdetect" 0);;;;动态UCS关闭(适用于CAD2010及更高版本)
  87.   (setvar "hpquickpreview" 0);;;;控制在指定填充区域时是否显示填充图案的预览,设为0会加快填充速度(适用于CAD2010及更高版本)
  88.   (setvar "menubar" 0);;;;关闭菜单栏(适用于CAD2010及更高版本)*****以此区分当前设置的变量状态及捕捉方式>>>>>>>>>>>>>>>
  89.   (setvar "gripmultifunctional" 1);;;;动态夹点菜单关闭(适用于CAD2010及更高版本)
  90.   (setvar "statusbar" 1);;;;状态栏控制:不隐藏(适用于CAD2010及更高版本)
  91.   (setvar "navbardisplay" 0);;;关闭三维小控制栏
  92.   (setvar "proxyshow" 1);;;显示代理图形
  93.   (setvar "proxynotice" 0);;;代理图形对话框(不显示)
  94.    (setenv "DefaultFormatForSave" "48");;;设置CAD默认保存文件格式(24-2004,36-2007,48-2010,60-2013)
  95.    (setvar "ISAVEBAK" 0);;;控制备份文件 (BAK) 的创建。1-创建, 0-不创建
  96.   ;;; (vla-put-displayscrollbars (vla-get-display(vla-get-preferences (vlax-get-acad-object))) 0);;;不显示窗口滚动条;;手改一次即可
  97.   (setvar "cmdecho" 0)
  98.   (command "_.Cecolor" "Bylayer")
  99.   (princ)
  100. )
  101. (defun c:qht_02 ()
  102.   (setvar "osmode" 4775);;;;对象捕捉方式2
  103.   (setvar "shortcutmenu" 2);;;;自定义右键单击(2.选定对象,单击右键为菜单)
  104. ;;;(setvar "frameselection" 1);;;;块剪裁边界有夹点显示
  105.   (setvar 'DYNmode 3);;;;动态输入(显示)
  106.   (setvar "edgemode" 1);;;;修剪和延伸时,其边假想延伸
  107.   (setvar "qpmode" 2);;;;显示快捷特性面板
  108.   (setvar "tooltips" 1);;;;显示工具提示:是
  109.   (setvar "rollovertips" 1);;;;显示鼠标悬停提示:是(适用于CAD2009及更高版本)
  110.   (setvar "menubar" 1);;;;显示菜单栏(适用于CAD2010及更高版本)*****以此区分当前设置的变量状态及捕捉方式>>>>>>>>>>>>>>>
  111.   (setvar "gripmultifunctional" 3);;;;动态夹点菜单显示(适用于CAD2010及更高版本)
  112.   (setvar "statusbar" 1);;;;状态栏控制:不隐藏(适用于CAD2010及更高版本) ;;还是不要隐藏的好,省不了多少屏幕空间,所以两个程序都改为了1
  113.   ;;(setenv "DefaultFormatForSave" "60");;;设置CAD默认保存文件格式(24-2004,36-2007,48-2010,60-2013)
  114.   (setvar "cmdecho" 1)
  115.   (princ)
  116. )
  117. ;;;;;




2022.07.19更新
  1. (setq os_HC (getvar "osnapoverride"));;;用于另类判断是否是其它CAD,如:浩辰  (工具箱的部分功能在浩辰CAD中可能无法回车结束,影响不大)(部分三维改造命令无法使用)


  2. (defun c:HT_901 ();;;;;;;*************打造一个适合自己的运行环境(即设置自己需要的系统变量,输入E3可循环切换,所以可以把两个模式设为自己需要的状态)
  3. (if os_HC ;;判断CAD软件
  4.   (if(>= (atof (getvar "ACADVER")) 18.2 );;再过几年把版本识别和最后一段if删掉吧
  5.     (if (= (getvar "menubar") 0);;本来想用DYN的,想想还是算了
  6.         (progn (c:qht_B)(princ "已显示菜单栏,切换为:不常用状态。重复此命令可互换状态"))
  7.         (progn (c:qht_A)(princ "已关闭菜单栏,切换为:常用状态。重复此命令可互换状态"))
  8.     )
  9.     (if (= E3_tt nil)
  10.         (progn (c:qht_B) (setq E3_tt 1)(princ "已显示菜单栏,切换为:不常用状态。重复此命令可互换状态"))
  11.         (progn (c:qht_A) (setq E3_tt nil)(princ "已关闭菜单栏,切换为:常用状态。重复此命令可互换状态"))
  12.     )
  13.   )
  14. (progn (c:qht_A)(princ "已恢复变量常用数值"));;此条仅针对浩辰CAD,即不切换状态,仅恢复习惯
  15. )
  16. (princ)
  17. )



  18. ;;后面有★★★★★★★★★★★的是由于大家的作图习惯不同,可自行修改的部分(可在CAD中输入引号中的命令,查看自己的变量并改写本文件)
  19. (defun c:qht_A ()
  20.   (setvar "osmode" 2231);;;;对象捕捉方式1(如果要“最近点”,可把数字改为2695或自己的变量值)★★★★★★★★★★★
  21.   ;                   建议:平常不要用最近点,要用时输nea、或CTRL+右键、或用组合按键
  22.   ;                   建议CUI中设组合按键,如:最近点、两点的中点、垂足、起点
  23.   (setvar "3dosmode" 134)
  24.   (setvar "edgemode" 0);;;;修剪和延伸时,其边不假想延伸★★★★★★★★★★★★★★★
  25.   (setvar "shortcutmenu" 0);;;;自定义右键单击(都为重复或确认)★★★★★★★★★★★
  26.   ;(setvar "lwdisplay" 0);;;;是否显示线宽:否★★★★★★★★★★★
  27.   (setvar 'DYNmode -2);;;;动态输入:关(指针输入)★★★★★★★★★★★
  28.   (setvar 'DYNprompt 0);;;不显示动态输入中的提示★★★★★★★★★★★
  29.   (setvar 'DYNdivis 2);;;仅显示一个动态输入框★★★★★★★★★★★
  30.   (setvar 'DYNdigrip 2);;;仅显示一个动态输入框★★★★★★★★★★★  
  31.   (setvar "pickbox" 7);;;;拾取框大小:7★★★★★★★★★★★
  32.   (setvar "snapmode" 0);;;;捕捉间距:否★★★★★★★★★★★
  33.   (setvar "autosnap" 55);;;;自动捕捉及极轴设置★★★★★★★★★★★
  34.   (setvar "OLARMODE" 0);;;;极轴追踪:仅正交方向★★★★★★★★★★★
  35.   (setvar "dimassoc" 1);;;;新标注关联:否(1:不关联,2:关联,在布局标注时须关联)★★★★★★★★★★★
  36.   (setvar "dblclkedit" 1);;;双击可编辑
  37.   (if os_HC (setvar "osnapoverride" 0));;;;组合按键控制(用于组合按键用过后框选不了的情况)
  38.   (setvar "pickfirst" 1);;;;选择集模式(先选择后执行)
  39.   (if os_HC (setvar "pickdrag" 2)(setvar "pickdrag" 0));;;;窗口选择方式
  40.   (setvar "qaflags" 0);;;;选择执行方式
  41.   (setvar "DYNPIFORMAT" 0);;;动态输入格式:极轴格式
  42.   (setvar "DYNPICOORDS" 0);;;动态输入格式:相对坐标
  43.   (setvar "DYNPIVIS" 1);;;动态输入可见性:需要一个点时
  44.   (setvar "selectionpreview" 2);;;;选择集预览模式(激活状态时预览)
  45.   (setvar "previewfilter" 31);;;;选择集预览模式
  46.   ;(setvar "xclipframe" 0);;;;块剪裁边界不显示(若原图参数不为0,执行时会重生成)
  47.   ;;;(setvar "frameselection" 0);;;;块剪裁边界不会被选中(即无夹点显示)
  48.   (setvar "ROJMODE" 2);;;;设置当前投影模式以进行修剪或延伸(投影:视图)
  49.   (setvar "vtenable" 2);;;;动态视图动画关闭
  50.   (setvar "plinewid" 0);;;;多段线宽度
  51.   (setvar "blipmode" 0);;;;控制点回显
  52.   (setvar "AUPREC"   4);;;;角度精度:小数点后4位
  53.   (setvar "LUNITS"   2);;;; 线性长度类型:小数
  54.   (setvar "LUPREC"   4);;;;线性长度精度:小数点后4位
  55.   (setvar "insunits" 0);;;;插入时缩放单位:无单位
  56.   (setvar "CMDDIA"   1);;;;显示外部命令及plot对话框:是
  57.   (setvar "aunits" 0);;;;角度单位:十进制度数
  58.   (setvar "filedia" 1);;;;显示文件定位对话框
  59.   (setvar "mirrtext" 0);;;;镜像文字:否
  60.   (setvar "SORTENTS" 127);;;;图元排序顺序
  61.   (setvar "CHAMFERA" 0);;;;倒角的长度A
  62.   (setvar "CHAMFERB" 0);;;; 倒角的长度B
  63.   (setvar "Elevation" 0);;;; 当前标高设为0
  64.   (setvar "osnapz" 0);;;;使用当前标高替换z值(0:不替换,1:替换);;因替换后在三维操作时不好捕捉,故取消此项,改为0。(后记:平常还是替换吧,画三维时再不替换)
  65.   (setvar "coords" 2);;;;图形坐标显示(极值)
  66.   (setvar "GRIDMODE" 0);;;; 显示点栅格:否
  67.   (setvar "Fillmode" 1);;;; 指定是否填充图案填充、二维实体以及宽多段线:填充对象
  68.   (setvar "LISPINIT" 1);;;;AutoLISP 函数和变量只在当前绘图任务中有效
  69.   ;(setvar "SLTSCALE" 0);;;;1:视口比例决定线型比例
  70.   (setvar "LINEGEN" 0);;;;线型生成 禁用(默认)
  71.   ;;(setvar "DIMZIN"   8);;;; 控制是否对主单位值作消零处理, ;8:消除后续零;;;标注样式里自己调吧,不然出现样式替代也是挺烦的,故取消此项
  72.   (setvar "cursorsize" 100);;;;十字光标大小:100
  73.   (setvar "zoomfactor" 80);;;;鼠标滑轮缩放比例(默认为60)
  74.   ;;;(setvar "layernotify" 0);;;;如果找到未协调的新图层,不显示警告;;打印时好像出现过问题,故取消此项
  75.   ;;(setvar "re-init" 16);;;;重新加载pgp;;;现在不用修改PGP了,故取消此项
  76.   (setvar "tooltips" 1);;;;显示工具提示:否
  77.   (setvar "HPASSOC" 1);;;填充图案是否关联:是
  78.   (setvar "proxyshow" 1);;;显示代理图形**
  79.   (setvar "proxynotice" 0);;;代理图形对话框(不显示)**
  80.   ;(setenv "DefaultFormatForSave" "24");;;设置CAD默认保存文件格式(24-2004,36-2007,48-2010,60-2013)(后记:按自己习惯手动设置吧,故取消此项)
  81.   (setvar "ISAVEBAK" 0);;;控制备份文件 (BAK) 的创建。1-创建, 0-不创建
  82.   ;;; (vla-put-displayscrollbars (vla-get-display(vla-get-preferences (vlax-get-acad-object))) 0);;;不显示窗口滚动条;;手改一次即可,故取消此项
  83.   ;;(setvar "Draworderctl" 0);;;控制重叠对象的显示次序(0:关闭)
  84.   (setvar 'cecolor "BYLAYER");;设置颜色随层
  85.   (setvar 'celtype "ByLayer");;设置线型随层
  86.   (setvar 'REGENMODE 1)
  87.   (setvar 'celweight -1) ;;将线宽设定为“BYLAYER”
  88.   (setvar "ICKADD" 2) ;;控制后续选择项是替换当前选择集还是添加到其中
  89.   (if os_HC
  90.   (progn   
  91.     (setq prefDisplay (vla-get-Display (vla-get-Preferences (vlax-get-acad-object))))
  92.     (vla-put-GraphicsWinModelBackgrndColor prefDisplay (vlax-make-variant 0 vlax-vbLong));设定模型背景色:黑色
  93.     (vla-put-GraphicsWinLayoutBackgrndColor prefDisplay (vlax-make-variant 0 vlax-vbLong));设定布局背景色:黑色
  94.   (vl-catch-all-apply
  95.        '(lambda ( / x )
  96.                (setq x (vlax-get-property (vlax-get-property (vlax-get-acad-object) 'Preferences) 'Display))
  97.                (vlax-put-property x 'DisplayScrollBars :vlax-false)                        ;关闭滚动条
  98.                (vlax-put-property x 'LayoutDisplayMargins :vlax-false)                ;在布局不显示可打印区域
  99.                (vlax-put-property x 'LayoutDisplayPaper :vlax-false)                        ;在布局不显示图纸背景
  100.                (vlax-put-property x 'LayoutDisplayPaperShadow :vlax-false)                ;在布局不显示图纸阴影
  101.         )
  102.   )
  103.   )
  104. )
  105.   
  106. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  107.     (cond ( (>=(atof (getvar "ACADVER")) 18.2 );;判断CAD版本是否大于2012  
  108.       
  109.           (setvar "SELECTIONCYCLING" -2);;;选择循环:关闭★★★★★★★★★★★  
  110.           (setvar "ICKAUTO" 1);;窗口选择方式(2:若在对象上按住左键,将启用窗口选择模式。默认为1:不可按住)★★★★★★★★★★★
  111.           (if os_HC(command "taskbar" 0));;;任务栏仅显示一个窗口★★★★★★★★★★★
  112.           (if os_HC(setvar "menubar" 0));;;;关闭菜单栏(CAD2010及更高版本,关闭的理由阅读下两行)★★★★★★★★★★★
  113.       
  114. ;;关闭菜单栏后,顶部左侧保留<新建、打开、打印>(顺序不要变),这样ALT+1、2、3就可以便捷操作了,在ALT+2打开选择文件窗口后,ALT+2是上一级,ALT+1是后退
  115. ;;要是要用菜单栏里的功能,输入E3切换显示菜单栏就行了,毕竟用菜单栏里的时候少,所以还是关闭吧,便于操作


  116.       (setvar "gripmultifunctional" 1);;;;动态夹点菜单关闭(CAD2010及更高版本);;这个必须关闭,不然选中图元时烦死你
  117.       (setvar "qpmode" -1);;;;显示快捷特性面板;;-1不显示,2有限制的显示
  118.       (setvar "rollovertips" 0);;;;显示鼠标悬停提示:否(CAD2009及更高版本)
  119.       (setvar "hpmaxlines" 100000);;;;图案填充线的最大数目(CAD2006无效)
  120.       (setvar "ucsdetect" 0);;;;动态UCS关闭(CAD2010及更高版本)
  121.       (setvar "hpquickpreview" 0);;;;控制在指定填充区域时是否显示填充图案的预览,设为0会加快填充速度(CAD2010及更高版本)
  122.       (setvar "cullingobj" 1);;;;控制在三维操作时是否能显示在当前视图中背后的对象(0-显示,1-不显示)(CAD2011及更高版本)
  123.       (setvar "CULLINGOBJSELECTION" 0);;;;控制是否可以亮显或选择从视图中隐藏的三维对象:可以
  124.       (setvar "statusbar" 0);;;;状态栏控制:隐藏(CAD2010及更高版本)★★★★★★★★★★★
  125.       (setvar "navbardisplay" 0);;;关闭三维小控制栏
  126.       (setvar "WHIPTHREAD" 1);控制是否使用额外的处理器来提高操作速度
  127.       

  128.     )
  129.   )
  130. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  131.   (cond ( (>=(atof (getvar "ACADVER")) 19.1 );;判断CAD版本是否大于2014
  132.         (if os_HC (setvar "INPUTSEARCHOPTIONFLAGS" 20));;;关闭命令行的输入搜索选项;;31为打开★★★★★★★★★★★
  133.     )
  134.   )
  135. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  136.   (cond ( (>=(atof (getvar "ACADVER")) 20.1 );;判断CAD版本是否大于2016
  137.     (if os_HC (setvar "startmode" 0));;;;取消开始界面(忘记2015是否有开始界面了,有的话把20.1改为20)
  138.     )
  139.   )

  140. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  141.   (cond ( (>=(atof (getvar "ACADVER")) 22.0 );;判断CAD版本是否大于2018
  142.     (setvar "SELECTIONOFFSCREEN" 1);;;;屏幕外的对象可以参与选择
  143.     )
  144.   )

  145. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  146.   (cond ( (>=(atof (getvar "ACADVER")) 23 );;判断CAD版本是否大于2020
  147.       (if os_HC (setvar "BLOCKMRULIST" 5));;;;控制在“块”选项板的“最近使用”选项卡中显示的最近使用块的数量
  148.       (if os_HC (setvar "FILETABTHUMBHOVER" 0));;;;将光标悬停在文件选项卡缩略图上时,是否在图形窗口中加载相应的模型或布局。
  149.     )
  150.   )
  151.   (princ)
  152. )




  153. (defun c:qht_B ()
  154.   (setvar "osmode" 129);;;;对象捕捉方式2(只有端点和垂足)
  155.   (setvar "autosnap" 63);;;;极轴
  156.   (setvar "shortcutmenu" 2);;;;自定义右键单击(2:选定对象时,单击右键为菜单)
  157.   ;;(setvar "frameselection" 1);;;;块剪裁边界有夹点显示;;几乎用不到,故取消此项
  158.   ;;(setvar 'DYNmode 3);;;;动态输入:开(有指针输入)
  159.   ;;(setvar 'DYNprompt 1);;;;显示动态输入中的提示
  160.   (setvar "LINEGEN" 1);;;;线型生成 启用(默认为禁用)
  161.   (setvar "edgemode" 1);;;;修剪和延伸时,其边假想延伸
  162.   ;;(setvar "tooltips" 1);;;;显示工具提示:是
  163.   ;;(setenv "DefaultFormatForSave" "60");;;设置CAD默认保存文件格式(24-2004,36-2007,48-2010,60-2013);;用得少,故取消此项
  164.   
  165.   (cond ( (>=(atof (getvar "ACADVER")) 18.2 );;判断CAD版本是否大于2012
  166.       ;;(setvar "rollovertips" 1);;;;显示鼠标悬停提示:是(CAD2009及更高版本)
  167.       (setvar "menubar" 1);;;;显示菜单栏(CAD2010及更高版本)
  168.       (setvar "gripmultifunctional" 3);;;;动态夹点菜单显示(CAD2010及更高版本)
  169.       ;;(setvar "SELECTIONCYCLING" 2);;;选择循环:打开
  170.       (setvar "cullingobj" 0);;;;控制在三维操作时是否能显示在当前视图中背后的对象(0-显示,1-不显示)(CAD2011及更高版本)
  171.       (setvar "CULLINGOBJSELECTION" 1);;;;控制是否可以亮显或选择从视图中隐藏的三维对象:否
  172.       (setvar "statusbar" 1);;;;状态栏控制:显示(CAD2010及更高版本)
  173.     )
  174.   )
  175.     ;(cond ( (>=(atof (getvar "ACADVER")) 19.1 );;判断CAD版本是否大于2014
  176.     ;    (setvar "INPUTSEARCHOPTIONFLAGS" 31);;;打开命令行的输入搜索选项;;20为关闭
  177.     ;    )
  178.     ;)
  179.   
  180.   (princ)
  181. )

评分

参与人数 5明经币 +5 收起 理由
xsso + 1
yanchao316 + 1 很给力!
669423907 + 1
USER2128 + 1 很给力!
vectra + 1

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2020-3-17 09:57 | 显示全部楼层
yangchao2005090 发表于 2018-7-22 09:38
请问布局背景颜色怎么改呀
  1. ;;程式預設背景為黑色,每次執行程式指令:  BackGround  會依序 黑/灰/白 循環更換。

  2. (if (null BackGround) (setq BackGround 1)) ;; 預設背景黑色
  3. (defun C:BackGround (/ acadobject acadpref acaddisp)
  4.     (setq scm (getvar "cmdecho"))
  5.     (setvar "cmdecho" 0)
  6.     (setq acadobject (vlax-get-acad-object))
  7.     (setq acadpref   (vlax-get-property acadobject 'preferences))
  8.     (setq acaddisp   (vlax-get-property acadpref 'display))
  9.     (cond
  10.         ((= BackGround 0) ;; 背景白色
  11.          (vlax-put-property acaddisp 'GraphicsWinModelBackgrndColor 16777215)
  12.          (vlax-put-property acaddisp 'ModelCrosshairColor 0) ;; 設定模型空間游標顏色
  13.          (setq BackGround 1) )
  14.         ((= BackGround 1) ;; 背景黑色
  15.          (vlax-put-property acaddisp 'GraphicsWinModelBackgrndColor 0) ;; 設定模型空間背景顏色  
  16.          (vlax-put-property acaddisp 'ModelCrosshairColor 16777215)
  17.          (setq BackGround 0) )

  18.    ;     ((= BackGround 2) ;; 背景灰色
  19.    ;      (vlax-put-property acaddisp 'GraphicsWinModelBackgrndColor 5987163)  
  20.    ;      (vlax-put-property acaddisp 'ModelCrosshairColor 16777215)
  21.    ;      (setq BackGround 0))
  22.     )

  23.     (princ "\n****** 切換 AutoCAD 背景色完成 ******")
  24.     (setvar "cmdecho" scm)
  25. (princ)
  26. )
  27. (prompt "\n****** Load << 切換 AutoCAD 背景(黑/白)色 >> Successful ******")
  28. (prin1)


 楼主| 发表于 2022-8-27 14:22 | 显示全部楼层
1050503750 发表于 2022-8-27 12:49
可以把这个lsp文件直接发我吗  我复制代码粘贴加载 连命令都是都是未知命令 感觉我没定义起 感谢

去我另一个帖子下载,工具箱里有
发表于 2022-8-27 12:49 | 显示全部楼层
ㄘ丶转裑ㄧ灬 发表于 2022-8-26 18:07
看命令行提示什么,然后去解决

可以把这个lsp文件直接发我吗  我复制代码粘贴加载 连命令都是都是未知命令 感觉我没定义起 感谢
发表于 2016-5-30 21:15 | 显示全部楼层
学习了,谢谢楼主!
发表于 2016-5-31 08:04 | 显示全部楼层
非常好!
其中的好多系统变量之前不知道的,或没有把其联系起来。
谢谢楼主!
发表于 2016-5-31 08:52 | 显示全部楼层
很好,谢谢楼主
发表于 2016-5-31 20:10 | 显示全部楼层
学习了
发表于 2016-6-2 21:18 | 显示全部楼层
学习了 ~~~厉害......
发表于 2016-6-3 08:13 | 显示全部楼层
多谢分享.....
发表于 2016-6-6 07:23 | 显示全部楼层

学习了 ~~~厉害......
发表于 2016-6-14 14:53 | 显示全部楼层
谢谢楼主分享
发表于 2016-6-19 23:54 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-24 20:40 , Processed in 0.279212 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表