Как и обещал [URL=https://ru.files.fm/u/kwzz7tt6]https://ru.files.fm/u/kwzz7tt6[/URL]
![]() |
06.10.2017 18:42:25
Дамы и господа !
Думаю человек подождёт до понедельника-вторника и я ему соберу iml c азимутальным кругом. К сожалению у меня нет версии dfc.iml с азимутальным кругом вдома :( ===== Информация для специалистов КБ [IMG WIDTH=266 HEIGHT=232]http://konspekta.net/studopediaorg/baza11/991991999262.files/image054.jpg[/IMG] Азимутальный круг в представлении объекта классификатора это сетка формируемая в IML библиотеке и как правило служит для сопоставления информации с ИКО (индикаторов кругового обзора) различных радиолокаторов на какой то интерактивной карте на мониторе(видеостене ит.п) Сетка базируется на линейном объекте с двумя точками метрики. Первый отрезок линейной метрики я использую для ориентации объекта на истиный (или магнитный) север. Метрика отрезка наносится программно с учётом направления на север в той или иной точке. Для отрисовки я используя 3 семантики 1. шаг сетки 10 или 30 градусов. Первый шаг для более точных оценок азимута, вторая для разных аэродромных диспетчерских систем 2. шаг дальности . У меня используется много различных шагов от 1 км до 50 3. число линий удалённости (у меня от 5 до 10) Используя в комплексе три семантики, можно моделировать азимутальные сетки любых РЛС, начиная с посадочных РСП (РПЛ) и заканчивая разными "кольчугами" и "Вегами"
Изменено: |
|
|
08.09.2017 21:04:34
[QUOTE]Марина Савельева написал:
Подскажите, пожалуйста, по какой причине невозможно создать аэронавигационную карту на базе существующей (скриншоты ошибки доступны по следующим ссылкам): [/QUOTE] Марина, позвольте поинтересоваться, а зачем Вам карта по паспорту той, что у Вас на скрине? Может лучше по этой карте создавать навигационную основу. Она расположена по пути [B]\Data.Ani\Маршрутная карта\РФ_подложка.sitx[/B] [IMG WIDTH=1053 HEIGHT=622]http://delphi-gis.ucoz.ua//Images/ForForum/2017/img17.png[/IMG] |
|
|
08.09.2017 20:50:37
Елена Кузнецова написал:
[QUOTE]Просьба уточнить в какой программе и версии работаете. [/QUOTE] версия 12.5.1 от 01.09.2017. [VIDEO TYPE=YOUTUBE WIDTH=459 HEIGHT=344]//www.youtube.com/embed/SkjCRmC_Lig?feature=oembed[/VIDEO] |
|
|
08.09.2017 20:02:50
[QUOTE]5. Попробуем и такой вариант. Напишем простую программу. [/QUOTE]
Предлагаю ещё проще вариант, переписать часть функции используя исключительно ядро ГТК, а не обёртки в виде компонент. то есть убираем вот этот "слой" кода ПРОГРАММА -> [S]КОМПОНЕНТЫ ГТК[/S] ->ядро ГИС (чем сложнее система тем чаще падает)[CODE]uses maptype, mapproc; procedure TMapPtPoint.deleteFromMap(objKey : integer); var Obj: HObj; begin if Assigned(mapView) then begin Obj := mapCreateSiteObject(mapView.MapHandle, mapView.MapHandle); if mapSeekSiteObject(mapView.MapHandle, mapView.MapHandle, Obj, objKey) <>0 then try mapDeleteObject(Obj); except on e:Exception do AddErrInfo('TMapPtPoint.deleteFromMap: ', E); end; mapFreeObject(Obj); mapView.Repaint; end; end;[/CODE]Прошу учесть, если поиск выполняется не на основной карте а на подключеной пользовательской карте то код будет выглядеть вот так [CODE]procedure TMapPtPoint.deleteFromMap(SiteIndex, objKey : integer); var Obj: HObj; begin if Assigned(mapView) then begin Obj := mapCreateSiteObject(mapView.MapHandle, mapView.MapSites[SiteIndex].SiteHandle); if mapSeekSiteObject(mapView.MapHandle, mapView.MapSites[SiteIndex].SiteHandle, Obj, objKey) <>0 then try mapDeleteObject(Obj); except on e:Exception do AddErrInfo('TMapPtPoint.deleteFromMap: ', E); end; mapFreeObject(Obj); mapView.Repaint; end; end;[/CODE]
Изменено: |
|
|
27.08.2017 18:43:46
[CODE]Добрый вечер. Объявлена как DOUBLEPOINT *.[/CODE]ещё один вопрос для общего развития
а в С++ как выделяется место под массивы так, [QUOTE]ТИП * ObjPoints = new ТИП[количество];[/QUOTE] или так ?[QUOTE]ТИП * ObjPoints = new ТИП[количество* размер(ТИПА)];[/QUOTE] п.с. я на Паскале объявляю вот так[QUOTE]var ObjPoints: array [0..количество-1] of ТИПА[/QUOTE] Может изза мусора в массиве происходит сбой ? хотя я не уверен
Изменено: |
|
|
26.08.2017 12:13:15
Дарья, можно глянуть на Ваш проект в Л.С.
п.с. КБ до понедельника в оффлайне :) п.п.м [QUOTE]HWND handle = Task->MapWindow->GetHandle(); mapViewUserObject(Task->HMap, Task->MapWindow->GetHandle(), &WindowPoint,[/QUOTE] не понимаю, зачем Вы написали первую строку, если во второй остался старый код :|
Изменено: |
|
|
© КБ Панорама, 1991-2025 Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности |