- 积分
- 2497
- 明经币
- 个
- 注册时间
- 2014-3-4
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
参考网上兄弟做的初始化软件,原来使用command命令,后来嫌速度慢,又改为了entmake格式的,测试了下,在标注设置部分有bug,哪位仁兄帮忙给改一下,下面是源码- ;0-初始化-csh
- ;csh.lsp
- ;对CAD绘图的环境进行初始化,建立必要的图层及字体和标注样式
- ;2014/08/07 by wjnnan 整理
- ;2014/08/14 修改为entmake格式
- ;感谢原作者wxh5330 和 tranney
- (defun c:csh ( / orig_blip orig_cmd orig_osnap orig_layer); 指定函式名称
- (prinC "\n绘图环境初始化开始")
- (setvar "CURSORSIZE" 100) ;将屏幕十字光标的大小设为100%
- (setvar "ACADLSPASDOC" 1) ;将 acad.lsp 载入到每一个打开的图形中
- (setvar "ANGDIR" 1) ;设置正角度的方向为顺时针
- (setvar "AUNITS" 0) ;设置角度单位为十进位度数
- (setvar "CMLSCALE" 20.0000) ;设线宽为公制
- (setvar "GRIDMODE" 0) ;关闭栅格
- (setvar "LTSCALE" 1.0000) ;设置全局线型比例为1.0000
- (setvar "LUNITS" 2) ;设置线性单位为小数
- (setvar "LWDISPLAY" 1) ;显示线宽
- (setvar "LWDEFAULT" 25) ;设置默认线宽的值为25
- (setvar "LWUNITS" 1) ;设线宽单位以毫米显示
- (setvar "MEASUREINIT" 1) ;设置初始图形单位为公制
- (setvar "PSLTSCALE" 1) ;设图纸空间的线型比例为1:1
- (setvar "SNAPMODE" 0) ;关闭"捕捉"方式
- (setvar "TOOLTIPS" 1) ;显示工具栏提示
- (setvar "TRACEWID" 0.2) ;设置宽线的默认宽度为0.2MM
- (setvar "TRAYICONS" 1) ;控制是否在状态栏上显示系统托盘
- (setvar "TRAYNOTIFY" 1) ;控制是否在状态栏系统托盘上显示服务通知
- (setvar "ISAVEBAK" 1) ;控制备份文件 (BAK) 的创建。 1,创建 0,不创建
- (setvar "SAVETIME" 15) ;设置自动保存时间
- ;(setvar "VIEWRES" 5000) ;设置圆弧和圆的平滑度
- (setvar "FILEDIA" 1) ;0,为命令行提示;1,为对话框提示
- (setvar "APERTURE" 25) ;以像素为单位设置靶框显示尺寸。靶框是绘图命令中使用的选择工具。初始值:10
- (setvar "PICKBOX" 8) ;控制拾取框大小
- (setvar "Vtenable" 0) ;窗口缓冲速度
- (setvar "qaflags" 0) ;取消选择先后顺序
- (setenv "DefaultFormatForSave" "24") ;设置默认保存格式2004 24的16进制=0x18 格式2000 12的16进制=0x0C 格式R12 1的16进制=01
- (COMMAND "OSMODE" "4279" ) ;常用捕捉打开
- (command "VIEWRES" "y" 5000 ) ;设置圆弧和圆的平滑度
- (setq orig_blip (getvar "blipmode")); 获取系统变数的初始值
- (setq orig_cmd (getvar "cmdecho"))
- (setq orig_osnap (getvar "osmode"))
- (setq orig_layer (getvar "clayer"))
- (setvar "blipmode" 0); 设置系统变数
- (setvar "cmdecho" 0)
- (setvar "osmode" 0)
- ;;;;判断及创建图层
- ;;;(defun csh_lay()
- ;;;(setvar "cmdecho" 0)
- ;;;(if (= (tblsearch "layer" "AXIS") nil)
- ;;; (command "layer" "m" "AXIS" "c" "1" "" "lt" "ACAD_ISo04W100" "" "")); 轴线
- ;;;
- ;;;(if (= (tblsearch "layer" "AXIS_DIM") nil)
- ;;;(command "layer" "m" "AXIS_DIM" "c" "3" "" "lt" "CONTINUOUS" "" "")); 轴线标注
- ;;;
- ;;;(if (= (tblsearch "layer" "AXIS_TEXT") nil)
- ;;;(command "layer" "m" "AXIS_TEXT" "c" "2" "" "lt" "CONTINUOUS" "" "")); 轴线编号
- ;;;
- ;;;(if (= (tblsearch "layer" "COLU") nil)
- ;;;(command "layer" "m" "COLU" "c" "11" "" "lt" "CONTINUOUS" "" "")); 柱子
- ;;;
- ;;;(if (= (tblsearch "layer" "COLU_DASH") nil)
- ;;;(command "layer" "m" "COLU_DASH" "c" "11" "" "lt" "DASHED" "" "")); 柱子虚线
- ;;;
- ;;;(if (= (tblsearch "layer" "COLU_BR") nil)
- ;;;(command "layer" "m" "COLU_BR" "c" "52" "" "lt" "CONTINUOUS" "" "")); 构造柱
- ;;;
- ;;;(if (= (tblsearch "layer" "COLU_NUM") nil)
- ;;; (command "layer" "m" "COLU_NUM" "c" "2" "" "lt" "CONTINUOUS" "" "")); 柱子编号
- ;;;
- ;;;(if (= (tblsearch "layer" "COLU_HATCH") nil)
- ;;;(command "layer" "m" "COLU_HATCH" "c" "8" "" "lt" "CONTINUOUS" "" "")); 柱子填充
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM") nil)
- ;;; (command "layer" "m" "BEAM" "c" "4" "" "lt" "DASHED" "" "")); 主梁
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_CON") nil)
- ;;;(command "layer" "m" "BEAM_CON" "c" "4" "" "lt" "CONTINUOUS" "" "")); 主梁实线
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_TEXT_HOR") nil)
- ;;;(command "layer" "m" "BEAM_TEXT_HOR" "c" "2" "" "lt" "CONTINUOUS" "" "")); 主梁水平文字
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_TEXT_VER") nil)
- ;;;(command "layer" "m" "BEAM_TEXT_VER" "c" "100" "" "lt" "CONTINUOUS" "" "")); 主梁竖直文字
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_WA") nil)
- ;;; (command "layer" "m" "BEAM_WA" "c" "21" "" "lt" "DASHED" "" "")); 连梁
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_WA_CON") nil)
- ;;; (command "layer" "m" "BEAM_WA_CON" "c" "21" "" "lt" "CONTINUOUS" "" "")); 连梁实线
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_WA_TEXT") nil)
- ;;;(command "layer" "m" "BEAM_WA_TEXT" "c" "100" "" "lt" "CONTINUOUS" "" "")); 连梁文字
- ;;;
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_SE") nil)
- ;;; (command "layer" "m" "BEAM_SE" "c" "144" "" "lt" "DASHED" "" "")); 次梁
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_SE_CON") nil)
- ;;;(command "layer" "m" "BEAM_SE_CON" "c" "144" "" "lt" "CONTINUOUS" "" "")); 次梁实线
- ;;;
- ;;;(if (= (tblsearch "layer" "BEAM_SE_TEXT_HOR") nil)
- ;;;(command "layer" "m" "BEAM_SE_TEXT_HOR" "c" "100" "" "lt" "CONTINUOUS" "" "")); 次梁水平文字
- ;;;(if (= (tblsearch "layer" "BEAM_SE_TEXT_VER") nil)
- ;;;(command "layer" "m" "BEAM_SE_TEXT_VER" "c" "2" "" "lt" "CONTINUOUS" "" "")); 次梁竖直文字
- ;;;
- ;;; ;(command "layer" "m" "S_WALL" "c" "94" "" "lt" "CONTINUOUS" "" ""); 砼墙
- ;;; ;(command "layer" "m" "S_WALL_DASH" "c" "94" "" "lt" "DASHED" "" ""); 砼墙虚线
- ;;; ;(command "layer" "m" "S_WALL_DIM" "c" "7" "" "lt" "CONTINUOUS" "" ""); 砼墙标注
- ;;; ;(command "layer" "m" "S_WALL_NUM" "c" "100" "" "lt" "CONTINUOUS" "" ""); 砼墙编号
- ;;; ;(command "layer" "m" "S_WALL_HATCH" "c" "8" "" "lt" "CONTINUOUS" "" ""); 砼墙填充
- ;;; ;(command "layer" "m" "S_WALL_BR" "c" "52" "" "lt" "CONTINUOUS" "" ""); 砖墙
- ;;; ;(command "layer" "m" "S_WALL_BR_DASH" "c" "52" "" "lt" "DASHED" "" ""); 砖墙虚线
- ;;;
- ;;; ;(command "layer" "m" "STAIR" "c" "3" "" "lt" "CONTINUOUS" "" ""); 楼梯
- ;;; ;(command "layer" "m" "STAIR_TEXT" "c" "2" "" "lt" "CONTINUOUS" "" ""); 楼梯文字
- ;;; ;(command "layer" "m" "STAIR_DIM" "c" "3" "" "lt" "CONTINUOUS" "" ""); 楼梯标注
- ;;;
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR") nil)
- ;;; (command "layer" "m" "FLOOR" "c" "124" "" "lt" "CONTINUOUS" "" "")); 楼板
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_DOWN_REIN") nil)
- ;;;(command "layer" "m" "FLOOR_DOWN_REIN" "c" "15" "" "lt" "CONTINUOUS" "" "")); 楼板正筋
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_DOWN_DIM") nil)
- ;;;(command "layer" "m" "FLOOR_DOWN_DIM" "c" "3" "" "lt" "CONTINUOUS" "" "")); 楼板正筋标注
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_DOWN_NUM") nil)
- ;;; (command "layer" "m" "FLOOR_DOWN_NUM" "c" "2" "" "lt" "CONTINUOUS" "" "")); 楼板正筋文字
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_UP_REIN") nil)
- ;;; (command "layer" "m" "FLOOR_UP_REIN" "c" "1" "" "lt" "CONTINUOUS" "" "")); 楼板负筋
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_UP_DIM") nil)
- ;;; (command "layer" "m" "FLOOR_UP_DIM" "c" "3" "" "lt" "CONTINUOUS" "" "")); 楼板负筋标注
- ;;;
- ;;;(if (= (tblsearch "layer" "FLOOR_UP_NUM") nil)
- ;;;(command "layer" "m" "FLOOR_UP_NUM" "c" "100" "" "lt" "CONTINUOUS" "" "")); 楼板负筋文字
- ;;;
- ;;;
- ;;; ;(command "layer" "m" "HOLE" "c" "190" "" "lt" "CONTINUOUS" "" ""); 洞口
- ;;; ;(command "layer" "m" "HOLE_DIM" "c" "3" "" "lt" "CONTINUOUS" "" ""); 洞口标注
- ;;; ;(command "layer" "m" "HOLE_NUM" "c" "2" "" "lt" "CONTINUOUS" "" ""); 洞口编号
- ;;; ;(command "layer" "m" "HOLE_HATCH" "c" "9" "" "lt" "CONTINUOUS" "" ""); 洞口填充
- ;;;
- ;;;(if (= (tblsearch "layer" "BASE") nil)
- ;;; (command "layer" "m" "BASE" "c" "4" "" "lt" "CONTINUOUS" "" "")); 基础
- ;;;
- ;;;(if (= (tblsearch "layer" "BASE_DIM") nil)
- ;;;(command "layer" "m" "BASE_DIM" "c" "3" "" "lt" "CONTINUOUS" "" "")); 基础标注
- ;;;
- ;;;(if (= (tblsearch "layer" "BASE_NUM") nil)
- ;;;(command "layer" "m" "BASE_NUM" "c" "2" "" "lt" "CONTINUOUS" "" "")); 基础编号
- ;;;
- ;;;(if (= (tblsearch "layer" "PILE") nil)
- ;;; (command "layer" "m" "PILE" "c" "150" "" "lt" "CONTINUOUS" "" "")); 桩
- ;;;
- ;;;(if (= (tblsearch "layer" "PILE_DASH") nil)
- ;;;(command "layer" "m" "PILE_DASH" "c" "150" "" "lt" "DASHED" "" "")); 桩虚线
- ;;;
- ;;;
- ;;; ;(command "layer" "m" "STEEL" "c" "60" "" "lt" "CONTINUOUS" "" ""); 钢结构实线
- ;;; ;(command "layer" "m" "STEEL_DASH" "c" "60" "" "lt" "DASHED" "" ""); 钢结构虚线
- ;;;
- ;;; ;(command "layer" "m" "BOLT" "c" "6" "" "lt" "CONTINUOUS" "" ""); 螺栓
- ;;; ;(command "layer" "m" "BOLT_DIM" "c" "3" "" "lt" "CONTINUOUS" "" ""); 螺栓标注
- ;;; ;(command "layer" "m" "BOLT_NUM" "c" "2" "" "lt" "CONTINUOUS" "" ""); 螺栓编号
- ;;;
- ;;; ;(command "layer" "m" "WELD" "c" "40" "" "lt" "CONTINUOUS" "" ""); 焊缝
- ;;; ;(command "layer" "m" "WELD_DIM" "c" "3" "" "lt" "CONTINUOUS" "" ""); 焊缝标注
- ;;; ;(command "layer" "m" "WELD_NUM" "c" "2" "" "lt" "CONTINUOUS" "" ""); 焊缝文字
- ;;;
- ;;; ;(command "layer" "m" "BURY" "c" "140" "" "lt" "CONTINUOUS" "" ""); 预埋件
- ;;; ;(command "layer" "m" "BURY_DIM" "c" "3" "" "lt" "CONTINUOUS" "" ""); 预埋件标注
- ;;; ;(command "layer" "m" "BURY_NUM" "c" "2" "" "lt" "CONTINUOUS" "" ""); 预埋件编号
- ;;;
- ;;; ;(command "layer" "m" "TAB" "c" "7" "" "lt" "CONTINUOUS" "" ""); 表格线
- ;;; ;(command "layer" "m" "TAB_TEXT" "c" "2" "" "lt" "CONTINUOUS" "" ""); 表格文字
- ;;;
- ;;;(if (= (tblsearch "layer" "REIN") nil)
- ;;; (command "layer" "m" "REIN" "c" "1" "" "lt" "CONTINUOUS" "" "")); 钢筋
- ;;;
- ;;;(if (= (tblsearch "layer" "TEXT") nil)
- ;;;(command "layer" "m" "TEXT" "c" "7" "" "lt" "CONTINUOUS" "" "")); 文字
- ;;;
- ;;;(if (= (tblsearch "layer" "DIM") nil)
- ;;; (command "layer" "m" "DIM" "c" "3" "" "lt" "CONTINUOUS" "" "")); 尺寸
- ;;;
- ;;;(if (= (tblsearch "layer" "NUM") nil)
- ;;;(command "layer" "m" "NUM" "c" "2" "" "lt" "CONTINUOUS" "" "")); 编号
- ;;;
- ;;;;(command "layer" "m" "FRAME" "c" "7" "" "lt" "CONTINUOUS" "" ""); 图框
- ;;; ;(command "layer" "m" "THICK" "c" "7" "" "lt" "CONTINUOUS" "" ""); 粗线
- ;;; ;(command "layer" "m" "THIN" "c" "7" "" "lt" "CONTINUOUS" "" ""); 细线
- ;;;
- ;;; ;(command "layer" "m" "EDGE" "c" "100" "" "lt" "CONTINUOUS" "" ""); 轮廓线
- ;;; ;(command "layer" "m" "NOTE" "c" "100" "" "lt" "CONTINUOUS" "" ""); 文字说明
- ;;; ;(command "layer" "m" "HATCH2" "c" "254" "" "lt" "CONTINUOUS" "" ""); 图例填充
- ;;;
- ;;;(if (= (tblsearch "layer" "st") nil)
- ;;;(command "layer" "m" "st" "c" "6" "" "lt" "CONTINUOUS" "" "p" "n" "" "")); 修改、修订(不打印)
- ;;;
- ;;;(if (= (tblsearch "layer" "NO_PLOT") nil)
- ;;;(command "layer" "m" "NO_PLOT" "c" "14" "" "lt" "CONTINUOUS" "" "p" "n" "" ""));打印线(不打印)
- ;;;)
- ;;;
- ;;;
- ;;;
- ;;;;判断及创建字体
- ;;;(defun csh_sty()
- ;;; (if (= (tblsearch "style" "TSSD_Rein") nil)
- ;;; (progn
- ;;; (princ "\n建立TSSD_Rein字体并设为当前")
- ;;; (command "style" "TSSD_Rein" "tssdeng.shx,hztxt.shx" "0.0" "0.7" "" "" "" "")
- ;;; )
- ;;; (progn
- ;;; (command "style" "TSSD_Rein" "tssdeng.shx,hztxt.shx" "0.0" "0.7" "" "" "" "")
- ;;;
- ;;; (princ "\n检测到TSSD_Rein字体,将其设为当前。")
- ;;; )
- ;;; )
- ;;;(if (= (tblsearch "STYLE" "hz") nil);"判断hz字型是否存在"
- ;;; (command "style" "hz" "txt.shx,hztxt.shx" 250 0.7 0 "n" "n" "n");"设置字型hz"
- ;;; )
- ;;;
- ;;;(if (= (tblsearch "STYLE" "hx") nil);"判断hx字型是否存在"
- ;;; (command "style" "hx" "huaxin.shx,hxhztxt.shx" 250 0.7 0 "n" "n" "n");"设置字型hx"
- ;;; )
- ;;;
- ;;;(if (= (tblsearch "STYLE" "STANDARD") nil);"判断hx字型是否存在"
- ;;; (command "style" "STANDARD" "tssdeng.shx,hztxt.shx" "0.0" "0.7" "" "" "" "");"设置字型STANDARD"
- ;;; )
- ;;;)
- ;;;
- ;;;
- ;;;
- ;;;
- ;;;
- ;;;
- ;判断及创建图层
- (defun csh_lay()
- (setvar "cmdecho" 0)
- ;创建线型,点划线
- (entmake
- (list '(0 . "LTYPE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLinetypeTableRecord")
- (cons 2 "ACAD_ISO04W100")
- '(3 . "ACAD_ISO04W100 ___ . ___ . ___ . ___ . ___")
- '(70 . 0)
- '(73 . 4)
- '(40 . 18.5)
- '(49 . 15)
- '(74 . 0)
- '(49 . -1.5)
- '(74 . 0)
- '(49 . 0.5)
- '(74 . 0)
- '(49 . -1.5)
- '(74 . 0)
- )
- )
- ;创建线型,虚线
- (entmake
- (list '(0 . "LTYPE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLinetypeTableRecord")
- (cons 2 "DASHED")
- '(3 . "DASHED __ __ __ __ __ __ __ __ __")
- '(70 . 0)
- '(73 . 2)
- '(40 . 6.0)
- '(49 . 4.0)
- '(74 . 0)
- '(49 . -2.0)
- '(74 . 0)
- )
- )
- ;轴线
- (if (null (tblobjname "LAYER" "AXIS") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "ACAD_ISO04W100") ;线型
- (cons 2 "AXIS")
- '(62 . 1) ;颜色
- )
- )
- );if
- ;柱子
- (if (null (tblobjname "LAYER" "COLU") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "COLU")
- '(62 . 7) ;颜色
- )
- )
- );if
- ;柱子填充
- (if (null (tblobjname "LAYER" "COLU_HATCH") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "COLU_HATCH")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;柱子编号
- (if (null (tblobjname "LAYER" "COLU_NUM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "COLU_NUM")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;主梁虚线
- (if (null (tblobjname "LAYER" "BEAM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "DASHED") ;线型
- (cons 2 "BEAM")
- '(62 . 4) ;颜色
- )
- )
- );if
- ;主梁实线
- (if (null (tblobjname "LAYER" "BEAM_CON") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_CON")
- '(62 . 4) ;颜色
- )
- )
- );if
- ;主梁水平文字
- (if (null (tblobjname "LAYER" "BEAM_TEXT_HOR") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_TEXT_HOR")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;主梁垂直文字
- (if (null (tblobjname "LAYER" "BEAM_TEXT_VER") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_TEXT_VER")
- '(62 . 100) ;颜色
- )
- )
- );if
- ;次梁虚线
- (if (null (tblobjname "LAYER" "BEAM_SE") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "DASHED") ;线型
- (cons 2 "BEAM_SE")
- '(62 . 144) ;颜色
- )
- )
- );if
- ;次梁实线
- (if (null (tblobjname "LAYER" "BEAM_SE_CON") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_SE_CON")
- '(62 . 144) ;颜色
- )
- )
- );if
- ;次梁水平文字
- (if (null (tblobjname "LAYER" "BEAM_SE_TEXT_HOR") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_SE_TEXT_HOR")
- '(62 . 100) ;颜色
- )
- )
- );if
- ;次梁垂直文字
- (if (null (tblobjname "LAYER" "BEAM_SE_TEXT_VER") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_SE_TEXT_VER")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;连梁虚线
- (if (null (tblobjname "LAYER" "BEAM_WA") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "DASHED") ;线型
- (cons 2 "BEAM_WA")
- '(62 . 21) ;颜色
- )
- )
- );if
- ;连梁实线
- (if (null (tblobjname "LAYER" "BEAM_WA_CON") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "BEAM_WA_CON")
- '(62 . 21) ;颜色
- )
- )
- );if
- ;楼板
- (if (null (tblobjname "LAYER" "FLOOR") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR")
- '(62 . 124) ;颜色
- )
- )
- );if
- ;楼板正筋
- (if (null (tblobjname "LAYER" "FLOOR_DOWN_REIN") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_DOWN_REIN")
- '(62 . 15) ;颜色
- )
- )
- );if
- ;楼板正筋标注
- (if (null (tblobjname "LAYER" "FLOOR_DOWN_DIM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_DOWN_DIM")
- '(62 . 3) ;颜色
- )
- )
- );if
- ;楼板正筋文字
- (if (null (tblobjname "LAYER" "FLOOR_DOWN_NUM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_DOWN_NUM")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;楼板负筋
- (if (null (tblobjname "LAYER" "FLOOR_UP_REIN") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_UP_REIN")
- '(62 . 1) ;颜色
- )
- )
- );if
- ;楼板负筋标注
- (if (null (tblobjname "LAYER" "FLOOR_UP_DIM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_UP_DIM")
- '(62 . 3) ;颜色
- )
- )
- );if
- ;楼板负筋文字
- (if (null (tblobjname "LAYER" "FLOOR_UP_NUM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "FLOOR_UP_NUM")
- '(62 . 100) ;颜色
- )
- )
- );if
- ;文字
- (if (null (tblobjname "LAYER" "TEXT") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "TEXT")
- '(62 . 7) ;颜色
- )
- )
- );if
- ;尺寸标注
- (if (null (tblobjname "LAYER" "DIM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "DIM")
- '(62 . 3) ;颜色
- )
- )
- );if
- ;编号
- (if (null (tblobjname "LAYER" "NUM") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "NUM")
- '(62 . 2) ;颜色
- )
- )
- );if
- ;审图(不打印)
- (if (null (tblobjname "LAYER" "审图(不打印)") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "审图(不打印)")
- '(62 . 6) ;颜色
- '(290 . 0) ;0为此图层不打印
- )
- )
- );if
- ;钢筋
- (if (null (tblobjname "LAYER" "REIN") )
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "REIN")
- '(62 . 1) ;颜色
- )
- )
- );if
- );defun csh_lay
- ;判断及创建字体
- (defun csh_sty()
- (if (null (tblobjname "STYLE" "TSSD_Rein") )
- (progn
- (princ "\n建立TSSD_Rein字体并设为当前")
- (entmake (list '(0 . "STYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbTextStyleTableRecord")
- '(70 . 0)
- '(42 . 250) ;默认字高
- '(3 . "tssdeng.shx")
- '(4 . "hztxt.shx")
- (cons 2 "TSSD_Rein")
- '(40 . 250) ;字高
- '(41 . 0.7) ;字宽比例
- '(50 . 0.0) ;默认旋转角度
- )
- ))
- (progn
- (entmake (list '(0 . "STYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbTextStyleTableRecord")
- '(70 . 0)
- '(42 . 250) ;默认字高
- '(3 . "tssdeng.shx")
- '(4 . "hztxt.shx")
- (cons 2 "TSSD_Rein")
- '(40 . 250) ;字高
- '(41 . 0.7) ;字宽比例
- '(50 . 0.0) ;默认旋转角度
- )
- )
- (princ "\n检测到TSSD_Rein字体,将其设为当前字体")
- )
- );if
- (if (null (tblobjname "STYLE" "hz") )
- (entmake (list '(0 . "STYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbTextStyleTableRecord")
- '(70 . 0)
- '(42 . 250) ;默认字高
- '(3 . "txt.shx")
- '(4 . "hztxt.shx")
- (cons 2 "hz")
- '(40 . 250) ;字高
- '(41 . 0.7) ;字宽比例
- '(50 . 0.0) ;默认旋转角度
- )
- )
- );if
- (if (null (tblobjname "STYLE" "hx") )
- (entmake (list '(0 . "STYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbTextStyleTableRecord")
- '(70 . 0)
- '(42 . 250) ;默认字高
- '(3 . "huaxin.shx")
- '(4 . "hxhztxt.shx")
- (cons 2 "hx")
- '(40 . 250) ;字高
- '(41 . 0.7) ;字宽比例
- '(50 . 0.0) ;默认旋转角度
- )
- )
- );if
- (if (null (tblobjname "STYLE" "STANDARD") )
- (entmake (list '(0 . "STYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbTextStyleTableRecord")
- '(70 . 0)
- '(42 . 250) ;默认字高
- '(3 . "tssdeng.shx")
- '(4 . "hztxt.shx")
- (cons 2 "STANDARD")
- '(40 . 250) ;字高
- '(41 . 0.7) ;字宽比例
- '(50 . 0.0) ;默认旋转角度
- )
- )
- );if
- );defun csh_sty
- ; 建立DIM层,归并标注到DIM层
- (defun csh_bzgc(/ s2)
- (setvar "cmdecho" 0)
- ;这部分:确定是否建立新图层
- (if (= (tblsearch "layer" "DIM") nil) ;检查DIM层是否存在
- (entmake (list '(0 . "LAYER")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbLayerTableRecord")
- '(70 . 0)
- '(6 . "CONTINUOUS") ;线型
- (cons 2 "DIM")
- '(62 . 3) ;颜色
- )
- ));if
- ;这部分主程序
- (setq s2 (ssget "X" '((-4 . "<or")(0 . "leader")(0 . "dimension")(0 . "arc_dimension")(-4 . "or>"))))
- (if (= s2 nil) (princ "")
- (progn
- (command "change" s2 "" "P" "la" "0" "" ;改变对象图层
- "_setbylayer" s2 "" "y" "y" ;线型改为随层
- "change" s2 "" "P" "la" "DIM" "") ;改变对象图层
- );progn
- );if
- (princ)
- );defun
- ;建立建筑标注标注界限块
- (defun dimblk1(/ p1 p2 mp p3 p4 ent1 ent2 ifdimblk )
- (setq p1 (list 0 0)
- p2 (polar p1 (* 0.25 pi) 2)
- mp (list (* 0.5 (car p2)) (* 0.5 (cadr p2)))
- p3(list (- (car mp) 1.5) (cadr mp))
- p4(list (+ (car mp) 1.5) (cadr mp))
- )
- (command "line" p3 p4 "")
- (setq ent1 (entlast))
- (command "pline" p1 "w" 0.5 0.5 p2 "")
- (setq ent2 (entlast))
- (setq ifdimblk (tblsearch "block" "ccjzDIM"))
- (if ifdimblk (command "block" "ccjzDIM" "y" mp ent1 ent2 "")
- (command "block" "ccjzDIM" mp ent1 ent2 "")
- )
- (princ)
- )
- ;标注部分设置
- ;;;(defun csh_ccbz (/ cm)
- ;;; (setq cm (getvar "cmdecho"))
- ;;; ;(setvar "cmdecho" 0)
- ;;; (csh_sty)
- ;;; (dimblk1)
- ;;; (if (= (tblsearch "dimstyle" "TSSD_100_100") nil)
- ;;; (progn (command "dimstyle" "s" "TSSD_100_100")
- ;;; (setvar "DIMDSEP" ".") ;小数分隔符
- ;;; (setvar "DIMADEC" 1) ;角度小数位数
- ;;; (setvar "DIMALT" 0) ;选定的换算单位
- ;;; (setvar "DIMALTD" 2) ;换算单位小数位数
- ;;; (setvar "DIMALTF" 25.4000) ;换算单位比例因子
- ;;; (setvar "DIMALTRND" 0.0000) ;换算单位舍入值
- ;;; (setvar "DIMALTTD" 2) ;换算公差小数位数
- ;;; (setvar "DIMALTTZ" 0) ;换算公差消零
- ;;; (setvar "DIMALTU" 2) ;换算单位
- ;;; (setvar "DIMALTZ" 0) ;换算单位消零
- ;;; (setvar "DIMASZ" 80) ;箭头大小
- ;;; (setvar "DIMATFIT" 3) ;箭头和文字调整
- ;;; (setvar "DIMAUNIT" 0) ;角度单位格式
- ;;; (setvar "DIMAZIN" 2) ;角度消零
- ;;; (setvar "DIMBLK" "ccjzDIM") ;箭头块名
- ;;; (setvar "DIMBLK1" "ccjzDIM") ;第一个箭头块名
- ;;; (setvar "DIMBLK2" "ccjzDIM") ;第二个箭头块名
- ;;; (setvar "DIMCEN" 0.0900) ;圆心标记大小
- ;;; (setvar "DIMCLRD" 3) ;尺寸线和引线颜色(绿色)
- ;;; (setvar "DIMCLRE" 3) ;尺寸界线颜色(绿色)
- ;;; (setvar "DIMCLRT" 7) ;标注文字颜色(绿色)
- ;;; (setvar "DIMDEC" 0) ;小数位数
- ;;; (setvar "DIMDLE" 0.0000) ;尺寸线
- ;;; (setvar "DIMDLI" 0.0000) ;尺寸线间距
- ;;; (setvar "DIMEXE" 100) ;尺寸界线在尺寸线上
- ;;; (setvar "DIMEXO" 100) ;尺寸界线原点偏移
- ;;; (setvar "DIMFRAC" 0) ;分数格式
- ;;; (setvar "DIMGAP" 50) ;尺寸线和文字的间距
- ;;; (setvar "DIMJUST" 0) ;尺寸线上的文字对正
- ;;; (setvar "DIMLDRBLK" ".") ;引线块名
- ;;; (setvar "DIMLFAC" (getvar "DIMLFAC")) ;线性单位比例因子
- ;;; (setvar "DIMLIM" 0) ;生成标注界限
- ;;; (setvar "DIMLUNIT" 2) ;线性单位格式
- ;;; (setvar "DIMLWD" -2) ;尺寸线和引线线宽
- ;;; (setvar "DIMLWE" -2) ;尺寸界线线宽
- ;;; (setvar "DIMRND" 0.0000) ;舍入值
- ;;; (setvar "DIMSAH" 0) ;独立的箭头块
- ;;; (setvar "DIMSCALE" (getvar "dimscale")) ;全局比例因子
- ;;; (setvar "DIMSD1" 0) ;隐藏第一条尺寸线
- ;;; (setvar "DIMSD2" 0) ;隐藏第二条尺寸线
- ;;; (setvar "DIMSE1" 0) ;隐藏第一条尺寸界线
- ;;; (setvar "DIMSE2" 0) ;隐藏第二条尺寸界线
- ;;; (setvar "DIMSOXD" 0) ;隐藏外侧尺寸线
- ;;; (setvar "DIMTAD" 1) ;文字位于尺寸线上方
- ;;; (setvar "DIMTDEC" 1) ;公差小数位数
- ;;; (setvar "DIMTFAC" 1.0000) ;公差文字高度比例因子
- ;;; (setvar "DIMTIH" 0) ;尺寸界线内侧的文字水平放置
- ;;; (setvar "DIMTIX" 1) ;将文字放置于尺寸界线内侧
- ;;; (setvar "DIMTM" 0.0000) ;下偏差
- ;;; (setvar "DIMTMOVE" 2) ;文字移动
- ;;; (setvar "DIMTOFL" 1) ;强制在尺寸界线内侧画尺寸线
- ;;; (setvar "DIMTOH" 0) ;外侧文字水平放置
- ;;; (setvar "DIMTOL" 0) ;公差标注
- ;;; (setvar "DIMTOLJ" 1) ;公差垂直对齐
- ;;; (setvar "DIMTP" 0.0000) ;上偏差
- ;;; (setvar "DIMTSZ" 0.0000) ;标记大小
- ;;; (setvar "DIMTVP" 0.0000) ;文字垂直位置
- ;;; (setvar "DIMTXSTY" "TSSD_Rein") ;文字样式
- ;;; (setvar "DIMTXT" 250) ;文字高度
- ;;; (setvar "DIMTZIN" 0) ;公差消零
- ;;; (setvar "DIMUPT" 0) ;用户定位的文字
- ;;; (setvar "DIMZIN" 8) ;消零
- ;;; (princ "\n已新建标注样式TSSD_100_100,该样式符合本院标准,默认全局比例为1,修改比例请输入DIMSCALE。")
- ;;; )
- ;;; (progn
- ;;; ;;;(command "dimstyle" "s" "TSSD_100_100")
- ;;; (setvar "DIMDSEP" ".") ;小数分隔符
- ;;; (setvar "DIMADEC" 1) ;角度小数位数
- ;;; (setvar "DIMALT" 0) ;选定的换算单位
- ;;; (setvar "DIMALTD" 2) ;换算单位小数位数
- ;;; (setvar "DIMALTF" 25.4000) ;换算单位比例因子
- ;;; (setvar "DIMALTRND" 0.0000) ;换算单位舍入值
- ;;; (setvar "DIMALTTD" 2) ;换算公差小数位数
- ;;; (setvar "DIMALTTZ" 0) ;换算公差消零
- ;;; (setvar "DIMALTU" 2) ;换算单位
- ;;; (setvar "DIMALTZ" 0) ;换算单位消零
- ;;; (setvar "DIMASZ" 80) ;箭头大小
- ;;; (setvar "DIMATFIT" 3) ;箭头和文字调整
- ;;; (setvar "DIMAUNIT" 0) ;角度单位格式
- ;;; (setvar "DIMAZIN" 2) ;角度消零
- ;;; (setvar "DIMBLK" "ccjzDIM") ;箭头块名
- ;;; (setvar "DIMBLK1" "ccjzDIM") ;第一个箭头块名
- ;;; (setvar "DIMBLK2" "ccjzDIM") ;第二个箭头块名
- ;;; (setvar "DIMCEN" 0.0900) ;圆心标记大小
- ;;; (setvar "DIMCLRD" 3) ;尺寸线和引线颜色(绿色)
- ;;; (setvar "DIMCLRE" 3) ;尺寸界线颜色(绿色)
- ;;; (setvar "DIMCLRT" 7) ;标注文字颜色(绿色)
- ;;; (setvar "DIMDEC" 0) ;小数位数
- ;;; (setvar "DIMDLE" 0.0000) ;尺寸线
- ;;; (setvar "DIMDLI" 0.0000) ;尺寸线间距
- ;;; (setvar "DIMEXE" 100) ;尺寸界线在尺寸线上
- ;;; (setvar "DIMEXO" 100) ;尺寸界线原点偏移
- ;;; (setvar "DIMFRAC" 0) ;分数格式
- ;;; (setvar "DIMGAP" 50) ;尺寸线和文字的间距
- ;;; (setvar "DIMJUST" 0) ;尺寸线上的文字对正
- ;;; (setvar "DIMLDRBLK" ".") ;引线块名
- ;;; (setvar "DIMLFAC" (getvar "DIMLFAC")) ;线性单位比例因子
- ;;; (setvar "DIMLIM" 0) ;生成标注界限
- ;;; (setvar "DIMLUNIT" 2) ;线性单位格式
- ;;; (setvar "DIMLWD" -2) ;尺寸线和引线线宽
- ;;; (setvar "DIMLWE" -2) ;尺寸界线线宽
- ;;; (setvar "DIMRND" 0.0000) ;舍入值
- ;;; (setvar "DIMSAH" 0) ;独立的箭头块
- ;;; (setvar "DIMSCALE" (getvar "dimscale")) ;全局比例因子
- ;;; (setvar "DIMSD1" 0) ;隐藏第一条尺寸线
- ;;; (setvar "DIMSD2" 0) ;隐藏第二条尺寸线
- ;;; (setvar "DIMSE1" 0) ;隐藏第一条尺寸界线
- ;;; (setvar "DIMSE2" 0) ;隐藏第二条尺寸界线
- ;;; (setvar "DIMSOXD" 0) ;隐藏外侧尺寸线
- ;;; (setvar "DIMTAD" 1) ;文字位于尺寸线上方
- ;;; (setvar "DIMTDEC" 1) ;公差小数位数
- ;;; (setvar "DIMTFAC" 1.0000) ;公差文字高度比例因子
- ;;; (setvar "DIMTIH" 0) ;尺寸界线内侧的文字水平放置
- ;;; (setvar "DIMTIX" 1) ;将文字放置于尺寸界线内侧
- ;;; (setvar "DIMTM" 0.0000) ;下偏差
- ;;; (setvar "DIMTMOVE" 2) ;文字移动
- ;;; (setvar "DIMTOFL" 1) ;强制在尺寸界线内侧画尺寸线
- ;;; (setvar "DIMTOH" 0) ;外侧文字水平放置
- ;;; (setvar "DIMTOL" 0) ;公差标注
- ;;; (setvar "DIMTOLJ" 1) ;公差垂直对齐
- ;;; (setvar "DIMTP" 0.0000) ;上偏差
- ;;; (setvar "DIMTSZ" 0.0000) ;标记大小
- ;;; (setvar "DIMTVP" 0.0000) ;文字垂直位置
- ;;; (setvar "DIMTXSTY" "TSSD_Rein") ;文字样式
- ;;; (setvar "DIMTXT" 250) ;文字高度
- ;;; (setvar "DIMTZIN" 0) ;公差消零
- ;;; (setvar "DIMUPT" 0) ;用户定位的文字
- ;;; (setvar "DIMZIN" 8) ;消零
- ;;; (princ "\n检测到标注样式:“TSSD_100_100”,为防止样式被改动,程序自动将其还原(全局比例不变)。")
- ;;; )
- ;;; )
- ;;; (command "_.DIMSTYLE" "_SAVE" "TSSD_100_100" "y" "")
- ;;; ;(setvar "cmdecho" cm)
- ;;; (princ)
- ;;; (csh_dimdayang)
- ;;;)
- (defun csh_ccbz (/ cm)
- (setq cm (getvar "cmdecho"))
- ;(setvar "cmdecho" 0)
- ;(csh_sty)
- (csh_sty)
- (dimblk1)
- (if (= (tblsearch "dimstyle" "TSSD_100_100") nil)
- ;(entmake (list '(0 ."DIMENSION")
- (entmake (list '(0 . "DIMSTYLE")
- '(100 . "AcDbSymbolTableRecord")
- '(100 . "AcDbDimStyleTableRecord")
- '(70 . 0) ;标注类型
- (cons 2 "tssd_100_100") ; 标注样式名
- '(67 .0) ;模型空间,0
- '(8 . "DIM") ;图层DIM
- '(1 . "<>") ; 标注值,默认为测量值
- '(176 . 7) ; 尺寸线颜色1-红色,2-黄色,3-绿色,4-青色,5-蓝色,6-洋红,7-白色
- '(371 . -2) ;尺寸线线宽
- '(46 . 0) ;尺寸线线宽
- '(43 . 0) ;基线间距
- '(281 . 0) ;隐藏第一条尺寸线
- '(282 . 0) ;隐藏第二条尺寸线
- '(177 . 7) ;尺寸界线颜色1-红色,2-黄色,3-绿色,4-青色,5-蓝色,6-洋红,7-白色
- '(372 . -2) ;尺寸界线线宽
- '(44 . 100) ;超出尺寸线
- '(42 . 100) ;起点偏移量
- '(75 . 0) ;隐藏第一条尺寸界线
- '(76 . 0) ;隐藏第二条尺寸界线?
-
- ;;; (cons 6 "_ARCHTICK") ;建筑标记
- ;;; (cons 341 "_ARCHTICK") ;建筑标记
-
- (cons 6 "dimblk1") ;建筑标记
- (cons 341 "dimblk1") ;建筑标记
- '(41 . 80) ; 箭头大小
- '(141 .100) ; 圆心标记大小
- (cons 340 (tblobjname "style" "TSSD_Rein")) ; 文字样式名
- '(178 . 7) ;标注文字颜色1-红色,2-黄色,3-绿色,4-青色,5-蓝色,6-洋红,7-白色
- '(140 . 250) ; 标注文字高度
- '(77 . 1) ; 文字在尺寸线上方
- '(280 . 0) ;标注文字 位置水平置中
- '(147 . 50) ; 文字从尺寸线偏移
- '(73 . 0) ;尺寸界线内侧的文字水平放置
- '(74 . 0) ;外侧文字水平放置
- '(277 . 2) ;线性单位格式,小数
- '(271 . 1) ; 线性标注精度
- '(144 . 1) ; 测量单位比例因子
- '(78 . 8) ; 测量单位比例,消零
- '(275 . 0) ; 角度标注单位格式,十进制
- '(179 . 0) ;角度标注精度,整数
- '(79 . 0) ;角度标注,消零
- '(40 . 0.0) ;全局比例因子
- '(279 . 21) ;文字移动
- '(173 . 0) ;独立的箭头块
- '(172 . 2) ; 尺寸界线间连线
- '(271 . 1) ; 尺寸标注精度
- '(288 . 1) ; 手动放置尺寸
- );list
- );entmake
- );if
- (command "_.DIMSTYLE" "_SAVE" "TSSD_100_100" "y" "")
- ;(setvar "cmdecho" cm)
- (princ)
- (csh_dimdayang)
- );defun
-
- ;建立各种比例大样图所需的标注样式
- (defun csh_dimdayang(/ ACADDOCUMENT ACADOBJECT CURRDIMSTYLE MSPACE)
- (PRINC "\n模型空间中,建立各种比例大样图所需的标注样式 :")
- ;;; 首先,返回当前的标注的样式
- ;;; 接着,设定新的样式。
- ;;; 最后,将样式恢复为原来的设定值。
- (VL-LOAD-COM)
- (setq AcadObject(vlax-get-acad-object)
- AcadDocument(vla-get-ActiveDocument AcadObject)
- mSpace(vla-get-ModelSpace AcadDocument)
- )
- ;;; 返回激活文件当前的标注样式
- (setq currDimStyle(vla-get-ActiveDimStyle AcadDocument))
- ;(princ "当前的标注型式是 ")(princ (vla-get-name currDimStyle))
- ;;; 建立标注样式 TSSD_10_100
- (setvar "dimlfac" 0.1);因为图元放大了10倍
- (setvar "DIMCLRD" 1);改变颜色以区分
- (setvar "dimclre" 1)
- (if (not (tblsearch "dimstyle" "TSSD_10_100"))
- (command "-dimstyle" "s" "TSSD_10_100")
- (command "-dimstyle" "s" "TSSD_10_100" "y")
- )
- ;;; 建立标注样式 TSSD_20_100
- (setvar "dimlfac" 0.20)
- (setvar "DIMCLRD" 2)
- (setvar "dimclre" 2)
- (if (not (tblsearch "dimstyle" "TSSD_20_100"))
- (command "-dimstyle" "s" "TSSD_20_100")
- (command "-dimstyle" "s" "TSSD_20_100" "y")
- )
- ;;; 建立标注样式 TSSD_25_100
- (setvar "dimlfac" 0.25)
- (setvar "DIMCLRD" 4)
- (setvar "dimclre" 4)
- (if (not (tblsearch "dimstyle" "TSSD_25_100"))
- (command "-dimstyle" "s" "TSSD_25_100")
- (command "-dimstyle" "s" "TSSD_25_100" "y")
- )
- ;;; 建立标注样式 TSSD_50_100
- (setvar "dimlfac" 0.5)
- (setvar "DIMCLRD" 6)
- (setvar "dimclre" 6)
- (if (not (tblsearch "dimstyle" "TSSD_50_100"))
- (command "-dimstyle" "s" "TSSD_50_100")
- (command "-dimstyle" "s" "TSSD_50_100" "y")
- )
- (vla-put-ActiveDimStyle AcadDocument currDimStyle);; 将标注样式设回原来的标注样式
- ;(princ "标注型式重设为 ")(princ (vla-get-name currDimStyle))
- (princ)
- )
- (setvar "blipmode" orig_blip); 还原系统变数的设定值
- (setvar "cmdecho" orig_cmd)
- (setvar "osmode" orig_osnap)
- (setvar "clayer" orig_layer)
- ; (command "osmode" "191"); 打开端点,中点,中心,象限点,交点及垂点捕捉
- ; (command "units" "2" "2" "" "" "" "")
- ; (command "chamfera" "0"); 将chamfer命令的第一点D值设为0
- ; (command "chamferb" "0"); 将chamfer命令的第二点D值设为0
- ; (command "filletrad" "0"); 将fillet命令的半径R值设为0
- (csh_lay)
- (csh_sty)
- (csh_bzgc)
- (csh_ccbz)
- (princ "\n*** 绘图环境初始化完成 **** 命令: csh ***")
- (princ)
- ); csh.lsp命令结束
- (princ)
- (defun c:d10 ()(command "-DIMSTYLE" "R" "TSSD_10_100")(princ "\n当前标注样式:TSSD_10_100")(princ))
- (defun c:d20 ()(command "-DIMSTYLE" "R" "TSSD_20_100")(princ "\n当前标注样式:TSSD_20_100")(princ))
- (defun c:d25 ()(command "-DIMSTYLE" "R" "TSSD_25_100")(princ "\n当前标注样式:TSSD_25_100")(princ))
- (defun c:d50 ()(command "-DIMSTYLE" "R" "TSSD_50_100")(princ "\n当前标注样式:TSSD_50_100")(princ))
- (defun c:d100 ()(command "-DIMSTYLE" "R" "TSSD_100_100")(princ "\n当前标注样式:TSSD_100_100")(princ))
|
|