Внедрение ГИС в клиентское приложение
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 21 окт 2012, 11:08
- Репутация: 0
Внедрение ГИС в клиентское приложение
Здравствуйте. Мы небольшая команда разработчиков, занимаемся созданием приложения, основной функцией которого не является собственно ГИС. Соответственно опыта работы с ГИС у нас очень мало, но такая пролема возникла и надо как-то ее изучать. Грубо говоря, в приложении нужно окошко, в котором будет отображаться местоположение объекта и траектория его движения. Данные о позиционировании объекта поступают с GPS-приемника. Установка самого ПО предполагается на ноутбук установленный в машину.
Возникла идея подгружать карты в программу автоматически из интернета. Как уже знаем, существуют пакеты .API и у гугла, и у Яндекса. Но функционал яндекса нам не подходит (ну, возможно мы еще недостаточно в нем разобрались), а Гугл как говорят не приветствует использование своих карт в клиентских приложениях и просто банит по IP. Если же пользоваться картами установленными на компьютер - тоже возникли вопросы. Да, среда разработки - Visual Studio 2010. Язык C#
В общем, вот ряд вопросов:
-Если пользоваться .API от яндекс или Гугл, то где про их использование можно подробно почитать? То есть интересуют примеры программ и собственно руководство к действию, что-то типа уроков )))
-Правда ли, что Гугл не приветствует использование своих карт в клиентских приложениях?
-Какую библиотеку лучше использовать для работы с картами? Набор функций стандартный: поддержка нескольких слоев, масштабирование и.т.д. Желательно, чтоб библиотека была свободная и кросс-платформерная (второе необязательно, но желательно). Если библиотека несвободная, то какова цена вопроса?
-где почитать про устройство векторных карт и как их читать? Потому как будут задачи типа нахождения расстояния между двумя точками по дороге.
ПС. Спасибо за внимание, и прошу вас не отправляйте меня за ответами в гугл. Не для того этот текст писал
Возникла идея подгружать карты в программу автоматически из интернета. Как уже знаем, существуют пакеты .API и у гугла, и у Яндекса. Но функционал яндекса нам не подходит (ну, возможно мы еще недостаточно в нем разобрались), а Гугл как говорят не приветствует использование своих карт в клиентских приложениях и просто банит по IP. Если же пользоваться картами установленными на компьютер - тоже возникли вопросы. Да, среда разработки - Visual Studio 2010. Язык C#
В общем, вот ряд вопросов:
-Если пользоваться .API от яндекс или Гугл, то где про их использование можно подробно почитать? То есть интересуют примеры программ и собственно руководство к действию, что-то типа уроков )))
-Правда ли, что Гугл не приветствует использование своих карт в клиентских приложениях?
-Какую библиотеку лучше использовать для работы с картами? Набор функций стандартный: поддержка нескольких слоев, масштабирование и.т.д. Желательно, чтоб библиотека была свободная и кросс-платформерная (второе необязательно, но желательно). Если библиотека несвободная, то какова цена вопроса?
-где почитать про устройство векторных карт и как их читать? Потому как будут задачи типа нахождения расстояния между двумя точками по дороге.
ПС. Спасибо за внимание, и прошу вас не отправляйте меня за ответами в гугл. Не для того этот текст писал
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Внедрение ГИС в клиентское приложение
Без этого увы никак.Guitar_Goo писал(а):ПС. Спасибо за внимание, и прошу вас не отправляйте меня за ответами в гугл. Не для того этот текст писал
Очевидно, на сайтах, соответствующих сервисов. Yandex, GoogleGuitar_Goo писал(а):Если пользоваться .API от яндекс или Гугл, то где про их использование можно подробно почитать? То есть интересуют примеры программ и собственно руководство к действию, что-то типа уроков )))
Выше дана ссылка, лицензия там тоже есть.Guitar_Goo писал(а):Правда ли, что Гугл не приветствует использование своих карт в клиентских приложениях?
Вы сами себя ограничили в выборе библотек. SharpMap. Кстати, как вот этоGuitar_Goo писал(а):Какую библиотеку лучше использовать для работы с картами?
согласуется сGuitar_Goo писал(а):Да, среда разработки - Visual Studio 2010. Язык C#
.NET и кроссплатформенность это взаимоисключающие понятия (про Mono знаю)Guitar_Goo писал(а):Желательно, чтоб библиотека была свободная и кросс-платформерная (второе необязательно, но желательно)
Смотря какая библиотека.Guitar_Goo писал(а):Если библиотека несвободная, то какова цена вопроса?
В описании используемого формата данных. Да, векторные данные могут храниться в разных форматах: shape-файлы, MapInfo MID/MIF, DXF, SXF, PostGIS....Guitar_Goo писал(а):где почитать про устройство векторных карт и как их читать?
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 21 окт 2012, 11:08
- Репутация: 0
Re: Внедрение ГИС в клиентское приложение
Пользоваться Гуглом я прекрасно умею. Дело в том, что ГИС систем очень много и какую из них выбрать неясно. Проще наверное спросить у тех, кто уже ими пользовался и имеет в этом опыт. Поисковик Гугл имеет опыт в проектировании карт? Я думаю вряд ли, соответственно поэтому я обращаюсь за помощью к людямБез этого увы никак
По поводу блокирования АйПи Гуглом - я так понимаю компания делает это неофициально. В лицензии ничего по этому поводу нет
Среда разработки на данный момент C#... Вы не так наверное поняли. В дальнейшем планируется писать еще на чем то, на чем пока не решили, но библиотеку хотелось бы сразу кросс-платформерную. На данный момент речь идет конечно же о работе под Windows.
Меня интересует какие вообще библиотеки для работы с картами существуют, не обязательно с картами из сети. И какие наиболее бы подошли для решения нашей задачи. Тут соответственно тоже необходима помощь человека, а не бездушной поисковой строчки
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Внедрение ГИС в клиентское приложение
Вы не поверите...Guitar_Goo писал(а):Поисковик Гугл имеет опыт в проектировании карт? Я думаю вряд ли
Блокируются нарушения Terms ofServiceGuitar_Goo писал(а):По поводу блокирования АйПи Гуглом - я так понимаю компания делает это неофициально.
Вы не так выразились. Нет среды разработки C#, есть язык C#. Среда разработки в вашем случае MS VisualStudio. Т.к. в первом сообщении речь шла о создании ПО на C#, вам была предложена открытая библиотека SharpMap, написанная на C#.Guitar_Goo писал(а):Среда разработки на данный момент C#... Вы не так наверное поняли.
Так может, сначала стоит определиться с используемыми средствами разработки, а потом уже искать библиотеку. А то я сейчас порекомендую фреймворк на Go, D или вообще на brainfuck.Guitar_Goo писал(а):В дальнейшем планируется писать еще на чем то, на чем пока не решили, но библиотеку хотелось бы сразу кросс-платформерную.
Библиотек для работы с геоданными тысячи, с разным функционалом, с разными требованиями, с разными лицензиями. Без четкого описания советовать что-либо слишком сложно. Какой язык программирования, какие требования к лицензии (открытая это очень широкое понятие), поддержка каких типов данных нужна?Guitar_Goo писал(а):Меня интересует какие вообще библиотеки для работы с картами существуют, не обязательно с картами из сети. И какие наиболее бы подошли для решения нашей задачи.
Кстати, SharpMap вполне покрывает запросы, приведеные в стартовом посте.
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 21 окт 2012, 11:08
- Репутация: 0
Re: Внедрение ГИС в клиентское приложение
SharpMap, как пишут люди на форумах, обладает не самой хорошей производительностью.
И... как бы, я зачем сюда обратился, что б слушать как к моим словам придираются?
Я прекрасно понимаю, что библиотек тысячи. Примерную задачу обрисовал. Среду разработки на данный момент тоже указал. Если не можете предложить ничего конкретного - может просто не стоит отвечать?
И... как бы, я зачем сюда обратился, что б слушать как к моим словам придираются?
Я прекрасно понимаю, что библиотек тысячи. Примерную задачу обрисовал. Среду разработки на данный момент тоже указал. Если не можете предложить ничего конкретного - может просто не стоит отвечать?
-
- Гуру
- Сообщения: 2627
- Зарегистрирован: 29 мар 2007, 14:12
- Репутация: 34
- Откуда: Ukraine
Re: Внедрение ГИС в клиентское приложение
Вас никто не заставляет писать на форум.Guitar_Goo писал(а):И... как бы, я зачем сюда обратился, что б слушать как к моим словам придираются?
Вам была предложена SharpMap, и вы до сих пор не удосужились четко ответить подходит она вам или нет.Guitar_Goo писал(а):Я прекрасно понимаю, что библиотек тысячи. Примерную задачу обрисовал. Среду разработки на данный момент тоже указал. Если не можете предложить ничего конкретного - может просто не стоит отвечать?
Пожалуйста вот вам далеко не полный список библиотек и фреймворков: MapX, MapWindow, TMap, CartoVCL, EasyMap, APMap, ECMap, EzGIS, GeoTools, Easy GIS, glob3, ArcObjects, My World GIS, GDAL, Geomajas, DSpatial, OpenMap...
Выбирайте, под ваше описание подходят все.
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9129
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 748
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Внедрение ГИС в клиентское приложение
Тут несколько раз поднимался вопрос что использовать с C# для картографии, но всегда, насколько я помню, все упиралось в sharpmap с последующим выяснением что он кривой и тормозной, а ничего другого нормального для c# нет.
Возможно ситуация изменилась, но я лично про это ничего не слышал.
Гляньте еще MapWindow и TatukGIS.
Возможно ситуация изменилась, но я лично про это ничего не слышал.
Гляньте еще MapWindow и TatukGIS.
пристегивайтесь, турбулентность прямо по курсу
-
- Гуру
- Сообщения: 977
- Зарегистрирован: 27 янв 2009, 22:57
- Репутация: 258
Re: Внедрение ГИС в клиентское приложение
Visual Studio 2010, Язык C# ,
MSSQL/PosgreSql,
Mapinfo/ГИС Карта/Nettopologysuite
Feature Data Objects
http://gis-lab.info/qa/fdo.html
MapGuide Open Source
Бенчмарк на открытие векторного слоя
viewtopic.php?f=2&t=11068
Что пробовал я лично:
1. Visual Studio
2. Visual Studio + Mapinfo
3. Visual Studio + Openlayers
Попробуйте угадать, что дало самую высокую производительность?
Не рекомендую ..., поэтому и не пишу однозначный вывод.
MSSQL/PosgreSql,
Mapinfo/ГИС Карта/Nettopologysuite
Feature Data Objects
http://gis-lab.info/qa/fdo.html
MapGuide Open Source
По этому поводу есть пост с неожиданными результатами:SharpMap, как пишут люди на форумах, обладает не самой хорошей производительностью.
Бенчмарк на открытие векторного слоя
viewtopic.php?f=2&t=11068
Что пробовал я лично:
1. Visual Studio
2. Visual Studio + Mapinfo
3. Visual Studio + Openlayers
Попробуйте угадать, что дало самую высокую производительность?
Не рекомендую ..., поэтому и не пишу однозначный вывод.
-
- Новоприбывший
- Сообщения: 4
- Зарегистрирован: 21 окт 2012, 11:08
- Репутация: 0
Re: Внедрение ГИС в клиентское приложение
А можно ссылочку на это обсуждение, если не трудно? ))) Просто интересно почитать в чем именно он кривой.Максим Дубинин писал(а):Тут несколько раз поднимался вопрос что использовать с C# для картографии, но всегда, насколько я помню, все упиралось в sharpmap с последующим выяснением что он кривой и тормозной, а ничего другого нормального для c# нет.
Про TatukGIS еще не слышал. Надо бы попробовать
С MAPWindow что-то не срастается пока, не могу нормально прикрутить ActiveX к Студии

Хм... Я думаю быстрее всего просто visual Studio. )))bim2010 писал(а):Что пробовал я лично:
1. Visual Studio
2. Visual Studio + Mapinfo
3. Visual Studio + Openlayers
Попробуйте угадать, что дало самую высокую производительность?
Не рекомендую ..., поэтому и не пишу однозначный вывод.
МапИнфо же вроде бы платный компонент
OpenLayers, на первый взгляд мне понравился, попробую что-нибудь с ним
- Максим Дубинин
- MindingMyOwnBusiness
- Сообщения: 9129
- Зарегистрирован: 06 окт 2003, 20:20
- Репутация: 748
- Ваше звание: NextGIS
- Откуда: Москва
- Контактная информация:
Re: Внедрение ГИС в клиентское приложение
пристегивайтесь, турбулентность прямо по курсу
-
- Гуру
- Сообщения: 977
- Зарегистрирован: 27 янв 2009, 22:57
- Репутация: 258
Re: Внедрение ГИС в клиентское приложение
)))
В Openlayers есть ограничение на объем отображаемого вектора.
viewtopic.php?t=5760
viewtopic.php?f=3&t=3235&p=12977&hilit=sharpmap#p12038
viewtopic.php?f=14&t=3441&hilit=sharpmap
viewtopic.php?f=2&t=3981&p=17106&hilit=sharpmap#p17106
viewtopic.php?f=14&t=3385&hilit=sharpmap
viewtopic.php?f=1&t=2759&hilit=sharpmap
В Openlayers есть ограничение на объем отображаемого вектора.
viewtopic.php?t=5760
viewtopic.php?f=3&t=3235&p=12977&hilit=sharpmap#p12038
viewtopic.php?f=14&t=3441&hilit=sharpmap
viewtopic.php?f=2&t=3981&p=17106&hilit=sharpmap#p17106
viewtopic.php?f=14&t=3385&hilit=sharpmap
viewtopic.php?f=1&t=2759&hilit=sharpmap
-
- Гуру
- Сообщения: 588
- Зарегистрирован: 30 мар 2009, 21:53
- Репутация: 55
- Откуда: Королев
Re: Внедрение ГИС в клиентское приложение
TatukGIS - насколько я помню лицензируется на каждого пользователя, а каких то киллер фич не несет.
Из открытых .NET библиотек:
* SharpMap - проверенная годами, вяло развивающаяся, но имеющая практически все что нужно библиотека. Документация - так себе, примеров тоже не ахти много. Написана на pure С#, но практически все растровые и векторные дата провайдеры реализованны на базе внешних библиотек (много c++ интеропа!)
* DotSpatial - более свежая библиотека. Документация есть не на все, но хоть что-то. С примерами намного лучше. Если что-то нет в примерах можно открыть код настольных ГИС, написанных на базе этой библиотеки, благо их достаточно.
По производительности, имхо, они примерно одинаковы. По потенциалу развития - DotSpatial развивается более динамично.
Из открытых .NET библиотек:
* SharpMap - проверенная годами, вяло развивающаяся, но имеющая практически все что нужно библиотека. Документация - так себе, примеров тоже не ахти много. Написана на pure С#, но практически все растровые и векторные дата провайдеры реализованны на базе внешних библиотек (много c++ интеропа!)
* DotSpatial - более свежая библиотека. Документация есть не на все, но хоть что-то. С примерами намного лучше. Если что-то нет в примерах можно открыть код настольных ГИС, написанных на базе этой библиотеки, благо их достаточно.
По производительности, имхо, они примерно одинаковы. По потенциалу развития - DotSpatial развивается более динамично.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя