Перейти к содержанию

Вопросы

Есть ли возможность при использовании MapView и при наличии нескольких маркеров на нем, посчитать оптимальный Location и Zoom mapview'a? Чтобы поместилось как можно больше маркеров.

Вроде как на javascript это делается с помощью такого кода:

var latlngbounds = new google.maps.LatLngBounds();
 for (var i = 0; i < markerslat.length; i++) {
  latlngbounds.extend(markerslat[i]);
 }
 map.fitBounds(latlngbounds);

Использование WebBrouser не подходит.

Может у кого-то есть что сказать по этому поводу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

Ответы на этот вопрос пока отсутствуют

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От gutalin79
      Почему при добавлении MapView в пример Android Service, приложение перестает работать?
      AndroidSimpleService.zip
       
       
       
      Пример делал по этому видео: 
       
    • От Олег Игоревич
      Добрый день! 
      Проблема с компонентом TMApView в Tokyo 10.2.3 при запуске приложение сразу закрывается.
      Если запустить отладчик при загрузке IDE сообщает "... raised exception class EJNI with message 'Java class JGooglePlayServicesUtil could not be found'."
      Пробовал с пустой формой и одним MapView и демо результат тот же. В Berlin 10.1 все работает нормально, ключи и разрешения установлены.
      Куда капать ? Help! 
    • От tLink
      Всем доброго времени суток,
      Столкнулся с проблемой на iOS. На форме TabControl, на одной из вкладок лежит MapView (примерчик приложил). Если "свернуть/развернуть" приложение и походить по вкладкам, то пропадают иконки у TabControl, показывает как чёрные квадраты. Иконки установлены через ImageList. Такой же эффект и у ListView/Image на соседних вкладках. Можете что-то подсказать?
       
      project1 (2).rar
    • От dim
      Подскажите как сделать. Нужно разместить маркер по центру компонента MapView и что бы при перемещении по карте он так и оставался видимым по центру и соответственно 
        myCoordinat.latitude := MapView3.Location.Latitude;   myCoordinat.longitude := MapView3.Location.longitude; выдавал координаты под этим маркером
      и второй вопрос: по полученным координатам я получаю адрес myGeocoder.GeocodeReverse(myCoordinat) , но он не соответствует КЛАДР (да и вообще много ошибок в названии улиц), а мне надо привязать к своей базе адресов. Посоветуйте кто как выходил из ситуации, или как получить из него список всех улиц по городу 
    • От dim
      Если на форме лежит MultiView у которого Mode:= TMultiViewMode.Drawer на нем лежит MapView. Если открывается боковое меню то оно находиться под MapView и соответственно не доступно. Как это исправить?
    • От rakhmet
      Вопрос: как определить, какое именно действие совершает пользователь - увеличивает или уменьшает?

       
       
      Ответ: на примере сэмпла, поставляемого в комплекте с Delphi, в файле C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Mobile Snippets\InteractiveGestures\ImageZoom\ImageZoomU.pas можно попробовать заменить одну часть процедуры:
      begin { zoom the image } LImage := TImage(LObj.GetObject); LImageCenter := LImage.Position.Point + PointF(LImage.Width / 2, LImage.Height / 2); LImage.Width := LImage.Width + (EventInfo.Distance - FLastDistance); LImage.Height := LImage.Height + (EventInfo.Distance - FLastDistance); LImage.Position.X := LImageCenter.X - LImage.Width / 2; LImage.Position.Y := LImageCenter.Y - LImage.Height / 2; end; на другую:
      begin { zoom the image } if EventInfo.Distance > FLastDistance then showmessage('zoom in') else showmessage('zoom out'); end;  
      Что с этим делать дальше — думаю, объяснять излишне.
       
       
      Если кто знает более элегантное решение, не основанное на вычислении дистанции, — смело делитесь, не стесняйтесь.
    • От FREEFAR
      Доброе время суток!
      Раньше все манипуляции с отображением геолокации и картами делал непосредственно в WebBrowser через api yandex.
      Сейчас обратил внимание на TmapView но ума не приложу как в нем построить маршрут между двумя и более точками? Направьте пжл ибо в интернете инфо не вижу... И возможно ли вообще это? Видео от ZuBy смотрел но не разобрался с его компонентой ибо не особо силен... Буду очень признателен. Может где пример есть подобной реализации , думаю сам допру дальше 
    • От AlexShaman
      Поддерживает ли MapView в Delphi 10 работу в windows среде?
      У компонента в списке поддерживаемых платформ указано, что поддерживает. 
      Чем отличается работа с MapView в Android и Windows?
    • От Rusland
      Поставил кнопочку и написал обработчик чтобы скрывать показывать верхнюю и нижнюю панель системы
      procedure TForm1.SbtMaximizeClick(Sender: TObject); begin Form1.FullScreen:=not Form1.FullScreen; end; Если на экране есть MapView и Form1.Fullscreen = true, то стоит только один раз потыкать пальцем по карте, как снизу появляется стандартная панель с кнопками Back, Home, Menu и никуда не пропадает, причем она перекрывает часть рабочей области приложения.
      Как от этого избавится?
    • От Rusland
      Есть два планшета Lenovo Tab 2 A7-30DC (назовем их A и Б). Есть написанная на Berlin программа с MapView.
      По умолчанию у обоих стояла ОС Android 4.4.2. На A я обновил операционку до максимальной официальной версии 5.0.1, на Б оставил 4.4.2
      На Б программа худо-бедно работает, но на MapView не показывает синюю точку - текущее местоположение (сторонние программы GPS Status, Яндекс Навигатор GPS координаты ловят нормально). Пробовал компилировать на Seattle - тоже самое. LocationSensor сначала неправильно показал координаты, ошибся на 300км, но после перезапуска программы стал показывать правильно. Почему MapView не показывает, не понимаю.
      На А программа зависает при попытке поставить метку на MapView или нарисовать маршрут получаю Segmentation fault.
      Вот, например:
      procedure TFrmMain.SetMarkerOnMap(Id:integer;NaimObj,AdrObj:String;Lat,Lon:Double); var Descrip: TMapMarkerDescriptor; MyLocation: TMapCoordinate; begin TThread.Queue(TThread.CurrentThread, procedure begin try if (MapView.Visible) then begin MyLocation:=TMapCoordinate.Create(Lat,Lon); Descrip:=TMapMarkerDescriptor.Create(MyLocation); Descrip.Icon:=ImObjBlueMarker.Bitmap; Descrip.Draggable:=False; Descrip.Title:=NaimObj; Descrip.Snippet:='['+Id.ToString+'] '; if (AdrObj<>'') then Descrip.Snippet:=Descrip.Snippet+AdrObj; MyMarker:=MapView.AddMarker(Descrip); // тут Segmentation fault LMarkers.Add(MyMarker); end; except end; end); end; Как решить проблему?
       
       
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...