建立标注样式(变量与组码对应)
本帖最后由 hbgsw 于 2015-9-25 10:09 编辑从没发过源码,这个标准样式也是参照论坛里面其他的改的,具体那的记不得了,请作者原谅,
不同的是增加了组码与系统变量的对照。公司用的是中望的CAD,增加了点注明。
这个算是来论坛学习这门久交的作业。高手请绕道勿喷,谢谢。
格式:(cjbzys real) ;real:实数
;;;;=========创建标注样式===========
(defun cjbzys ( beishu / DIM_2x)
(if (not (tblseArch "style" "EN"))
(command "-STYLE" "EN" "DIM.SHX" "0" "1" "0" "N" "N" "")
)
(setq DIM_2x (strcat "DIM_X" (rtos beishu 2 2)));
(if (not (tblsearch "DIMSTYLE" DIM_2x))
(progn
(entmake (list
'(0 . "DIMSTYLE") ; 样式
'(100 . "AcDbSymbolTableRecord") ; 子类标记
'(100 . "AcDbDimStyleTableRecord") ; 子类标记
(cons 2 DIM_2x) ; 同中望的 DIMSTYLE,中望为只读 ,当前标注样式
'(70 . 0) ; 标准标记值,意义不明确
'(3 . "") ; DIMPOST 通用 备用首标或下标标注前缀
'(4 . "") ; DIMAPOST
'(5 . "") ; DIMBLK(已废弃,现在为对象 ID) 通用 箭头位置中使用的块
'(6 . "") ; DIMBLK1(已废弃,现在为对象 ID)通用 替换第一个箭头的块
'(7 . "") ; DIMBLK2(已废弃,现在为对象 ID)通用 替换第二个箭头的块
(cons 40 (atof(rtos beishu 2 2)))
; DIMSCALE 通用 标注图形的比例参数
'(41 . 2.5) ;DIMASZ 通用确定线段和箭头的大小
;DIMASO = 1 中望用 创建相关的标注
;DIMLDRBLK= "" 中望用 要替换引出箭头的块
;DIMSHO = 1 中望用 拖动同时更改标注
;'(49 . 1.00000) '(50 . 0.785398) (90 . 0.0) 中望专用
'(42 . 1.5) ;DIMEXO 通用 延伸线相对对象的距离 起点偏移量
'(43 . 3) ;DIMDLI 通用 基线标注间的距离
'(44 . 0.5) ;DIMEXE 通用 越过标注的延伸线的长度超出尺寸线
'(45 . 0.0) ;DIMRND 通用 线性标注的舍入参数
'(46 . 0.0) ;DIMDLE 通用 倾斜线外的标注线长度
'(47 . 0.0) ;DIMTP 通用 公差上限值
'(48 . 0.0) ;DIMTM 通用 公差下限值
'(140 . 3.0) ;DIMTXT 通用 标注文字的缺省高度
'(141 . 0) ;DIMCEN 通用 设置中心标记或线段的显示
'(142 . 0.0) ;DIMTSZ 通用 箭头斜线的大小
'(143 . 25.4) ;DIMALTF 通用 备用单位的比例参数
'(144 . 1) ;DIMLFAC 通用 线性标注的比例参数
'(145 . 0.0) ;DIMTVP 通用 文字的竖向位置调整
'(146 . 0.68) ;DIMTFAC 通用 公差文字高度的比例参数
'(147 . 1.5) ;DIMGAP 通用 文字和标注线间距离
'(148 . 0) ;DIMALTRND 通用 设置除角度之外的所有标注类型的换算单位的
'(71 . 0) ;DIMTOL 通用 设置公差显示打开或关闭
'(72 . 0) ;DIMLIM 通用 设置以限界显示的标注
'(73 . 0) ;DIMTIH 通用 设置对齐或水平的内部文字
'(74 . 0) ;DIMTOH 通用 设置外部文字对齐或水平
'(75 . 0) ;DIMSE1 通用 隐去第一根延伸线
'(76 . 0) ;DIMSE2 通用 隐去第二根延伸线
'(77 . 1) ;DIMTAD 通用 确定文字的竖向位置 文字在尺寸线上方
'(78 . 8) ;DIMZIN 通用 隐去公差前的零
'(79 . 0) ;DIMAZIN 通用 角度标注压缩前导零
'(170 . 0) ;DIMALT 通用设置备用的标注单位
'(171 . 2) ;DIMALTD 通用 备用标注的小数位数
'(172 . 0) ;DIMTOFL 通用 绘制外部文字的标注线
'(173 . 0) ;DIMSAH 通用 绘制箭头的用户定义块
'(174 . 0) ;DIMTIX 通用 限制文字在延伸线间
'(175 . 0) ;DIMSOXD 通用 隐去外部标注线
'(176 . 256) ;DIMCLRD 通用 标注线和箭头的颜色
'(177 . 256) ;DIMCLRE 通用 延伸线的颜色
'(178 . 256) ;DIMCLRT 通用 标注文字的颜色
'(179 . 2) ;DIMADEC 通用 设置角度标注精度
;'(270 . 2) ;DIMUNIT(已废弃,现在使用 DIMLUNIT 和 DIMFRAC)通用线性单位格式
'(271 . 2) ;DIMDEC 通用 标注单位的小数位数
'(272 . 2) ;DIMTDEC 通用 公差值的小数位数
'(273 . 2) ;DIMALTU 通用 备用线性单位格式
'(274 . 2) ;DIMALTTD 通用备用公差的小数位数
'(275 . 0) ;DIMAUNIT 通用角度标注的单位格式
'(276 . 0) ;DIMFRAC 通用 分数格式
'(277 . 2) ;277 DIMLUNIT 线性单位格式 ;省略DIMATFIT
'(278 . 46) ;DIMDSEP 通用 线性标注的小数点分隔符
'(279 . 0) ;DIMTMOVE 通用 文字移动;
'(280 . 0) ;DIMJUST 通用 确定文字的水平位置
'(281 . 0) ;DIMSD1 通用 隐去第一根标注线
'(282 . 0) ;DIMSD2 通用 隐去第二根标注线
'(283 . 1) ;DIMTOLJ 通用 设置公差文字的竖向位置
'(284 . 0) ;DIMTZIN 通用 确定英寸显示
'(285 . 0) ;DIMALTZ通用备用标注中消除零
'(286 . 0) ;DIMALTTZ 通用 备用公差中消除零
'(287 . 3) ;DIMFIT(已废弃,现在使用 DIMATFIT 和 DIMTMOVE) 通用 确定文字和箭头的位置
'(288 . 0) ;DIMUPT 通用 设置用户定位文字的指针模式,手动放置尺寸
(cons 340 (tblobjname "style" "EN"))
;(cons 340 (tblobjname "style" "Standard"))
;DIMTXSTY(参照的 STYLE 的句柄) 通用 标注文字的文字样式
)
)
(command "-DIMSTYLE" "r" DIM_2x)
(setvar "dimtih" 1)
(setvar "dimtoh" 1)
(setvar "DIMTAD" 1)
(command "-dimstyle" "save" (strcat DIM_2x "$3"))
(command "-dimstyle" "save" (strcat DIM_2x "$4"))
; (command "-dimstyle" "save" (strcat DIM_2x "$2"))
(command "-DIMSTYLE" "r" DIM_2x)
)
(princ "\n该样式可能已经存在,或没有EN字体样式")
)
(princ)
)
值得表扬!明经队伍又壮大了! 感谢hbgsw,很齐全,又有对应关系,非常完美。收下了! 不错,正确的代码方式,这个注释是好的 启动命令是哪个 后面的注释很清楚。
后面的注释很清楚 写组码的帖子很多,但是有与系统变量对应的组码,这个是最全的了,点赞点赞
页:
[1]