Спасибо ! нашёл фрагмент кода
19.02.2020 11:01:12
Здравствуйте господа разработчики
Просьба расписать какие значения могут быть в красном поле и что они означают. Описаний не нашёл ни в одном хидере // ОПИСАНИЕ СЕМАНТИКИ typedef struct RSCSEMANTICEX // РАСШИРЕННОЕ ОПИСАНИЕ СЕМАНТИЧЕСКОЙ // ХАРАКТЕРИСТИКИ ОБ'ЕКТА { int Code; // внешний код [B] int Type; // тип значения[/B] int Reply; // разрешается повторение (1) int Enable; // допустимая(1),обязательная(2) // (при создании семантики поле не учитывается) int Service; // служебная,допустима для всех объектов (1) int Reserve; // резерв (должен быть равен 0) char Name[32]; // название характеристики char Unit[8]; // единица измерения double Minimum; // минимальное значение double Default; // умалчиваемое значение double Maximum; // максимальное значение int Size; // общий размер поля значения семантики int Decimal; // точность поля значения семантики char ShortName[16];// короткое имя семантики (связь с полем БД) } RSCSEMANTICEX;
Изменено: |
|
|
12.02.2020 21:57:38
[QUOTE]Alla Krylova написал:
их необходимо отфильтровать и режим будет корректно работать.[/QUOTE] к сожалению аэронавигационные даные публикуются в документах, а те объекты которые я показал - ещё и по государственной границе Не думаю что "фильтровать" точки по государственной границе хорошая идея :) п.с проблема не в количестве точек Алла, а в том, что первая точка и первый участок фиолетового объекта полностью совпадает с одним и участков синего объекта кроме того, в объекте есть "петля". Когда я распутал петлю (в нижнем правом углу) и перетащил первую точку, а потомразрезал объекты - всё выполнилось в штатном режиме. |
|
|
17.01.2020 19:45:22
[QUOTE]kalakom написал:
Да - это понятно. А как задействовать событие OnMapMouseMove?[/QUOTE] Смотрим код, который генерирует событие [QUOTE]procedure TaxcMapView.MouseMoveProcessEvent(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin [B] if FEvents <> nil then // 1-е УСЛОВИЕ ЕСЛИ ОБРАБОЧИК (СЛОТ) ПОДКЛЮЧЕН К КОМПОНЕНТУ MapView[/B] begin FEvents.OnMouseMove(ShiftToInt(Shift), X,Y); // если выполняется первое условие - срабатывает MouseEvent (без MAP) if FDelphiControl.MapHandle<>0 then[B] // 2-е УСЛОВИЕ - ЕСЛИ ОТКРЫТА КАРТА[/B] begin FPnt := ConvertMapCoordinates(X,Y,FDelphiControl); // выполняется конвертирование координаты FEvents.OnMapMouseMove(ShiftToInt(Shift),FPnt.X, FPnt.Y, FPnt.Z); [B]// и вызов обработчика в котором передаётся INT DOUBLE DOUBLE DOUBLE [/B] end; end; end;[/QUOTE] ВЫВОД: Должен быть создан и подключен обработчик и обязательно открыта карта При закрытой карте срабатывает обычный Event. при открытой - и обычный и тот, который вы хотите задействовать ))) |
|
|
24.08.2019 13:06:27
[QUOTE]Александр Кружков написал:
Прошу подсказать, о каком режиме или функции идет речь?[/QUOTE] Отловил ситуацию стабильно Прикладываю к сообщению карту с рамкой и двумя объектами типа "Лес" Карта взята с сайта КБ (OSM карты) на регион "Томск" Попытка разрезать один из "лесов" объектом "рамка" заканчивается не разрезанием, а вырезанием той части, что внутри рамки. Как раз нужной части
Изменено: |
|
|
© КБ Панорама, 1991-2024 Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности |