(изменено: Vadim, 3 августа 2009г. 16:31:18)

Тема: Добавление размерного стиля

Порядок добавления стиля:
1. Добавляю новый стиль ThisDrawing.DimStyles.Add name
2. Изменяю параметры через системные переменные.
3. Под добавленным стилем появляется надпись "styles override".Это и есть набор установленных параметров.

Как программно установленные значения из списка перевести в размерный стиль?

Re: Добавление размерного стиля

Sub Copy_размерный_стиль()
    Dim newStyle1 As AcadDimStyle
    Dim размерный_стиль As String
    Dim Цвет_размер_линий As Integer
    Dim Цвет_размер_текст As Integer
    Цвет_размер_линий = 1
    Цвет_размер_текст = 3
    М_А = 100

    размерный_стиль = "Dim 1-" & М_А
    Set newStyle1 = ThisDrawing.ActiveDocument.DimStyles.Add _
                    (размерный_стиль)
   
ThisDrawing.ActiveDocument.SetVariable "DIMSAH", 1
   
    'Цвет размерных линий  DIMCLRD='ByLayer'=256
    ThisDrawing.ActiveDocument.SetVariable "DIMCLRD", Цвет_размер_линий
   
    'Цвет размерных линий  DIMCLRD='ByLayer'=256
    ThisDrawing.ActiveDocument.SetVariable "DIMCLRE", Цвет_размер_линий
   
    '=====Граничные линии=====
    'Расстояние до метки-DIMDLE=1.0
    ThisDrawing.ActiveDocument.SetVariable "DIMDLE", 1
   
    'Расстояние до линии-DIMEXE=1.25
    ThisDrawing.ActiveDocument.SetVariable "DIMEXE", 1.25
   
    'Смещение от начала-DIMEXO=0.625
    ThisDrawing.ActiveDocument.SetVariable "DIMEXO", 2
   
     '=====Стрелки=====
    ThisDrawing.ActiveDocument.SetVariable "DIMBLK1", "OBLIQUE"
    ThisDrawing.ActiveDocument.SetVariable "DIMBLK2", "OBLIQUE"
   
    'Размер стрелки-DIMASZ=1.25
    ThisDrawing.ActiveDocument.SetVariable "DIMASZ", 2
   
    '=====Отображение текста=====
    'Стиль текста-DIMTXSTY="STANDARD"
    ThisDrawing.ActiveDocument.SetVariable "DIMTXSTY", "STANDARD"
   
    'Цвет текста-DIMCLRT=6
    ThisDrawing.ActiveDocument.SetVariable "DIMCLRT", Цвет_размер_текст
   
    'Высота текста-DIMTXT=2.5
    ThisDrawing.ActiveDocument.SetVariable "DIMTXT", 2.5
   
    '=====Размещение текста=====
    'Вертикальное-DIMTAD='Above'=1
    ThisDrawing.ActiveDocument.SetVariable "DIMTAD", 1
   
    'Горизонтальное-DIMJUST='Centered'=0
    ThisDrawing.ActiveDocument.SetVariable "DIMJUST", 0
   
    'Расстояние до текста-DIMGAP=0.9
    ThisDrawing.ActiveDocument.SetVariable "DIMGAP", 0.625
   
    '=====Выравнивание текста=====
    'Выравнивание всех размеров кроме ординатных (
    'между размерными линиями)-DIMTIH="OFF"
    ThisDrawing.ActiveDocument.SetVariable "DIMTIH", 0
   
    ThisDrawing.ActiveDocument.SetVariable "DIMTIX", 1
    'Выравнивание всех размеров кроме ординатных
    '(за размерными линиями)-DIMTOH="OFF"
    ThisDrawing.ActiveDocument.SetVariable "DIMTOH", 0
   
    '=====Размещение текста=====
    'DIMTMOVE=0
    ThisDrawing.ActiveDocument.SetVariable "DIMTMOVE", 0
   
    '=====Масштаб размеров=====
    'Масштаб линий и элементов размеров-DIMSCALE
    ThisDrawing.ActiveDocument.SetVariable "DIMSCALE", М_А
   
    '=====Настройка=====
    'Размещение текста вручную-DIMUPT="OFF"
    ThisDrawing.ActiveDocument.SetVariable "DIMUPT", 0
    'Всегда рисовать размерную линию-DIMTOFL="ON"
    ThisDrawing.ActiveDocument.SetVariable "DIMTOFL", 1
   
    '=====Линейные измерения=====
    'Формат единиц-DIMLUNIT='Decimal'=2
    ThisDrawing.ActiveDocument.SetVariable "DIMLUNIT", 2
    'Точность-DIMDEC=4
    ThisDrawing.ActiveDocument.SetVariable "DIMDEC", 0
    'Десятичный разделитель-DIMDSEP="."
    ThisDrawing.ActiveDocument.SetVariable "DIMDSEP", "."

    'Округление-DIMRND=0
    ThisDrawing.ActiveDocument.SetVariable "DIMRND", 0

    'Префикс, суффикс-DIMPOST=""
    'ThisDrawing.ActiveDocument.SetVariable "DIMPOST", "."

    'Коэффициент масштаба-DIMLFAC=1
    ThisDrawing.ActiveDocument.SetVariable "DIMLFAC", 1

    'Отображение нуля-DIMZIN=8
    ThisDrawing.ActiveDocument.SetVariable "DIMZIN", 8
   
        'добавление копии размера
    Call newStyle1.CopyFrom(ThisDrawing.ActiveDocument.ModelSpace)
    ThisDrawing.ActiveDocument.ActiveDimStyle = newStyle1

End Sub