vba 创建标注样式


Function AddDimStyle(DimScale As Long)
    Dim DimStyle As AcadDimStyle
    Dim StyleName As String
    StyleName = "TCBZ_" & DimScale
    Set DimStyle = ThisDrawing.DimStyles.Add(StyleName)
    ThisDrawing.ActiveDimStyle = DimStyle
    
    With ThisDrawing
        '第一组定义全局和线性比例因子
        .SetVariable "DimScale", DimScale    '设置全局比例因子
        .SetVariable "DimLFac", 1      '线性比例因子. '1'=1:1, '2'=2:1,'.5'=1:2等
        
        '定义典型的标注特性
        .SetVariable "DimADec", 2      '控制角度标注的显示精确位数
        .SetVariable "DimAssoc", 2     '控制标注对象的关联性
                                       '实际上该系统变量由图形控制
        .SetVariable "DimASz", 1.5     '控制尺寸线、引线箭头的大小。并控制钩线的大小
        .SetVariable "DimAtFit", 1     '当尺寸界线的空间不足以同时放下标注文字和箭头时,确定这两者的排列方式
        .SetVariable "DimAUnit", 0     '设置角度标注的单位格式
                                       '0 十进制度数
        .SetVariable "DimAZin", 0      '对角度标注作消零处理
                                       '0 显示所有前导零和后续零
        .SetVariable "DimBlk", "ArchTick"      '设置尺寸线或引线末端显示的箭头块
                                       '"" 实心闭合
        .SetVariable "DimBlk1", ""     '当 DIMSAH 系统变量打开时,设置尺寸线第一个端点的箭头
        .SetVariable "DimBlk2", ""     '当 DIMSAH 系统变量打开时,设置尺寸线第二个端点的箭头
        .SetVariable "DimCen", 0.09375 '控制由 DIMCENTER、 DIMDIAMETER 和 DIMRADIUS 命令绘制的圆或圆弧的圆心标记和中心线图形
                                       '>0  绘制圆心标记的尺寸
        .SetVariable "DimClrD", 256    '为尺寸线、箭头和标注引线指定颜色
        .SetVariable "DimClrE", 256    '为尺寸界线指定颜色。此颜色可以是任意有效的颜色编号
        .SetVariable "DimClrT", 256    '为标注文字指定颜色
        .SetVariable "DimDec", 0       '设置标注主单位显示的小数位位数
        .SetVariable "DimDLE", 0       '当使用小斜线代替箭头进行标注时,设置尺寸线超出尺寸界线的距离
        .SetVariable "DimDLI", 0.5     '控制基线标注中尺寸线的间距
        .SetVariable "DimDSep", "."    '指定一个单字符作为创建十进制标注时使用的小数分隔符
        .SetVariable "DimExe", 2.5     '指定尺寸界线超出尺寸线的距离
        .SetVariable "DimExO", 8       '指定尺寸界线偏移原点的距离
        '.SetVariable "DimFrac", 0      '在 DIMLUNIT 系统变量设置为 4(建筑)或 5(分数)时设置分数格式
        .SetVariable "DimGap", 0.05 '当尺寸线分成段以在两段之间放置标注文字时,设置标注文字周围的距离
        .SetVariable "DimJust", 0      '控制标注文字的水平位置
                                       ' 0 将文字置于尺寸线之上,并在尺寸界线之间置中对正
        .SetVariable "DimLdrBlk", ""   '指定引线箭头的类型
        .SetVariable "DimLim", 0       '将极限尺寸生成为默认文字
        .SetVariable "DimLUnit", 2     '为所有标注类型(除角度标注外)设置单位制
                                       ' 2 小数
        .SetVariable "DimLwd", acLnWtByLayer '指定尺寸线的线宽
        .SetVariable "DimLwe", acLnWtByLayer '指定尺寸界线的线宽
        .SetVariable "DimPost", ""     '指定标注测量值的文字前缀或后缀(或者两者都指定)
        .SetVariable "DimRnd", 0       '将所有标注距离舍入到指定值
        .SetVariable "DimSAh", 0       '控制尺寸线箭头块的显示
        .SetVariable "DimSD1", 0       '控制是否禁止显示第一条尺寸线
        .SetVariable "DimSD2", 0       '控制是否禁止显示第二条尺寸线
        .SetVariable "DimSE1", 0       '控制是否禁止显示第一条尺寸界线
        .SetVariable "DimSE2", 0       '控制是否禁止显示第二条尺寸界线
        '.SetVariable "DimSho", 1      '该系统变量已经废弃
        .SetVariable "DimSOXD", 0      '控制是否允许尺寸线绘制到尺寸界线之外
        .SetVariable "DimTAD", 3       '控制文字相对尺寸线的垂直位置
                                       '0 标注文字在尺寸界线之间居中放置
        .SetVariable "DimTIH", 0       '控制所有标注类型(坐标标注除外)的标注文字在尺寸界线内的位置
                                        '0 或关 将文字与尺寸线对齐
        .SetVariable "DimTIX", 0       '在尺寸界线之间绘制文字
                                        '0 或关 结果随标注类型的不同而不同。对于线性和角度标注,AutoCAD
                                        '将文字放置到尺寸界线之间(如果有足够的空间)。对于不适于放入圆
                                        '或圆弧中的半径标注和直径标注,DIMTIX 无效并总是强制将文字放到圆或圆弧之外
        .SetVariable "DimTOFL", 0      '控制是否将尺寸线绘制在尺寸界线之间(即使文字放置在尺寸界线之外)
        .SetVariable "DimTOH", 0       '控制标注文字在尺寸界线外的位置
        .SetVariable "DimTSz", 0       '指定线性标注、半径标注以及直径标注中替代箭头的小斜线尺寸
        .SetVariable "DimTVP", 0        '控制尺寸线上方或下方标注文字的垂直位置
        .SetVariable "DimTxSty", "STANDARD"     '指定标注的文字样式
        .SetVariable "DimTxt", 3.5      '指定标注文字的高度,除非当前文字样式具有固定的高度(如不放在中间,至少应该大于字高吧)
        .SetVariable "DimUPT", 0        '控制用户定位文字的选项
        .SetVariable "DimZIn", 0        '控制是否对主单位值作消零处理
        
        '定义换算单位的特性
        .SetVariable "DimAlt", 0        '控制标注中换算单位的显示
        .SetVariable "DimAltD", 4       '控制换算单位中小数位的位数
        .SetVariable "DimAltF", 25.4    '控制换算单位乘数
        .SetVariable "DimAltRnd", 0     '舍入换算标注单位
        .SetVariable "DimAltTD", 4      '设置标注换算单位公差值小数位的位数
        .SetVariable "DimAltTZ", 0      '控制是否对公差值作消零处理
        .SetVariable "DimAltU", 2       '为所有标注样式族(角度标注除外)换算单位设置单位格式
        .SetVariable "DimAltZ", 0       '控制是否对换算单位标注值作消零处理
        .SetVariable "DimAPost", ""     '为所有标注类型(角度标注除外)的换算标注测量值指定文字前缀或后缀(或两者都指定)
        
        '定义尺寸标注的公差特性
        .SetVariable "DimTol", 0        '将公差附在标注文字之后
        .SetVariable "DimTDec", 4       '为标注主单位的公差值设置显示的小数位位数
        .SetVariable "DimTFac", 1       '按照 DIMTXT 系统变量的设置,相对于标注文字高度给分数值和
                                        '公差值的文字高度指定比例因子
        .SetVariable "DimTM", 0         '在 DIMTOL 系统变量或 DIMLIM 系统变量为开的情况下,为标注文字设置最小(下)偏差
        .SetVariable "DimTolJ", 1       '设置公差值相对名词性标注文字的垂直对正方式
        .SetVariable "DimTP", 0         '在 DIMTOL 或 DIMLIM 系统变量设置为开的情况下,为标注文字设置最大(上)偏差
        .SetVariable "DimTZin", 0       '控制是否对公差值作消零处理
    End With
    
    '标注样式的特性从图形已有样式中获得
    DimStyle.CopyFrom ThisDrawing
End Function




短柱和短梁

混凝土回弹计算方法

欢迎关注微信公众账号ByCAD