Google Maps API - получите n ближайших маркеров от местоположения [дубликата]

Для высокопроизводительного кода на разных архитектурах вам может понадобиться выделение malloc-y, а не родовое новое. Это связано с тем, что вы могли бы обернуть его чем-то вроде mymalloc (), а затем использовать функции, зависящие от архитектуры, такие как те, которые реализуют правильное выравнивание, чтобы избежать промахов в кеше и выполнять другие отличные вещи, предоставленные производителем оборудования, например IBM (Bluegene) или Intel (MIC). Все эти оптимизированные процедуры распределения имеют структуру типа malloc.

-1
задан user13286 25 February 2019 в 15:26
поделиться

1 ответ

Не самое элегантное решение из всех, но с учетом исходного исходного кода, должно быть в состоянии выполнить эту работу.

function find_closest_markers(event, n) {
    var markers_distances = [];
    for (i = 0; i < markers.length; i++) {
        var d = google.maps.geometry.spherical.computeDistanceBetween(markers[i].position, event.latLng);
        markers_distances[i] = {
            distance: d, 
            marker: markers[i]
        }
    }
    var closest_markers = markers_distances.sort((a, b) => {return a.distance-b.distance}).slice(0,n)
    return closest_markers.map((item) => {return item.marker})
}
0
ответ дан Joao Pereira 25 February 2019 в 15:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: