RUS  ENG 

Дмитрий Озеров (Все сообщения пользователя)

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

Страницы: Пред. 1 ... 30 31 32 33 34 35 36 37 38 39 40 След.
Интернет и ZULU
 
Если работать штатно через Zulu (ZuluXTools) с картами в Интернет, то задумываться как получать изображение и ID элементов не надо. Вы работаете со слоями по-старому, как если бы они были локальными. А если Вы разрабатываете страничку HTML для просмотра карты в веб-браузере (напр. Internet Explorer), то для получения изображения и проч. выполняются запросы по HTTP протоколу. Например, получить изображение карты можно будет так: http://zs.zulugis.ru:6473/mapspb.zmp?action=draw&scale=156.25&x=59953830.5&y=15163639&w=400&h=300
Данные по объекту можно получить так:
http://zs.zulugis.ru:6473/mapspb.zmp?action=getinfo&x=59945196.6875&y=15163287.4375
Интернет и ZULU
 
Как раз с использованием ZuluServer, данные и не перекачиваются к клиенту. Если пользователь зашел на сайт (напр. www.zulugis.ru - действующий пример) с помощью браузера, то он получает изображение карты (GIF). Конечно при многократной смене изображения (zoom, перемещение) будет расходоваться трафик на подкачку этих GIF'ов, но это никакие не 40Мб. Если пользователь заходит из Zulu (попробуйте сервер zs.zulugis.ru порт 6473), то обмен происходит минимумом данных (плюс сжатие данных, реализованное в протоколе). Картинка возвращается в сжатом векторном формате.
Изображение в Clipboard (delphi 7)
 
Пример копирования карты в clipboard на Delphi 7 выложен в папке ftp://ftp.politerm.com.ru/zulu/samples/delphi/mapcopy.exe (~208Кб)
Изображение в Clipboard (delphi 7)
 
Методов у контрола таких нет, чтобы автоматически все копировалось. И что нужно копировать ? Битмап клиентской области окна или векторный рисунок всей карты, включая области за границами окна ?
Сейчас можно изловчиться и запросить у контрола интерфейс IDataObject и получить от элемента изображение как bitmap, так и metafile (enhanced metafile). А дальше полученные данные разместить в clipboard.
Как програмно создать слой с растром?
 
Формат файла .ZRS (растровый объект) текстовый, объектной модели и не нужно.
Формат такой:
<путь-к-файлу-изображения>
X0 Y0
X1 Y1
<цвет-фона>
<цвет-наружный>
X0,Y0,X1,Y1 - такие как в диалоге "Задание растра"
Как можно отловить событие сохранения изменения
 
Сделали прокрутку в редакторе запросов + сохранение макета. В текущем обновлении на сайте (от 24.05.05) это включено.
Как можно отловить событие сохранения изменения
 
По первому понятно, это - отдельное приложение (не плагин). Т.о. нужны именно события от элемента ZbStdBrowser.
О прокрутке: это в плане стоит. Сделаем.
Как можно отловить событие сохранения изменения
 
1. lastmodify=01C4F7C6:D4DE4BE0 - время последнего изменения в формате dwHighDateTime:dwLowDateTime в 16-ричном виде. Эти два числа можно прямо копировать в структуру FILETIME (Win32 API).
2. Файл .zb.stat создается при выполнении каких-либо запроса на обновление через ядро ZB. Остальные базы значит не менялись.
Попутно вопрос: Вы пишете свое приложение, где Zb - компонент, или плагин к Zulu ?
Перерисовка картинки
 
Правильно ли понимаю, что при выполнении определенного запроса окно браузера пропадает и остается только рамка окна ? (возможно, что при выполнении длительного запроса окно просто не перерисовывается)
Происходит это в самой оболочке Zulu или когда вставляете компонент ZbStdBrowser в свою форму ?
Опишите поподробнее по е-мейлу ([email protected], Дмитрий Озеров), и еще, снабдите снимком экрана, как это выглядит.
Как можно отловить событие сохранения изменения
 
Сейчас нет подобных событий от браузера, однако бесспорно они будут полезны. Поставим в план. Сейчас можно выйти из положения так: при изменении данных в файл статистики .zb.stat записывается время последнего изменения; можно следить за ним.
Доступ к объектам!?
 
Вид карты в миниатюре - MapCtrl1.DrawInMapExtents. Навигация по ней - MapCtrl1.Map.Mode = eModeNone (нет предустановленного режима), и отлавливаем события от мыши и делам что хотим.
Доступ к объектам!?
 
Готового элемента "Навигатор" нет. Можно использовать еще один компонент MapCtrl и синхронизировать его (вручную, программно) с основной картой.
Delphi и Добавление Polyline
 
Как сделаешь, сообщи, конечно, адрес. Интересно посмотреть.
Плагин и ProjectLink
 
Так, а объект zb создан ? (zb:= CoZbDatabase.Create;)
Плагин и ProjectLink
 
Как минимум нужно попробовать избежать путей типа "УТ-1(115МКРмаг.ОКТЯБРЬСКИЙ)\УТ-1(115МКРмаг,ОКТЯБРЬСКИЙ).zl". В именах папок и файлов не должно быть всяких точек, запятых и всевозможных символов, кроме латиницы и цифр. Если все равно не работает, сообщите. (Я проверил, с нормальными путями работает)
Очистить карту, или новый проект в delphi 7
 
1. Очистить слой (удалить все объекты слоя)- ZuluTools.LayerEmpty. Имя слоя можно взять MapCtrl1.Map.Layers(i).Name
2. Очистить карту (удалить слои из карты) - MapCtrl1.Map.Layers.Remove(i) в цикле.
3. Отдельно обновление "только ActiveX" пока не предусмотрено. Надо и саму Zulu обновлять - модули у них взаимосвязаны. Если обновить только ZuluCtrl.ocx и ZuluLib.dll, а Zulu при этом не обновить, будет конфликт модулей и, как следствие, вылеты. Обновление все это включает.
Сетка редактора
 
Нет, вид сетки не настраивается. Сетка - просто сетка. Можно, конечно, воткнуть и настройку вида сетки (точки, крестики, ...), но не излишество ли это ?
Delphi и Добавление Polyline
 
1. Объект PolyLine не создан. Просто заведена переменная Poly , хранящая ссылку на IPolyLine, и все. Надо еще Poly := CoPolyLine.Create; выполнить. А дальше уже с этим объектом выполнять Poly.Add(...).
2. Тоже и с "St" (IElemStyle) - создать COM-объект: St:=CoElemStyle.Create;
3. Слой, куда добавляется объект создан и добавлен в карту ? А то MapCtrl1.Map.Layers.Active вернет пустую ссылку, если слоев никаких нет -> ошибка.
4. Заполнить Polyline массивом точек: см. PolyLine.Fill. Дальше - Layer.AddPolyLine
5. Побольше примеров ? Надо бы, да руки не доходят...
6. Длину в статусбар так: Поместить компонент ZuluCtrl и отлавливать событие OnSetStatus: посылаемые текст отображать в статусбаре.
События Zulu
 
А почему "if (EventID > evMapElementsChanged) then", а не "if (EventID = evMapElementsChanged) then" ?
События Zulu
 
Так это константа из enum eZuluEvents, прямо ее (evMapElementsChanged) и используйте в тексте программы. Если интересует ее значение, то evMapElementsChanged = 0x00010036.
События Zulu
 
evMapLayerCompositionChanged - не то. Оно возникает, когда меняется порядок слоев в карте.
Обработать нужно evMapElementsChanged. При этом:
Param1: ссылка на объект IChangedElementKeys (коллекция ID объектов, подвергшихся изменению, в т.ч. создание)
Param2: число элементов
Param3: cсылка на long - (continue_flag, зарезервировано).
События пока слабо описаны - обращайтесь просто с вопросами по конкретным интересующим событиям, поясним.
ZuluHydro вопрос разработчикам
 
На протяжение долгого времени у нас эпизодически велась разработка версии расчетов для ИнГео. Были и некоторые моменты в API ИнГео, который не позволяли бысто и безкровно доделать эту разработку. Сейчас мы пришли к выводу, что если есть необходимость использовать для расчетов данные из ИнГео, то в обозримом будущем речь может идти об импорте/экспорте этих данных из ИнГео для расчета в Zulu.
Баг при експорте в .dfx
 
По умолчанию, в установках печати стоит "текущий вид". Если в текущем виде (т.е. окне) не вся сеть поместилась - на бумаге тоже самое будет. Чтобы всю карту распечатать (ну и в просмотре видеть) убедитесь, что в настройках печати карты (Карта|Настройка печати) выбран печатаемый фрагмент "вся карта".
Баг при експорте в .dfx
 
Ошибка с DXF была исправлена уже после 18.03. Сейчас на сайте лежит релиз 5.2.0.1910 от 24.03, где это исправлено.
А поподробнее можете сообщить, что с просмотром ? В каком случае не весь рисунок помещается ?
Добро пожаловать!
 
Для элеваторной схемы присоединения СО и теплообменниками на ГВС используйте схемы NN 7, 13, 19 в зависимости от схемы ГВС (последовательная, смешанная, параллельная)
Страницы: Пред. 1 ... 30 31 32 33 34 35 36 37 38 39 40 След.