RUS  ENG 

Евгений Шадрин (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Рисование полилиний, Как избежать наложение полилиний друг на друга?
 
Добрый день.
Я строю инженерную сеть от заданного узлового объекта (РУСУГ). Сеть состоит из полилиний и других узловых объектов.
1) Я расставляю узловые объекты по координатам;
2) Строю полилинии между объектами.
Повторное выполнении скрипта от заданного РУСУГ дублирует полилинии друг на друге. При этом узловые объекты не дублируются.
Как я могу проверить, что полилиния уже существует и не строить ее?
Я пытался использовать метод GetClosestElementByXY, но каждый раз при построении я нахожу id объекта, хотя объект в точке с указанными координатами отсутствует (я проверял рисуя на месте указанных координат узел). Возможно, это как-то связано с тем, что символьный объект имеет контур.
Я пытался использовать ElemIDByXY. Но также нахожу какой-нибудь объект.
Координаты для поиска я беру из расчёта, что полилиния должна попасть в середину расстояния между символьными объектами.
Как мне найти в указанной координате именно полилинию, а не символьный объект?
Экспорт - печать в растр, Не получается разобраться
 
Цитата
написал:
вствуйте! Для выделения объектов одного слоя, при выполнении пересечения с объектами другого слоя (операцию можно выполнять среди заранее выделенных групп), используйте инструмент Карта | Запрос | Пересечь со слоем, подробнее здесь: https://www.politerm.com/zuludoc/index.html#edit_group_select_cross.html
Способ рабочий. Но если один слой находится на сервере, а другой локально, то ничего не происходит. Так и должно быть?
Экспорт - печать в растр, Не получается разобраться
 
Разобрался. Оставлю ссылку на то, как это сделать.

https://www.politerm.com/zuludoc/edit_group_select_area2.html
Экспорт - печать в растр, Не получается разобраться
 
Добрый день. (ZuluGIS Версия 10.0.0.9383u)
Я создал отдельный слой для обозначения районов полигональными площадными объектами.
Теперь я хочу вывести на печать в растр все объекты (нарисованные в других слоях) входящие в нарисованный мною полигональный объект.
Как я понял, мне надо выделить все объекты других слоев в группу. Через инструмент "Выделить областью" с зажатием клавиш ctrl+Shift у меня получилось это сделать, но мне пришлось обводить областью мой нарисованный полигон.
Есть способ используя уже нарисованный полигон?
Изменено: Евгений Шадрин - 28.10.2025 09:05:28
Рисование через макрос (версия Zulu 10.0.0.9383u), Построение объектов сети в слое
 
Версия программы: 10.0.0.9383u x 86 Также проверил на 10.0.0.9383u x 64
Координаты получаю следующим образом:[CODE]Set GetEl = L.Elements.GetElement(El)
Set ElXY = GetEl.GetCenter
x = ElXY.X
y = ElXY.y
yN = y + 0.0005[/CODE]

Обратил внимание, что если выставить значение y + 0.001, то элементы при построение связываются. Если установить, скажем + 0,0009 связь не устанавливается.

Рисование через макрос (версия Zulu 10.0.0.9383u), Построение объектов сети в слое
 
Добрый день.
Решаю задачу построения полелинии от заданного элемента.
[CODE]Set Lw = Zulu.ActiveMapDoc.Layers.GetItemByUserName("GAS")
Set Line = CreateObject("ZuluLib.PolyLine")
Line.AddPoint x, y
Line.AddPoint x, yN
Lw.AddSymbol x, yN , 6, 1
Lw.AddPolyLine Line, Nothing, 2, 1[/CODE]Получаю на карте PolyLine между выделенным объектом (от которого надо было построить линию) до вновь добавленного объекта.
НО! Если я пытаюсь найти путь между элементами, то получаю "Путь не найден". Элементы при построении не связались друг с другом.
Точнее, PolyLine в конце не связалась с добавленным символом. В другой версии Zulu (не помню в какой) все работало.

Что делать, чтобы связать добавленные объекты друг с другом?
Изменено: Евгений Шадрин - 23.10.2025 11:48:50
Запрет на экспорт слоя
 
Прошу добавить возможность блокировать пользователям экспорт слоя, но без блокирования перечисления объектов слоя. Существующий метод запрета экспорта блокирует работу макросов и плагинов.
Смена активного слоя при открытии карты
 
Можно сделать слой активным и редактируемым при помощи макроса. Затем назначить макрос на сочетание клавиш.

Sub Activate_SLOI 'Получаем активный слой карты
Set L = Zulu.ActiveMapDoc.Layers.Active
ActivateSloi = L.Map.Layers.GetIndexByUserName("НАЗВАНИЕ ВАШЕГО СЛОЯ")
L.Map.Layers.ActiveIndex = ActivateSloi
L.Map.Layers.EditIndex = ActivateSloi
End Sub
Подключить/отключить сетку карты, Не могу найти свойство.
 
Если не работает на новой версии, то напишите L.MapGrid.
Добавление изображения в карту как слой
 
Здравствуйте.
Возможно ли добавить растровое изображение в масштабе 1к1. Не увеличивая и не уменьшая изображение при изменении масштаба карты?
Размер направлений (стрелок) самотечных участков при печати больших форматов (А0, например)
 
Советую вам выполнить "Файл" -- "Экспорт" -- "Печать в растр". При экспорте указать масштаб, в котором стрелки отображаются нормально. Далее не из зулы вывести на печать полученное изображение.
Пожелания к инструменту растр-привязка
 
Добрый день.
При привязке растра к сетке по точкам приходится каждый раз удалять три базовые точки. Могли бы вы сделать рядом с кнопкой "удалить" -  кнопку "удалить базовые точки"? Новички по началу путаются, что нужно удалять, да и в целом не очень удобно удалять три первых точки по очереди. Мне, да и другим специалистам, было бы удобно удалить их одним нажатием потому, что мы привязываем очень много растров в день.
Вложенность таблиц
 
Интересный вопрос! Поддерживаю!
Подключить/отключить сетку карты, Не могу найти свойство.
 
Спасибо!
[CODE]' ActiveX enumeration values definitions start (do not change!)
Const eMapGrid = 1
Const eMapGrid2 = 0
' ActiveX enumeration values definitions end


Sub Setka_na_karte

'Подключить/отключить сетку карты

Set L = Zulu.ActiveMapDoc

Set Grid = CreateObject("ZuluLib.MapDoc")

If L.Grid = 0 Then

L.Grid = eMapGrid

Else

L.Grid = eMapGrid2

End If

End Sub
[/CODE]
Изменено: Евгений Шадрин - 26.02.2025 05:16:44
Подключить/отключить сетку карты, Не могу найти свойство.
 
Добрый день!
Хочу вывести на панель инструментов макрос, который будет подключать/отключать "Отображение сетки карты". Не могу найти соответствующее свойство.
Свойство [URL=https://www.politerm.com/zuludoc/zuluax/EditGrid_cls.html]EditGrid [/URL]мне не подходит, так как подключает "Сетку редактора".
Отрисовка ломанной "по направленю" с указанием длины до следующей точки.
 
[QUOTE] написал:
У нас это уже реализовано, не как в CAD-системах, а немного иначе. Щелчком правой кнопки мыши вызывается контекстное меню и далее выбирается необходимая функция.

[URL=https://politerm.com/zuludoc/index.html#edit_input_polyline_geom.html]https://politerm.com/zuludoc/index.html#edit_input_polyline_geom.html[/URL] [/QUOTE]
Спасибо, разобрался.
Отрисовка ломанной "по направленю" с указанием длины до следующей точки.
 
Возможно ли реализовать инструмент позволяющий рисовать ломанную линию по направлению, подобно тому, как это сделано NanoCAD или AutoCAD?
Инструмент "Растр-привязка"
 
Здравствуйте.
После привязки растра и сохранении результата, при выходе из "Растр-привязка" в "рабочем месте" сбрасывается "редактирование" растра, при этом он остается активным. Так и задумано? Нельзя ли оставить растр активным и на редактировании?

Я разобрался, что есть комбинация клавиш Ctr+Е. Но мне все равно не понятно, зачем так сделано.
Изменено: Евгений Шадрин - 17.01.2025 13:13:50
Изменить "тип файлов:" в команде "Добавить слой".
 
Цитата
написал:
Евгений, добрый день!
Да, сделаем последний выбранный тип файлов запоминающимся и он будет выбираться в следующий раз по умолчанию.
Спасибо. Все работает.
Обновление написей
 
[QUOTE] написал:
[URL=/forums/?PAGE_NAME=profile_view&UID=1425&sphrase_id=42894]Евгений Шадрин[/URL], добрый день. Спасибо.
А не подскажите, если слоев несколько. Так, что один активный, остальные получается неактивные, можно ли простым перечисление слоев обойтись. Грубо говоря надо одновременно 10 слоев обновить.[/QUOTE]

Вам нужно получить каждый слой последовательно и применить в нем скрипт описанный выше.
Чтобы сделать слой активным воспользуйтесь свойством ActiveIndex ([URL=https://www.politerm.com/zuludoc/zuluax/index.html#Layers_ActiveIndex.html]https://www.politerm.com/zuludoc/zuluax/index.html#Layers_ActiveIndex.html[/URL]).
Затем примените описанный выше макрос. Дальше получите следующий слой и так далее.
Задача вроде бы поставлена, но решение зависит от неизвестных мне нюансов.

В данном случае мне приходит на ум только такой вариант. Вероятнее - есть решение более элегантное.
Привязка растровых изображений к "сетке" на карте., Добавление нового функционала
 
Добрый день!
Опробовал, спасибо, все работает как надо.
Обновление написей
 

Макрос можно посадить на сочетание клавиш.

Если вы еще не написали, то вот:
[CODE]Sub Update_name_street
  'Получаем активный слой карты
Set L = Zulu.ActiveMapDoc.layers.Active
' проверяем что это слой MAP_а_дороги
If l.UserName <> "MAP_а_дороги" then
   MsgBox "Слой MAP_а_дороги не активный"
   Exit sub
End if

Set LabelStateStreet = L.LabelLayers.ItemById(2)
'Получаем необходимую нам надпись. вместо цифры 2 подставляем свою.    
LabelStateStreet.update
'обновляем
End Sub
[/CODE]
Изменено: Евгений Шадрин - 24.12.2024 10:03:50
Как добавить дополнительные нули к записи через SQL Zulu, Как при помощи встроенного SQL дополнить число нулями с левой стороны, чтобы получилась запись n длины?
 
Спасибо.
Привязка растровых изображений к "сетке" на карте., Добавление нового функционала
 
Добрый день.
Привязываю растровые изображения по крестам при помощи "Растр - привязка". Для этого в карте включаю "Отображение сетки на карте".

Можно ли добавить автоматическую привязку точки "в.." к сетке на карте при зажатой клавише ctrl? Каждый раз приходиться целиться в пересечение линий на сетке. Было бы очень удобно, чтобы вторую точку не приходилось выцеливать.
Как добавить дополнительные нули к записи через SQL Zulu, Как при помощи встроенного SQL дополнить число нулями с левой стороны, чтобы получилась запись n длины?
 
Добрый день.
Как при помощи встроенного SQL дополнить число нулями с левой стороны, чтобы получилась запись n длины?

Мне нужно, чтобы строка содержала шестизначный номер "000000" как всем существующим записям в таблице добавить недостающие нули слева?

Версия 10.0.0.8956u.x64
Изменено: Евгений Шадрин - 03.12.2024 06:24:45
Страницы: 1 2 След.