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

Не работает GetShotWayDlg

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: Пред. 1 2
RSS
Не работает GetShotWayDlg
 
x32
Код
procedure SetSemanticStringValue(Obj:TMapObj;Code:integer;Value:string);
var
  sem:integer;
begin
  sem:=Obj.Semantic.FindByCode(Code);
  if sem=0 then sem:=Obj.Semantic.Add(Code);
  mapSetSemanticValue(Obj.ObjHandle,sem,GtkPChar(GtkString(Value)),length(Value));
end;
 
По вопросу о сообщении про некорректную библиотеку: пришлите на техподдержку классификатор и iml к нему.
 
Цитата
Валерий Парусов написал:
2) При построении кратчайшего маршрута с диалогом появляется ошибка "atan2 DOMAIN error", но маршрут строится
По данному вопросу просьба прислать пример данных (карту в формате sxf). Данные можно выслать на адрес технической поддержки КБ Панорама <panorama@gisinfo.ru>  с указанием вопроса с форума. Так будет быстрее увидеть и поправить ошибку.

Спасибо!
 
Цитата
По данному вопросу просьба прислать пример данных (карту в формате sxf).
А карта зачем? Это ваша 5 миллионка, она 1Гб занимает. Может граф дорог нужен?
 
Присылайте граф, rsc, iml.
 
проблема с ошибками iml решилась пересозданием карты из SXF. Для диагностики ошибки ATAN2 вечером пришлю граф и его RSC
 
Не удалось повторить ошибку с mapSetSemanticValue. Проверял на карте Ногинска из инсталляции. Все добавляется. Может какую подсказку дадите, чтобы ошибку повторить?
 
Да я сам в недоумении, откуда это появилось. Объекты создаю динамически из БД на временном слое
Код
var rsc:AnsiString;
...
NetRSC:=ini.ReadString('Map','NetRSC','service.rsc');
...
rsc:=ExtractFileDir(MapFile)+'\'+NetRSC;
...
hSiteTmp:=mapCreateAndAppendTempSite(vMap.MapHandle,@rsc[1]);
idxTmp:=mapGetSiteNumber(vMap.MapHandle,hSiteTmp);
mapSetSiteNameEx(vMAp.MapHandle,hSiteTmp,'Объекты');
...
while not dm.Obj.Eof do begin
    if (dm.Objx.Value<>0) and (dm.Objy.Value<>0) then begin
      mo:=TMapObj.Create(vMap);
      mo.MapView:=vMap;
      mo.CreateNullObj(idxTmp);
      //dm.Objcode.Value принимает значения 46 или 47
      mo.SetObjectByExcode(KM_IDFLOAT2,dm.Objcode.Value,OL_VECTOR);
      mp.SetPoint(dm.ObjX.Value,dm.ObjY.Value);
      mo.Metric.Append(0,mp);
      SetSemanticStringValue(mo,9,dm.Objfname.Value);
      ...
    end;
    dm.Obj.Next;
end;
классификатор и граф вышлю на почту
 
Создание экземпляра
     mo:=TMapObj.Create(vMap);
     mo.MapView:=vMap;
можно сделать один раз вне цикла.
А что делает SetSemanticStringValue?
Страницы: Пред. 1 2
Читают тему (гостей: 1)



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

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