Метод преобразует линейный объект в полигон, замыкая начало и конец линии по заданной дельте (допустимое растояние между концами линии).
Visual Basic:
Function ConvertToPolygon(Style As ElemStyle, ElemType As Long, ElemMode As Long, Delta As Double) As Long
Style - объект, описывающий стиль полигона.
ElemType - номер типа полигона.
ElemMode - номер режима полигона.
Delta - окрестность для замыкания концов ломаной в метрах.
В случае успеха, метод вернет 0 и поменяет все линейные объекты в полигоны, в противном случае, метод вернет -1. Можно преобразовывать как в примитив, так и в определенный тип с режимом. При преобразовании в примитив, ElemType и ElemMode должны быть равны значению -1 (как во втором примере).
'преобразуем в тип Sub Element_ConvertToPolygon Set L = Zulu.ActiveMapDoc.Layers.Active ID = L.CurrentID Set obj = L.Elements.GetElement(ID) 'превращает линию в полигон c типом 2, режимом 1 и дельтой в 1 метр output = obj.ConvertToPolygon(Nothing, 2, 1, 1) 'выводим результат операции MsgBox(output) End Sub
'преобразуем в приметив Sub Element_ConvertToPolygon Set L = Zulu.ActiveMapDoc.Layers.Active ID = L.CurrentID Set obj = L.Elements.GetElement(ID) 'создаем объект Стиля объекта Set st = CreateObject ("ZuluLib.ElemStyle") 'задаем красный цвет узора st.PatColor = 255 'превращает линию в полигон примитив с заданым стилем и дельтой в 1 метр output = obj.ConvertToPolygon(st, -1, -1, 1) 'выводим результат операции MsgBox(output) End Sub