powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / google maps и много маркеров
35 сообщений из 35, показаны все 2 страниц
google maps и много маркеров
    #38227735
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте! Подскажите, возможно ли создавать множество маркеров на карте, причем для создания маркеров, я использую геокодирование, т.е. пишу адрес. Знаю что можно также хранить координаты в базе, но как эти координаты сделать? Адресов у меня под тысячу.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38227782
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем столько маркеров? Тормозить же всё будет.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38227793
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя вроде нормально, накидал 1 тыс маркеров, вроде шевелится.

http://jsfiddle.net/Qs2G6/
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38227804
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobonickт.е. пишу адрес
Может, адреса загонять в попап диалог? Кликаешь на маркер и тебе показывается инфа.

Код: c#
1.
2.
3.
4.
$('#map_canvas').gmap('addMarker', { 'position': start + ', 37.500144' } )
    .click(function (e) {
         $('#map_canvas').gmap('openInfoWindow', { 'content': "Мой объект" }, this);
});
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38227806
Boneshock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
казалось бы, причем тут asp.net?
авторЗнаю что можно также хранить координаты в базе, но как эти координаты сделатьне уловил. При геокодировании ты получаешь в ответе найденные координаты(иначе как же ты строишь маркер?)
и вообще при большом количестве маркеров нужно использовать кластеризацию, возможно сейчас у гугла есть втроенный уже кластеризатор, если нет - пол года назад использовал опенсоурсный, поищи.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38227811
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobonickЗнаю что можно также хранить координаты в базе, но как эти координаты сделать? Адресов у меня под тысячу.

С помощью google maps можно вытащить координаты по конкретным адресам, количество не принципиально.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228072
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper, огромный респект тебе! Тормозить не будет, я просто исхожу из того, что на gmap у меня все норм работает. А за сайт - это ваще кладец для меня, спасибо!
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228075
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Boneshock, спасибо, я нарыл такую штуку как MarkerManager, осталось понять как работает
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228081
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StarlexboobonickЗнаю что можно также хранить координаты в базе, но как эти координаты сделать? Адресов у меня под тысячу.

С помощью google maps можно вытащить координаты по конкретным адресам, количество не принципиально.

Спасибо, но зачем тогда люди отдельные координаты заводят, из-за увеличения скорости отклика? У меня такие подозрения, что из-за количество запросов на геокодирования.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228111
Starlex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobonickСпасибо, но зачем тогда люди отдельные координаты заводят, из-за увеличения скорости отклика? У меня такие подозрения, что из-за количество запросов на геокодирования.

Иногда полезно иметь свою базу адресов с координатами, адрес при этом можно как угодно написать, не заботясь, поймет ли его гугл. Могут быть самые разные причины.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228184
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobonickcooldeveloper, огромный респект тебе! Тормозить не будет, я просто исхожу из того, что на gmap у меня все норм работает. А за сайт - это ваще кладец для меня, спасибо!
Спасибо, приятно слышать :) Можно и отписаться в гостевухе если че )
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228252
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper,

извини, мне даже стыдно, но я имел в виду сайт что ты указал. Твоя поварская книга, тоже интересна, наверняка сам шишки набивал и записывал решения и даже на многие вопросы я бы у тя нашел ответы, буду и на твой сайт заходить теперь. Благодарю.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228300
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
boobonickcooldeveloper, извини, мне даже стыдно, но я имел в виду сайт что ты указал.
Так я тоже имел ввиду его :) Это сайта моего знакомого МСУ, редкий гость на просторах .NET форумов. Чудесный замечательный человек с открытой душой и добрым сердцем.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228308
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloper,

Проблемы?
Меня ваша масква, куда ездил, ещё вчера достала.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228309
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не нашел гостевухи там просто)))
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228313
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSerge, чё?
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228314
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XD
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228319
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloperShSerge, чё?
Да ничего. Устал просто.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228322
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeДа ничего. Устал просто.
Ну так вискарьку и на боковую, я так и поступил.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228323
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пиво - наше все
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228325
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну с вяленой корюшкой или камбалой, раками или креветками - да, вещь правильная.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228329
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cooldeveloperНу с вяленой корюшкой или камбалой, раками или креветками - да, вещь правильная.
У меня фисташки рядом.

ПС. Завтра почищу топик.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228349
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Значит можно флууудить (только не ставьте бан XD)
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38228352
авторПодскажите, возможно ли создавать множество маркеров на карте, причем для создания маркеров, я использую геокодирование, т.е. пишу адрес. Знаю что можно также хранить координаты в базе, но как эти координаты сделать? Адресов у меня под тысячу.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
<!DOCTYPE html>
<html>
    <head>        
        <meta name="viewport" content="width=device-width,initial-scale=1.0"> 
		<meta charset="utf-8">		
        <title>Test Pages - Google maps</title> 
        <!--[if lt IE 9]>
            <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
        <![endif]-->       
        <script src="http://maps.googleapis.com/maps/api/js?sensor=false&language=en"></script>   
		<script type="text/javascript">
			window.onload = function() {      
				var map = new google.maps.Map(document.getElementById('map-canvas'), {
                    zoom: 10,
                    center: new google.maps.LatLng(-33.9, 151.2),
                    mapTypeId: google.maps.MapTypeId.SATELLITE
                }),
                beaches = [
                    ['Bondi Beach',     -33.890542, 151.274856],
                    ['Coogee Beach',    -33.923036, 151.259052],
                    ['Cronulla Beach',  -34.028249, 151.157507],
                    ['Manly Beach',     -33.800101, 151.287478],
                    ['Maroubra Beach',  -33.950198, 151.259302]
                ],
                geocoder = new google.maps.Geocoder(),
                encoder = document.getElementById('encoder'),
                address = document.getElementById('address'),
				output = document.getElementById('output'),
                beach, i;

				for (var i = 0; i < beaches.length; i++) {
					beach = beaches[i];
					new google.maps.Marker({
						position: new google.maps.LatLng(beach[1], beach[2]),
						map: map,       
						title: beach[0]
					});
				}
            
				encoder.onclick = function() {
					geocoder.geocode({'address': address.value}, function(results, status) {
						if (status === google.maps.GeocoderStatus.OK) {
							map.setCenter(results[0].geometry.location);                           
							new google.maps.Marker({
								position: results[0].geometry.location,
								map: map,       
								title: address.value
							});
							output.innerHTML = JSON.stringify(results[0].geometry.location);
						} else {
							output.innerHTML = 'Geocode was not successful for the following reason: ' + status;
						}
					});
				};
			};
		</script> 
    </head>
    <body>
        <header>
            <h1>Пример работы с Google maps API v.3.xx</h1>               
        </header>
        <section class="content">                
			<div>
				<input style="width: 500px;" id="address" type="textbox" value="Москва, Большой каретный 15" />
				<input id="encoder" type="button" value="Encode" />
				<p id="output"> </p>
			</div>
			<div style="height: 600px; width: 600px;" id="map-canvas"> </div>
        </section>            
    </body>
</html>


почитать https://developers.google.com/maps/documentation/javascript/geocoding#ReverseGeocoding

поржал
14189627 у него ещё и друг появился МСУ+МСУ
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38230069
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Благодарю, бяда у меня была в том что надо было setTimeout() использовать при добавлении маркера
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38230121
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А не подскажите есть ли решения когда несколько маркеров попадают в одну точку, но мне необходимо просмотреть всех их.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38230132
cooldeveloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ставить один маркер, но инфа о нем может быть агрегирована.
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38230144
авторБлагодарю, бяда у меня была в том что надо было setTimeout() использовать при добавлении маркера
стесняюсь спросить - зачем?
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
<script type="text/javascript">
    window.onload = function() {      
            var map = new google.maps.Map(document.getElementById('map-canvas'), {
                    zoom: 16,                    
                    mapTypeId: google.maps.MapTypeId.SATELLITE
                }),        
                geocoder = new google.maps.Geocoder(),
                geocode = function(address, callback) {                   
                    geocoder.geocode({'address': address}, function(results, status) {
                        if (status === google.maps.GeocoderStatus.OK) {                            
                            callback({'location' : results[0].geometry.location});
                        } else {
                            callback({'error' : status});                            
                        }                        
                    });
                },
                markAdresses = function (addresses, i) {              
                    geocode(addresses[i], function(response){                   
                        if(response['location']) {                           
                            map.setCenter(response['location']);                         
                            new google.maps.Marker({
                                position: response['location'],
                                map: map,       
                                title: addresses[i]
                            }); 
                            if(addresses[++i]) {
                                return markAdresses(addresses, i);
                            }
                        } else {
                            console.log('Geocode was not successful - reason: ' + response['error']);
                        }                     
                    });
                };
            
            markAdresses([
                    'Москва, Большой каретный 1',
                    'Москва, Большой каретный 10',
                    'Москва, Большой каретный 12',
                    'Москва, Большой каретный 15',
                    'Москва, Большой каретный 6'
                ], 0);
    };
</script>


угадал? ;)
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38238662
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так...,спасибо! У меня ошибки вываливались с OVER_QUERY_LIMIT . А как сделать, чтобы
сначала обработалось:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
       var markers = [];

    $.ajax({
        url: '/Employee/MapsJson',
        type: 'GET',
        data: JSON.stringify(contact),
        success: function (result) {

            for (var i = 0; i < result.rows.length; i++) {

                markers.push(result.rows[i].Адрес);
            }
            alert(markers);
        },
        dataType: "json",
        contentType: "application/json; charset=utf-8"
    });
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38239611
авторУ меня ошибки вываливались с OVER_QUERY_LIMIT
не удивлён!
Заплати им копейки - или закачай все координаты в свою!! БД один раз - и тяни уже оттуда!!!
авторА как сделать, чтобы сначала обработалось:
не очень понял, где проблема... как-то так, наверное
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
$.ajax({
        url: '/Employee/MapsJson',
        type: 'GET',
        data: JSON.stringify(contact),
        success: function (result) {

            for (var i = 0; i < result.rows.length; i++) {

                markers.push(result.rows[i].Адрес);
            }

            markAdresses(markers, 0);
            
            //alert(markers);
        },
        dataType: "json",
        contentType: "application/json; charset=utf-8"
    });


кстати, называть поля в бд (как и свойства у объектов) на русском - моветон! ;)
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38241837
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так..., благодарю. Как я понял надо учитывать количество запросов в единицу времени и для этого надо использовать setTimeout.


Реализовал такое:

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
geocoder = new google.maps.Geocoder();

 function showAddress(name, address, link) {

        geocoder.geocode({ 'address': "Москва " + address }, function (results, status) {

            if (status == google.maps.GeocoderStatus.OK) {


                marker = new google.maps.Marker({
                    position: results[0].geometry.location,
                    map: map,
                    title: address
                }); //добавление маркера

                markers.push(marker);


                var contentString = '<div id="infoWindow">' +
                    '<a href="' + link + '" target="_blank">'
                    + name + '</a>' + '<p>' + address + '</p>';


                var infowindow = new google.maps.InfoWindow();

                bindInfoWindow(marker, contentString, infowindow);

            }
            else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) {
                //   alert("OVER_QUERY_LIMIT: " + status + " Адрес: " + address);
                setTimeout(function () { showAddress(name, address, link); }, 100);

            } else {

                //   alert("Geocode was not successful for the following reason: " + status + " Адрес: " + address);
            }

        });
       
    }



  function createCluster() {
        var markerCluster = new MarkerClusterer(map, markers);
      //  alert('TEST');
    };

    $(document).ready(function () {
        $.ajax({
            url: '/Employee/MapsJson',
            type: 'GET',
            data: JSON.stringify(contact),
            success: function (result) {

                for (var i = 0; i < result.rows.length; i++) {

                    showAddress(result.rows[i].Адрес, result.rows[i].Адрес, result.rows[i].Адрес);
                }
                
                createCluster();
                //setTimeout(createCluster, 100000);


            },
            dataType: "json",
            contentType: "application/json; charset=utf-8"
        });
    });



Теперь думаю, как сделать кластеризацию после того как загрузятся все маркеры. Сейчас срабатывает как-то рандомно все. Правильно ли я понимаю что чтобы вызвать createCluster(); после выполнения всех setTimeout в функции showAddress, то мне необходимо кластер реализовать через setTimeout(createCluster, 0); ? Но почему не срабатывает?
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38242246
как-так...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
почему ты упорно не хочешь взять один раз геокоординаты всех адресов и сложить их в БД?
в чем профит всех этих таймаутов?
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38242262
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все равно конечно положу координаты в базу, но если неизвестны места заранее?
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38242270
boobonick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я же не могу найти данные с координатами абсолютно всех адресов Москвы?
...
Рейтинг: 0 / 0
google maps и много маркеров
    #38242426
если ты делаешь свой! GM по Москве и её окрестностям - это одно...
если у тебя автозаправочные станции, которые априори редко перезжают с места на место - это другое!

но! и в том и в том случае можно связаться с GM разработчиками и объяснить ситуацию

https://developers.google.com/maps/documentation/business/?hl=ru
https://developers.google.com/places/documentation/?hl=ru#Requirements

автор...но если неизвестны места заранее?
мне осюда невидно твоей задачи, поэтому оптимальные решения я тебе предложить несмогу!
как вариант - https://developers.google.com/maps/documentation/javascript/places?hl=ru

ИМХО постоянная выборка по тайм-ауту - ЖЕСТЬ - и разрабы GM API это прекрасно понимают - поэтому и впендюрили!!! ;)))
...
Рейтинг: 0 / 0
35 сообщений из 35, показаны все 2 страниц
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / google maps и много маркеров
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]