hbgsw 发表于 2015-9-25 09:26:59

建立标注样式(变量与组码对应)

本帖最后由 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)
)






USER2128 发表于 2015-9-25 14:11:30

值得表扬!明经队伍又壮大了!

xvjiex 发表于 2020-5-14 15:11:16

感谢hbgsw,很齐全,又有对应关系,非常完美。收下了!

xinhaichun 发表于 2020-6-16 17:07:48

不错,正确的代码方式,这个注释是好的

潇洒掌柜 发表于 2020-6-18 10:26:09

启动命令是哪个

ninja37 发表于 2020-6-20 09:33:11

后面的注释很清楚。

趣意人生 发表于 2021-1-31 16:31:42


后面的注释很清楚

Klein 发表于 2023-1-10 16:41:02

写组码的帖子很多,但是有与系统变量对应的组码,这个是最全的了,点赞点赞
页: [1]
查看完整版本: 建立标注样式(变量与组码对应)