На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

KFF (Все сообщения пользователя)

Поиск  Пользователи  Правила  Войти
Форум » Пользователи » KFF
Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 ... 9 10 11 12 13 14 15 16 17 18 19 ... 327 След.
[ Закрыто] gisu64vcacces.dll access violation, Application Verifier выдает access violation при загрузке gisu64vcacces.dll
 
[QUOTE]Денис Вицко написал:
[B]00000000058EAFC0 [/B]: Address of  ....
"ConsoleApplication1.exe" ([B]Win32[/B]). Выгружено "C:\GISDLL\testdll.dll"
[/QUOTE]
Денис, а по другому разве может быть? (см выделенный текст)
п.с. адреса ну явно не Win32  :|
[ Закрыто] gisu64vcacces.dll access violation, Application Verifier выдает access violation при загрузке gisu64vcacces.dll
 
[B]Александр Волков[/B], просьба проверить следующий вариант
1. в папку с проектом, к загружаемой Вами библиотеке [B]gisu64acces.dll [/B]подкиньте DLL [B]gisu64grd.dll
[/B]2. попробуйте запустить Ваш проект и загрузить gisu64acces.dll
Замкнутость объекта
 
Спасибо Олег Валентинович !
Замкнутость объекта
 
[QUOTE]Andrey Gheleznyakov написал:
Обе определяют замкнутость.[/QUOTE]
Раз ответили Вы, уточняю вопрос.
В интерфейс IAxMetric будет добавлен метод Closed (точнее он уже добавлен)
Вопрос - какую функцию ядра использовать для формирования результата ?
Замкнутость объекта
 
Господа разработчики, поясните мне пожалуйста чем отличаются вот эти две функции?
[QUOTE] // Запросить замкнутость объекта/подобъекта
// info   - идентификатор объекта карты в памяти
// number - номер подобъекта (для объекта - равен нулю)
// Возвращает:  0 - не замкнут, не 0 - замкнут
_MAPIMP long int _MAPAPI mapGetExclusiveSubject(HOBJ info, long int number);[/QUOTE]

[QUOTE] // Определение замкнутости контура подобъекта
// info  - идентификатор объекта карты в памяти
// subject - номер текущего подобъекта (0 - объекта
// Возвращает: 1 - объект замкнут, иначе 0
_MAPIMP long int _MAPAPI mapCircuitousSubject(HOBJ info,long int subject/* = 0*/);[/QUOTE]

и какой из них определяется замкнутость?
Изменено: KFF - 29.10.2017 22:02:13
Сохранение карты, как сохранить в jpeg или bmp
 
[QUOTE]Александр Карулин написал:
Ругается на mapCreateSiteObject(map,map);
И на fFrame

[/QUOTE]

Внёс правки в код выше
координаты
 
[QUOTE]Andrey Gheleznyakov написал:
[URL=jav * ascript:void(0);]Загрузить файлы[/URL]росьба подсказать значения пары координат, для которых неправильно выполняется пересчет.
[/QUOTE]
Андрей Владиславович, а зачем Вам эти пары если у него
[QUOTE]procedure TfrmTestMap.mvMapMouseMove(Sender: TObject; Shift: TShiftState;
 X, Y: Integer);
var
 Point: TDOUBLEPOINT;
 Height : double;
 gradus  : array[0..32] of char;
begin
   Point.X        := mvMap.MapLeft + X;
   Point.Y        := mvMap.MapTop + Y;
   mvMap.ConvertMetric(Point.X,Point.Y,[B]PP_PICTURE[/B][B],PP_GEO[/B]); /// экранные ==> радианы
   FillChar(gradus[0], 32, 0);
   map[B]PlaneTo[/B]PointFormatString(mvMap.MapHandle, Point.X, Point.Y, Height, gradus, 32); /// [B]радианы берутся как метры[/B] и переводяться в ===> строку
   sbStatus.Panels[0].Text := Trim(gradus);
end; [/QUOTE]
Естественно у человека получится  геодезия соответствующая 0,0 проекции карты , как правило осевой и параллель главной (средней) точки


+ и вообще, функция очень странно описана

[QUOTE]// [B]Пересчитать значение координат из [U]плоских прямоугольных[/U] координат[/B] документа (метры)
// в систему, определяемую форматом отображения текущих координат
// и сформировать строку
// hmap    - идентификатор открытых данных
// x, y    -[B] координаты точки в [U]радианах [/U][/B]в соответствии с текущими параметрами
//           проекции (mapGetDocProjection)
// h       - высота точки (указатель может быть равен нулю)
// place   - адрес строки для записи результата
// size    - размер выделеной строки (не менее 256 байт)
// Пример строки:
// B= -73° 27' 04.53"  L= 175° 51' 21.07"  H= 109.51 m (WGS84)
// X= 6 309 212.12 м   Y= 7 412 249.25 м (СК42)
// При ошибке возвращает ноль[/QUOTE]
Это как ?  :|
Изменено: KFF - 25.10.2017 21:44:06
Работа с панелями задач в PanApi
 
Дарья, статус кнопкок в задаче PanTask программист должен запоминать самостоятельно куда то в свой код
В резиновый массив,  списки, теги кнопок на форме и.т.п (на ваш вкус).

Суть всей технологии - обмен событиями через экспортные функции между задачей и ГИС Панорамой.
То что разработчики обвлекли все эти экспортные функции в "шкурки" TPanTask TPanAction и.т.п, это исторически сложившаяся традиция.
По сути задачу можно написать используя исключительно свои экспортные функции для того чтобы Панорама могла вас о чём то оповещать и что-то вам передавать И экспортные функции самой Панорамы (mapassesXXX maptaskXXX) для обратной связи .


[U]По Вашему вопросу
[/U][QUOTE]Но, когда объекты уже выделены, а пользователь закрыл панель задачи и открыл заново, то событие происходит правильное программа заходит в ветку с сообщением "True" ,[/QUOTE]
Вообще то при начальной инициализации кнопки нужно выставлять в статус который соответствует их предназначению в задаче.
Я имею ввиду следующее. Если кнопка "А" называется "работы с выделенными", то при запуске задачи Вы должны проверить функцией
mapTotalSeekObjectCount число уже выделенных объектов и выставлять не тупо FALSE а флаг по числу выделенных объектов.

Изменено: KFF - 25.10.2017 21:35:03
Сохранение карты, как сохранить в jpeg или bmp
 
[CODE][/CODE][QUOTE]uses mapproc, maptype;

   function mapCreateSiteObject(map: HMap; site : HSITE; const kind : integer = KM_IDDOUBLE2; const text : text = 0) : HObj; stdcall; external 'gisacces.dll'; // Добавлено!

rocedure SaveMapToFile(const MapFileName, jpgFileName : string;  const FrameKey : integer = 0);  
var map : HMap;
   obj : HObj;
   z : double;
    fFrame : TMapDFrame;  // Добавлено!
begin
 map  := mapOpenMap(PChar(MapFileName),0);
 if frameKey<>0 then
 begin
   obj  := mapCreateSiteObject(map,map);
   mapSeekSiteObject(map,map,Obj, frameKey); // рамка
   mapObjectFrame(Obj, fFrame);
   mapFreeObject(Obj);
 end else
   mapGetTotalBorder(map, fFrame, PP_GEO);
 mapGeoWgs84toPlane3d(map, fFrame.x1, fFrame.y1, z);
 mapGeoWgs84toPlane3d(map, fFrame.x2, fFrame.y2, z);
 LoadMapToPicture(map, Handle, @fFrame, 24, 2000000, 150, PChar(jpgFileName), 0);
 mapCloseData(map);
end;[/QUOTE]

параметры  LoadMapToPicture

24 - число бит на пиксель
2000000 - сохраняемый масштаб карты
150 - качество в dpi

Если карта очень огромная, то можно сохранить
1) частями "нарезая fFrame" самостоятельно
2) корректируя вынеуказанные параметры
например уменьшить качество с 24 на 8 бит/пиксель (память уменьшается автоматом в 4 раза
ИЛИ
увеличивая значение масштаба - размер уменьшается
ИЛИ
уменьшить число DPI - размер тоже уменьшится
Изменено: KFF - 26.10.2017 12:10:48
Классификатор Панорама 12, Внесение изменений в классификаторе Панорама 12
 
[IMG WIDTH=624 HEIGHT=390]http://s018.radikal.ru/i507/1710/cb/09f1ee543064.png[/IMG]
Страницы: Пред. 1 ... 9 10 11 12 13 14 15 16 17 18 19 ... 327 След.



© КБ Панорама, 1991-2025

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности