Код документа: RU2636906C2
ОБЛАСТЬ ТЕХНИКИ
[1] Настоящая технология относится к системе и способу организации в кластеры точек интереса с использованием сетки.
УРОВЕНЬ ТЕХНИКИ
[2] В современных условиях пользователи электронных устройств сталкиваются с обилием информации, которую они получают из сети Интернет либо из иных источников. К информации, получаемой пользователями, могут быть отнесены обозначения точек интереса на географических картах, которые могут быть изображены на дисплеях электронных устройств.
[3] Представление всей доступной информации на дисплеях клиентских устройств может оказаться не лучшим решением в связи с трудностью восприятия. Во многих случаях, при изображении графических символов точек интереса на карте, возможны полные или частичные наложения. Это может происходить в связи с различными факторами. Одним из таких факторов является количество имеющихся в наличии точек интереса. Другим фактором может являться масштаб, в котором представлена карта. Чем меньше масштаб изображения и чем более точке интереса имеется в пределах определенной территории, тем больше может быть наложений графических символов точек интереса. В таких ситуациях может оказаться целесообразным отказ от представления на дисплее электронного устройства всех графических символов, представляющих все точки интереса. Вместо этого возможно объединение всех или некоторых графических символов, представляющих точки интереса, в кластеры. Таким образом, на карте, изображаемой на дисплее электронного устройства, могут быть показаны либо только графические символы точек интереса, либо только графические символы кластеров, то есть объединенные в группы точки интереса, либо одновременно могут быть показаны графические символы кластеров и графические символы необъединенных в кластеры точек интереса.
[4] В настоящее время существует несколько методов объединения графических символов в кластеры.
[5] Один из методов представляет собой нанесение на карту сетки, содержащей ячейки, и объединение в один кластер всех точек интереса, содержащихся в данной ячейке, и помещение такого кластера в центр ячейки. Сформированные таким образом кластеры могут не вполне точно отображать на карте места действительного сосредоточения основной массы объектов, объединенных в кластер.
[6] Другой метод объединения графических символов в кластеры заключается в использовании плотностного алгоритма кластеризации пространственных данных с присутствием шума, известного также как DBSCAN (от англ.: Density Based Spatial Clustering of Applications with Noise). Данный метод позволяет объединять графические символы в кластеры вне зависимости от наличия или отсутствия сетки. Объединение происходит в данном случае с учетом удаленности объектов между собой. Объединяться могут, например, графические символы, расстояние между которыми не превышает определенное значение (например, 10 пикселей, или 30 пикселей, и т.п.). Данный метод требует относительно высоких затрат ресурсов сервера.
[7] Таким образом, в то время как существующие обычные компьютерные системы являются приемлемыми, улучшение таких систем, тем не менее, возможно.
СУЩНОСТЬ ТЕХНОЛОГИИ
[8] Целью настоящей технологии является устранение или смягчение по меньшей мере некоторых из неудобств, присутствующих на существующем уровне техники.
[9] В соответствии с вариантами осуществления настоящей технологии, предусматривается способ организации в кластеры точек интереса, показываемых пользователю на карте на электронном устройстве в виде графических символов. Способ организации в кластеры точек интереса исполняется на сервере. Способ включает: получение запроса пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте; получение метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса, причем каждая из меток имеет позицию на карте и графический символ, обозначающий соответствующую метку; определение на карте местоположения графических символов соответственно метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса; размещение на карте слоя сетки, причем слой сетки включает в себя множество ячеек сетки, причем размер ячейки сетки превышает размер самого крупного графического символа, обозначающего одно из: (а) метку точки интереса и (б) кластер; если графический символ, обозначающий метку первой точки интереса и графический символ, обозначающий метку второй точки интереса, расположены в первой ячейке сетки, и если графический символ, обозначающий метку третьей точки интереса и графический символ, обозначающий метку четвертой точки интереса, расположены во второй ячейке сетки: определение, имеется ли перекрытие между графическим символом, обозначающим метку первой точки интереса и графическим символом, обозначающим метку второй точки интереса и, в случае определения перекрытия, объединение графического символа, обозначающего метку первой точки интереса и графического символа, обозначающего метку второй точки интереса, в первый кластер, и размещение графического символа, обозначающего первый кластер, в центре масс точек, объединенных в первый кластер; определение, имеется ли перекрытие между графическим символом, обозначающим метку третьей точки интереса и графическим символом, обозначающим метку четвертой точки интереса, и, в случае определения перекрытия, объединение графического символа, обозначающего метку третьей точки интереса и графического символа, обозначающего метку четвертой точки интереса, во второй кластер, и размещение графического символа, обозначающего второй кластер, в центре масс точек, объединенных во второй кластер.
[10] В некоторых вариантах осуществления технологии, запрос пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте дополнительно включает в себя получение запроса пользователя на предоставление пятой точки интереса для показа на карте, способ дополнительно включает: получение метки пятой точки интереса, причем пятая точка интереса имеет позицию на карте и графический символ, обозначающий соответствующую метку; определение на карте местоположения графического символа метки пятой точки интереса; если графический символ, обозначающий метку пятой точки интереса, расположен на границе по меньшей мере двух смежных ячеек сетки: определение, имеется ли перекрытие между: графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере одним из графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой кластер, и в случае определения такого перекрытия, объединение графического символа, обозначающего метку пятой точки интереса, с одним из следующих графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой из: первый кластер и второй кластер, объединение в один из: первый кластер, второй кластер, третий кластер, и размещение графического символа, обозначающего соответствующий кластер, в центре масс точек, объединенных в данный кластер.
[11] В некоторых вариантах осуществления технологии, когда в результате указанного определения, имеется ли перекрытие между графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере одним из графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой из: первый кластер и второй кластер, сервер определил перекрытие между графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере двумя графическими символами, способ дополнительно включает выбор из по меньшей мере двух указанных графических символов, перекрывающихся с графическим символом пятой точки интереса, одного наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса.
[12] В некоторых вариантах осуществления технологии, для осуществления выбора из по меньшей мере двух указанных графических символов, перекрывающихся с графическим символом пятой точки интереса, одного наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, сервер определяет центр массы метки пятой точки интереса, определяет по меньшей мере два других центра масс, каждый из указанных по меньшей мере двух центров масс являющийся центром масс одного из: (а) центра массы метки точки интереса, и (б) центра массы множества меток точек интереса, объединенных в один кластер, и из указанных определенных по меньшей мере двух центров масс, определяет такой центр масс, который находится на наиболее близком расстоянии от центра массы метки пятой точки интереса, и выбирает в качестве наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, такой графический символ, который связан с соответствующим выбранным центром масс, расположенном на наиболее близком расстоянии от центра массы метки пятой точки интереса.
[13] В некоторых вариантах осуществления технологии, для осуществления выбора одного наиболее подходящего графического символа из по меньшей мере двух указанных графических символов, для объединения с графическим символом, обозначающим метку пятой точки интереса, сервер: определяет центр масс графического символа, обозначающего метку пятой точки интереса, определяет центры масс каждого из по меньшей мере двух указанных графических символов, и выбирает в качестве наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, такой графический символ, центр массы которого находится на наиболее близком расстоянии от центра массы графического символа, обозначающего метку пятой точки интереса
[14] В некоторых вариантах осуществления технологии, когда запрос пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса, четвертой точки интереса для показа на карте дополнительно включает в себя получение запроса пользователя на предоставление шестой точки интереса для показа на карте, способ дополнительно включает: определение, имеется ли перекрытие между графическим символом, обозначающим первый кластер и графическим символом, обозначающим метку шестой точки интереса, и, в случае определения перекрытия, включение графического символа, обозначающего метку шестой точки интереса в графический символ, обозначающий первый кластер, и размещение графического символа, обозначающего первый кластер, в новый центр масс точек, объединенных в первый кластер.
[15] В некоторых вариантах осуществления технологии, графический символ, обозначающий любой кластер из множества кластеров, и графический символ, обозначающий метку любой точки интереса из множества точек интереса, различаются по меньшей мере по одному из критериев, выбранных из: (i) формы графического символа, (ii) размера графического символа, (iii) цвета графического символа.
[16] В некоторых вариантах осуществления технологии, графический символ, обозначающий соответствующий кластер, содержит в себе указание на количество точек интереса, образовавших соответствующий кластер.
[17] В некоторых вариантах осуществления технологии, центр масс определяется математически.
[18] В некоторых вариантах осуществления технологии, центр масс определяется с использованием плотностного алгоритма кластеризации пространственных данных с присутствием шума.
[19] В некоторых вариантах осуществления технологии, для определения, имеется ли перекрытие между по меньшей мере двумя графическим символом, сервер осуществляет попиксельное сравнение изображений соответствующих по меньшей мере двух графических символов.
[20] В некоторых вариантах осуществления технологии, для определения, имеется ли перекрытие между по меньшей мере двумя графическим символом, сервер осуществляет сравнение геометрических координат соответствующих по меньшей мере двух графических символов.
[21] В некоторых вариантах осуществления технологии, по меньшей мере одна из: первой точки интереса, второй точки интереса, третьей точки интереса, четвертой точки интереса, пятой точки интереса, является кластером.
[22] Другим объектом настоящей технологии является сервер. Сервер включает в себя интерфейс сетевой связи. Сервер включает в себя процессор. Процессор операционно связан с интерфейсом связи. Конфигурация процессора настроена таким образом, чтобы сервер мог осуществлять: получение запроса пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте; получение метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса, причем каждая из меток имеет позицию на карте и графический символ, обозначающий соответствующую метку; определение на карте местоположения графических символов соответственно метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса; размещение на карте слоя сетки, причем слой сетки включает в себя множество ячеек сетки, причем размер ячейки сетки превышает размер самого крупного графического символа, обозначающего одно из: (а) метку точки интереса и (б) кластер; если графический символ, обозначающий метку первой точки интереса и графический символ, обозначающий метку второй точки интереса, расположены в первой ячейке сетки, и если графический символ, обозначающий метку третьей точки интереса и графический символ, обозначающий метку четвертой точки, интереса расположены во второй ячейке сетки: определение, имеется ли перекрытие между графическим символом, обозначающим метку первой точки интереса и графическим символом, обозначающим метку второй точки интереса и, в случае определения перекрытия, объединение графического символа, обозначающего метку первой точки интереса и графического символа, обозначающего метку второй точки интереса, в первый кластер, и размещение графического символа, обозначающего первый кластер, в центр масс точек, объединенных в первый кластер; определение, имеется ли перекрытие между графическим символом, обозначающим метку третьей точки интереса и графическим символом, обозначающим метку четвертой точки интереса, и в случае определения перекрытия, объединение графического символа, обозначающего метку третьей точки интереса и графического символа, обозначающего метку четвертой точки интереса, во второй кластер, и размещение графического символа, обозначающего второй кластер, в центр масс точек, объединенных во второй кластер.
[23] В некоторых воплощениях сервера, когда запрос пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте дополнительно включает в себя получение запроса пользователя на предоставление пятой точки интереса для показа на карте, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять: получение метки пятой точки интереса, причем пятая точка интереса имеет позицию на карте и графический символ, обозначающий соответствующую метку; определение на карте местоположения графического символа метки пятой точки интереса; если графический символ, обозначающий метку пятой точки интереса, расположен на границе по меньшей мере двух смежных ячеек сетки: определение, имеется ли перекрытие между: графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере одним из графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой кластер и, в случае определения такого перекрытия, объединение графического символа, обозначающего метку пятой точки интереса, с одним из следующих графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой из: первый кластер и второй кластер, объединение в один из: первый кластер, второй кластер, третий кластер, и размещение графического символа, обозначающего соответствующий кластер, в центр масс точек, объединенных в данный кластер.
[24] В некоторых воплощениях сервера, когда в результате указанного определения, имеется ли перекрытие между графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере одним из графических символов: (а) графическим символом, обозначающим метку любой другой точки интереса и (б) графическим символом, обозначающим любой из: первый кластер и второй кластер, сервер определил перекрытие между графическим символом, обозначающим метку пятой точки интереса, и по меньшей мере двумя графическими символами, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять: выбор из по меньшей мере двух указанных графических символов, перекрывающихся с графическим символом пятой точки интереса, одного наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса.
[25] В некоторых воплощениях сервера, для осуществления выбора из по меньшей мере двух указанных графических символов, перекрывающихся с графическим символом пятой точки интереса, одного наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно: определять центр массы метки пятой точки интереса, определять по меньшей мере два других центра масс, каждый из указанных по меньшей мере двух центров масс являющийся одним из: (а) центром массы метки точки интереса, и (б) центром массы множества меток точек интереса, объединенных в один кластер, и из указанных определенных по меньшей мере двух центров масс, определять такой центр масс, который находится на наиболее близком расстоянии от центра массы метки пятой точки интереса, и выбирать в качестве наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, такой графический символ, который связан с соответствующим выбранным центром масс, расположенном на наиболее близком расстоянии от центра массы метки пятой точки интереса.
[26] В некоторых воплощениях сервера, для осуществления выбора одного наиболее подходящего графического символа из по меньшей мере двух указанных графических символов, для объединения с графическим символом, обозначающим метку пятой точки интереса, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно: определять центр масс графического символа, обозначающего метку пятой точки интереса, определять центры масс каждого из по меньшей мере двух указанных графических символов, и выбирать в качестве наиболее подходящего графического символа для объединения с графическим символом, обозначающим метку пятой точки интереса, такой графический символ, центр массы которого находится на наиболее близком расстоянии от центра массы графического символа, обозначающего метку пятой точки интереса.
[27] В некоторых воплощениях сервера, когда запрос пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса, четвертой точки интереса для показа на карте дополнительно включает в себя получение запроса пользователя на предоставление шестой точки интереса для показа на карте, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно: определять, имеется ли перекрытие между графическим символом, обозначающим первый кластер и графическим символом, обозначающим метку шестой точки интереса, и в случае определения перекрытия, включать графический символ, обозначающий метку шестой точки интереса в графический символ, обозначающий первый кластер, и размещать графический символ, обозначающий первый кластер, в новый центр масс точек, объединенных в первый кластер.
[28] В некоторых воплощениях сервера, графический символ, обозначающий любой кластер из множества кластеров, и графический символ, обозначающий метку любой точки интереса из множества точек интереса, различаются по меньшей мере по одному из критериев, выбранных из: (i) формы графического символа, (ii) размера графического символа, (iii) цвета графического символа.
[29] В некоторых воплощениях сервера, графический символ, обозначающий соответствующий кластер, содержит в себе указание на количество точек интереса, образовавших соответствующий кластер.
[30] В некоторых воплощениях сервера, центр масс определяется математически.
[31] В некоторых воплощениях сервера, центр масс определяется с использованием плотностного алгоритма кластеризации пространственных данных с присутствием шума.
[32] В некоторых воплощениях сервера, для определения, имеется ли перекрытие между по меньшей мере двумя графическим символом, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять попиксельное сравнение изображений соответствующих по меньшей мере двух графических символов.
[33] В некоторых воплощениях сервера, для определения, имеется ли перекрытие между по меньшей мере двумя графическим символом, конфигурация процессора настроена таким образом, чтобы сервер мог дополнительно осуществлять сравнение геометрических координат соответствующих по меньшей мере двух графических символов.
[34] В некоторых воплощениях сервера, по меньшей мере одна из: первая точка интереса, вторая точка интереса, третья точка интереса, четвертая точка интереса, пятая точка интереса, является кластером.
[35] В контексте описания настоящей технологии, «сервер» представляет собой программу, выполняемую на соответствующем оборудовании и способную осуществлять прием запросов (например, подаваемых электронными устройствами), передаваемых по сети, и выполнять эти запросы или обеспечивать их выполнение. Оборудование может представлять собой один компьютер или одну компьютерную систему, однако ни одно, ни другое не является обязательным в отношении предлагаемой технологии. В данном контексте термин «сервер» не означает, что каждая задача (например, предусмотренная принятыми инструкциями или запросами) или какая-либо конкретная задача будет принята, выполнена или ее выполнение будет обеспечено тем же самым сервером (то есть тем же самым программным обеспечением и/или оборудованием); предполагается, что прием и передача, выполнение или обеспечение выполнения любой задачи или запроса либо обработка результатов задачи или запроса может осуществлять любое число компонентов программного обеспечения или устройств и все эти компоненты программного обеспечения или оборудования могут быть представлены одним сервером или несколькими серверами, причем термин «сервер» охватывает оба указанных варианта.
[36] В контексте описания настоящей технологии, термин «информация» включает в себя информацию любого характера или типа, которая может быть записана в базе данных. Таким образом, информация охватывает, среди прочего, аудиовизуальную информацию (изображения, видео, аудио, и т.д.), данные (картографические данные, данные местоположения, числовые данные и т.д.), текстовую информацию (указатели, наименования, описания, предупреждения, текстовые сообщения и т.д.), документы, электронные таблицы и т.д.
[37] В контексте описания настоящей технологии, термин «компонент программного обеспечения» охватывает программное обеспечение (соответствующее конкретному оборудованию), которое является одновременно необходимым и достаточным для выполнения конкретной указанной функции (функций).
[38] В контексте описания настоящей технологии, термин «точка интереса» (POI, point of interest) обозначает объект или группу объектов, которые могут представлять интерес для пользователя. Например, точками интереса могут являться учреждения здравоохранения, учреждения культуры и досуга, достопримечательности, заведения общественного питания, объекты транспортной инфраструктуры (например, автозаправочные станции), и т.д..
[39] В контексте описания настоящей технологии, термин «метка» обозначает точку на карте, которой обозначен объект или группа объектов (метка точки интереса), либо которой отмечен центр масс точек интереса, объединенных в один кластер.
[40] В контексте описания настоящей технологии, термин «метка точки интереса» обозначает точку на карте, которой обозначен объект или группа объектов. Метка точки интереса может содержать информацию об объекте (объектах), например, наименование, тип, адрес, контактную информацию. Метка точки интереса может являться точечным объектом, иметь позицию на карте, и сама по себе быть невидимой для пользователя. Метка точки интереса может иметь графический символ, обозначающий данную точку интереса и видимый пользователю.
[41] В контексте описания настоящей технологии, термин «графический символ» обозначает графическое изображение, представляющее на карте точку интереса (метку точки интереса), либо представляющее на карте кластер, включающий в себя несколько точек интереса. Графический символ может являться площадным объектом, отображаемым на карте и видимым пользователю. Графические символы могут иметь различную геометрическую форму, различный размер. Графический символ может включать в себя также буквенную, цифровую или буквенно-цифровую информацию. Графические символы могут быть выполнены в различных цветах.
[42] В контексте описания настоящей технологии, термин «сетка» («grid») обозначает сетку, включающую в себя множество ячеек, которая используется для условного разбиения карты на секторы и для анализа пространственных данных, в том числе данных о точках интереса (метках точек интереса), данных о кластерах, как находящихся внутри ячеек, так и на границах смежных ячеек сетки.
[43] В настоящем описании выражение «носитель информации, предназначенный для использования компьютером» (также кратко именуемый «носитель информации») охватывает носители любого характера и типа, в том числе оперативные запоминающие устройства, постоянные запоминающие устройства, диски (компакт-диски, DVD-диски, гибкие диски, жесткие диски и т.д.), USB-ключи, твердотельные накопители, ленточные накопители и т.д.
[44] В контексте описания настоящей технологии, «база данных» представляет собой любой структурированный набор данных, независимо от конкретной структуры, программы управления базой данных или оборудования, на котором осуществляется хранение данных, реализована память или иным способом обеспечивается возможность использования данных. База данных может быть реализована на том же оборудовании, что и процесс, осуществляющий хранение или использование информации, записанной в базе данных, или на отдельном оборудовании, таком как выделенный сервер или множество серверов.
[45] В настоящем описании слова «первый», «второй», «третий» и т.д. используются только в качестве описательных элементов для целей разделения существительных, отличающихся друг от друга, а не с целью определения какого-либо конкретного соотношения между указанными существительными. Таким образом, например, следует понимать, что термины «первая точка интереса» и «третья точка интереса» не означают введения конкретной последовательности, типа, хронологии, иерархии или ранжирования (например) конкретной точки интереса или нескольких точек интереса, а их использование (само по себе) не означает, что в какой-либо конкретной ситуации должна обязательно существовать какая-либо «вторая точка интереса». Кроме того, как указано в данном описании относительно других примеров осуществления технологии, ссылка на «первый» элемент и «второй» элемент не означает, что два элемента не могут представлять собой в реальном мире фактически один и тот же элемент. Таким образом, например, в некоторых случаях «первый» сервер и «второй» сервер могут представлять собой один компонент программного обеспечения и (или) оборудования, а в других ситуациях могут быть реализованы на различном программном обеспечении и (или) оборудовании.
[46] Каждый из вариантов реализации технологии имеет по меньшей мере одну из вышеупомянутых целей и/или один из вышеупомянутых аспектов, но не обязательно все их. Следует иметь в виду, что некоторые аспекты настоящей технологии, которые стали результатом попытки достичь вышеупомянутой цели, могут не достигать этой цели и/или могут достигать другие цели, специально не упомянутые здесь.
[47] Дополнительные и/или альтернативные особенности, цели, аспекты и преимущества данной технологии станут очевидны из нижеследующего описания, сопровождающих чертежей и прилагаемой формулы изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[48] Для лучшего понимания настоящей технологии, а также других ее аспектов и особенностей, предлагается обратиться к нижеследующему описанию, которым следует пользоваться совместно с прилагаемыми чертежами, на которых:
[49] Фиг. 1 является схематическим изображением варианта воплощения сетевой компьютерной системы, реализованной в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем.
[50] Фиг. 2 является схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, представляющими точки интереса.
[51] Фиг. 3 является схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, представляющими точки интереса, и с сеткой, нанесенной на данный фрагмент карты.
[52] Фиг. 4 является схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, представляющими точки интереса и кластеры, и с сеткой, нанесенной на данный фрагмент карты.
[53] Фиг. 5 является схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, имеющими неодинаковый размер, представляющими точки интереса и кластеры, и с сеткой, нанесенной на данный фрагмент карты.
[54] Фиг. 6 является еще одним схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, имеющими неодинаковый размер, представляющими точки интереса и кластеры, и с сеткой, нанесенной на данный фрагмент карты.
[55] Фиг. 7 является блок-диаграммой способа 700, выполняемого на сервере, схематически изображенном на Фиг. 1, выполняемого в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем.
ПОДРОБНОЕ ОПИСАНИЕ
[56] На Фиг. 1 изображена принципиальная схема различных компьютерных систем 100, находящихся в связи друг с другом с помощью сети 110 передачи данных. Важно иметь в виду, что различные компьютерные системы 100 представлены как наглядный вариант осуществления настоящей технологии. Таким образом, нижеследующее их описание должно рассматриваться исключительно как описание наглядных примеров настоящей технологии. Это описание не предназначено для определения объема или установления границ настоящей технологии. Некоторые полезные примеры модификаций компьютерных систем 100 также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ настоящей технологии. Эти модификации не представляют собой исчерпывающий список, и специалистам в данной области техники будет понятно, что возможны и другие модификации. Кроме того, это не должно интерпретироваться так, что там, где это еще не было сделано, т.е. там, где не были изложены примеры модификаций, никакие модификации невозможны, и/или что то, что описано, является единственным способом осуществления этого элемента данной технологии. Как будет понятно специалисту в данной области техники, это, скорее всего, не так. Кроме того, следует иметь в виду, что компьютерные системы 100 представляют собой в некоторых конкретных проявлениях достаточно простой вариант осуществления настоящей технологии, и в подобных случаях представлен здесь с целью облегчения понимания. Как будет понятно специалисту в данной области техники, многие варианты осуществления настоящей технологии будут обладать гораздо большей сложностью.
[57] Система 100 включает в себя сервер 102.
[58] Сервер 102 может представлять собой обычный компьютерный сервер. В примере варианта осуществления настоящей технологии, сервер 102 может представлять собой сервер Dell™ PowerEdge™, на котором используется операционная система Microsoft™ Windows Server™.
[59] Излишне говорить, что сервер 102 может представлять собой любое другое подходящее аппаратное и/или прикладное программное, и/или системное программное обеспечение или их комбинацию. В представленном варианте осуществления настоящей технологии, не ограничивающем ее объем, сервер 102 является одиночным сервером. В других вариантах осуществления настоящей технологии, не ограничивающих ее объем, функциональность сервера 102 может быть разделена, и может выполняться с помощью нескольких серверов.
[60] В целом, варианты осуществления сервера 102 хорошо известны в данной области техники. Таким образом, достаточно отметить, что сервер 102 содержит, среди прочего, интерфейс сетевой связи (не изображен) для двусторонней связи по сети 110 передачи данных; и процессор (не изображен), соединенный с интерфейсом сетевой связи, который выполнен с возможностью выполнять различные процедуры, включая те, что описаны ниже. С этой целью процессор может сохранять или иметь доступ к машиночитаемым инструкциям, выполнение которых инициирует процессор, и выполнять различные описанные здесь процедуры.
[61] Сервер 102 включает в себя носитель информации 104, который может использоваться сервером 102. В принципе, данный носитель информации 104 может быть носителем абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д, а также их комбинации.
[62] Носитель информации 104 сервера 102 предназначен для хранения данных, в том числе машиночитаемых инструкций и баз данных 106.
[63] Носитель информации 104 сервера 102 осуществляет хранение баз данных 106, в которых осуществляется хранение картографического материала и информации о множестве точек интереса. В альтернативных воплощениях настоящей технологии, носитель информации 104 может хранить в базах данных 106 либо только картографический материал, либо только информацию о точках интереса. В других альтернативных воплощениях настоящей технологии, носитель информации 104 может не хранить базы данных 106, а пользоваться внешними данными.
[64] Реализация баз данных 106 может быть осуществлена любым подходящим способом, известным из уровня техники. То, как именно реализованы базы данных 106, не имеет принципиального значения. Конкретная реализация той или иной базы данных может определяться характеристиками хранимых данных. Формат хранения данных также может определяться характеристиками хранимых данных. Например, в качестве формата хранения географических данных может быть использован формат YMapsML.
[65] В альтернативных вариантах воплощения настоящей технологии, в качестве формата хранения географических данных может быть использован формат GML - Geographic Markup Language. GML разрабатывается и поддерживается консорциумом OGC (Open Geospatial Consortium) и является международным стандартом ISO.
[66] Носитель информации 104 сервера 102 осуществляет хранение машиночитаемых инструкций, обеспечивающих управление базами данных 106, их обновление, пополнение, модификации. В частности, машиночитаемые инструкции, сохраненные на носителе информации 104, позволяют серверу 102 получать с электронного устройства 112 запросы о предоставлении точек интереса. Машиночитаемые инструкции, сохраненные на носителе информации 104, позволяют серверу 102 также получать иные необходимые данные из внутренних и внешних источников. Например, они могут позволить серверу 102 обмениваться картографическими данными с внешними источниками. Такой обмен может осуществляться любым подходящим способом, известным из уровня техники. Например, такой обмен может осуществляться с сервисом Яндекс™ Карты компании Яндекс путем обмена данными в формате YMapsML.
[67] В некоторых вариантах осуществления настоящей технологии, сервер 102 находится под контролем и/или управлением поставщика сервиса карт, такого, например, как провайдер Яндекс™. В других вариантах воплощения настоящей технологии, сервер 102 может иметь доступ к сервису карт, обеспечиваемому сторонним провайдером.
[68] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность получать запросы пользователя 120 на предоставление точек интереса для показа на карте 200, схематически представленной на Фиг. 2, Фиг. 3, Фиг. 4, Фиг. 5, и Фиг. 6.
[69] Фиг. 2 является схематическим изображением фрагмента карты, сформированного сервером, с размещенными на фрагменте карты графическими символами, представляющими точки интереса.
[70] Фиг. 3 является схематическим изображением фрагмента карты 200, сформированного сервером 102, с размещенными на фрагменте карты 200 графическими символами, представляющими точки интереса, и с сеткой 302, нанесенной на данный фрагмент карты 200.
[71] Фиг. 4 является схематическим изображением фрагмента карты 200, сформированного сервером 102, с размещенными на фрагменте карты 200 графическими символами, представляющими точки интереса и кластеры, и с сеткой 302, нанесенной на данный фрагмент карты 200.
[72] Фиг. 5 является схематическим изображением фрагмента карты 200, сформированного сервером 102, с размещенными на фрагменте карты 200 графическими символами, имеющими неодинаковый размер, представляющими точки интереса и кластеры, и с сеткой 302, нанесенной на данный фрагмент карты 200.
[73] Фиг. 6 является еще одним схематическим изображением фрагмента карты 200, сформированного сервером 102, с размещенными на фрагменте карты 200 графическими символами, имеющими неодинаковый размер, представляющими точки интереса и кластеры, и с сеткой 302, нанесенной на данный фрагмент карты 200.
[74] Запросы пользователя 120 на предоставление точек интереса для показа на карте 200 сервер 102 может получать с электронного устройства 112 по сети передачи данных 110.
[75] Точка интереса может представлять собой объект или группу объектов, которые могут быть интересны для пользователя 120. Все точки интереса могут быть рубрицированы в соответствии с определенным классификатором, который может быть одноуровневым, двухуровневым или многоуровневым классификатором. Например, двухуровневый классификатор может включать в себя следующие рубрики и подрубрики (элементы классификатора, являющиеся подрубриками, указаны в скобках): бизнес и производство (бизнес-центры, компании, промышленные предприятия, прочие организации), государство и общество (безопасность, государственные учреждения, службы экстренной помощи, социальные учреждения), культура (библиотеки и архивы, выставочные центры, кинотеатры, концертные залы, культурные центры, музеи, галереи, религия, средства массовой информации, театры), медицина (аптеки, больницы, ветеринарные клиники, диспансеры, женские консультации, медицинские товары, медицинские центры, медкомиссии, медпункты, оптика, поликлиники, роддома, санатории, стоматологии, травмпункты, прочие медицинские учреждения), наука и образование (научные учреждения, образование), отдых (архитектурные достопримечательности, природные достопримечательности, развлечения, спорт, туризм), торговля (автомагазины, бытовые товары, одежда и обувь, продукты, специализированные магазины, центры торговли, электроника), транспорт (авиационный транспорт, автомобильный транспорт, водный транспорт, железнодорожный транспорт, общественный транспорт), услуги (автоуслуги, бытовые услуги, коммунальные службы, размещение, рестораны, кафе, ритуальные услуги, прочие услуги, связь, уход за внешностью, финансовые услуги, юридические и страховые услуги), населенные пункты (коттеджные поселки, центры населенных пунктов, садовые товарищества), и другие. Трехуровневые и многоуровневые классификаторы имеют больший уровень детализации за счет создания элементов классификатора более низких уровней. Так, например, в трехуровневом классификаторе все или некоторые из подрубрик могут детализироваться. Например, подрубрика «развлечения» рубрики «отдых» может содержать в себе элементы классификации более низкого уровня, например: аквапарки, аттракционы, бильярд, боулинги, зоопарки, игорные заведения, кинотеатры, ночные клубы, парки, сады, ПКиО, пейнтбол, страйкбол, пляжи, развлекательные центры, цирки, прочие развлечения. В качестве другого примера, подрубрика «автомагазины» рубрики «торговля» может содержать в себе элементы классификации более низкого уровня, например: автозапчасти, автосалоны, мотосалоны, прочие автомагазины.
[76] В других воплощениях настоящей технологии, точки интереса могут быть не рубрицированы.
[77] Точка интереса может быть как отдельным объектом (например, Архангельский собор Московского кремля, Благовещенский собор Московского кремля, Царь-пушка, и т.п.), так и группой объектов, совокупность которых представляет собой одну точку интереса (например, Московский кремль).
[78] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность получать из баз данных 106 метки точек интереса. Дополнительно, машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность получать из баз данных 106 дополнительные параметры, связанные с соответствующими точками интереса, например, наименование объекта, описание объекта, фотография объекта, контактные данные, гиперссылка на сайт.
[79] В контексте описания настоящей технологии, термин «метка точки интереса» обозначает точку на карте 200, которой обозначена точка интереса. Метка точки интереса может содержать информацию об объекте (объектах), например, наименование, тип, адрес, контактную информацию. Метка точки интереса может являться точечным объектом и сама по себе быть невидимой для пользователя.
[80] Каждая из меток точек интереса может иметь позицию на карте 200.
[81] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут позволять серверу 102 получать информацию о точках интереса, которые потенциально могут быть показаны пользователю 120 на дисплее 118 электронного устройства 112, из открытых источников данных, и генерировать метки точек интереса.
[82] Под открытыми источниками данных следует понимать любые подходящие внешние источники данных, которые являются доступными для получения сервером 102, в том числе путем получения по сети 110 передачи с различных хостингов. Например, открытыми источниками данных являются различные веб-страницы и веб-сайты, в том числе Интернет-энциклопедии (например, Википедия), сайты социальных сетей (например, Фейсбук), официальные сайты объектов (например, сайт Большого театра), сайты фотохостингов (например, сайт фотохостинга Flickr), сайты провайдеров услуг в сфере туризма, общественного питания, любые иные веб-страницы и веб-сайты.
[83] Альтернативно или дополнительно, машиночитаемые инструкции, сохраненные на носителе информации 104, могут позволять серверу 102 получать информацию о точках интереса из собственных источников данных. Например, владелец сервера 102 может самостоятельно на местности осуществить определение географических координат точек интереса - достопримечательностей в пределах города Москвы, - и самостоятельно внести полученные данные в базы данных 106.
[84] Альтернативно или дополнительно, машиночитаемые инструкции, сохраненные на носителе информации 104, позволяют серверу 102 получать информацию о точках интереса от публикатора (не изображен), то есть лица, заинтересованного в размещении информации об объекте. Например, сервер 102, находящийся под контролем и/или управлением поставщика сервиса карт, может предоставлять возможность любому лицу отмечать объекты на картах, и делать описание соответствующих объектов. Например, таким лицом может быть публикатор, который со своего электронного устройства (не изображено), с использованием браузера, подключается к сервису карт, загружает с сервера 102 на свое электронное устройство для отображении на дисплее (не изображен) карты 200 определенного участка местности, отмечает на карте 200, отображаемой на дисплее, вновь открывшуюся художественную галерею, указывает ее наименование, дает краткое описание и указывает контактные данные.
[85] Каждая из меток точек интереса может иметь графический символ, обозначающий данную точку интереса.
[86] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность определять на карте 200 местоположение графических символов точек интереса и графических символов кластеров. В данном воплощении настоящей технологии, параметром местоположения являются географические координаты объекта. Например, географические координаты Большого театра: 55°45'37'' с. ш. 37°37'07'' в. д. В альтернативных воплощениях настоящей технологии, параметром местоположения может быть, в качестве неограничивающего примера, адрес объекта. Так, адресом Большого театра является: Россия: Москва, Театральная площадь, дом 1. В некоторых альтернативных воплощениях настоящей технологии, может быть более одного параметра местоположения (например, географические координаты и адрес).
[87] В контексте описания настоящей технологии, термин «графический символ» обозначает графическое изображение, представляющее на карте 200 точку интереса (метку точки интереса), либо представляющее на карте 200 кластер, включающий в себя несколько точек интереса. Графический символ может являться площадным объектом, отображаемым на карте 200 и видимым пользователю. Графические символы могут иметь различную геометрическую форму, различный размер. Графический символ может включать в себя также буквенную, цифровую или буквенно-цифровую информацию. Графические символы могут быть выполнены в различных цветах.
[88] В некоторых воплощениях настоящей технологии, геометрическая форма графических символов может отличаться. Например, в некоторых воплощениях настоящей технологии, геометрическая форма графических символов, представляющих точку интереса, и графических символов, представляющих кластер, могут отличаться. Например, изображенный на Фиг. 4 графический символ 202, представляющий точку интереса, отличается от графического символа 406, представляющего кластер. В других воплощениях настоящей технологии, геометрическая форма графических символов может быть одинаковой.
[89] В некоторых воплощениях настоящей технологии, размеры графических символов могут отличаться. Например, в некоторых воплощениях настоящей технологии, размер графических символов кластеров может отличаться в зависимости от того, сколько точек интереса объединено в соответствующий кластер. Например, изображенный на Фиг. 5 графический объект 504, представляющий кластер, объединяющий в себе пять точек интереса 218, 220, 222, 224 и 226, более крупный, чем графический объект 506, представляющий кластер, объединивший в себя две точки интереса 212 и 214. В других воплощениях настоящей технологии, размер графических символов может быть одинаковым.
[90] В некоторых воплощениях настоящей технологии, графические символы могут включать в себя буквенную, цифровую или буквенно-цифровую информацию. Такая информация может быть одинаковой для всех или некоторых графических символов, или она может быть различной в различных графических символах. Например, изображенный на Фиг. 5 графический объект 504, представляющий кластер, объединяющий в себе пять точек интереса 218, 220, 222, 224 и 226, содержит в себе цифру «5», а графический объект 506, представляющий кластер, объединивший в себя две точки интереса 212 и 214, содержит в себе цифру «2».
[91] Графические символы могут быть выполнены в различных цветах, причем цвета могут быть однотонными и не однотонными. В некоторых воплощениях настоящей технологии, все графические символы могут быть одного цвета. В других воплощениях настоящей технологии, различные графические символы могут быть разного цвета. Например, все графические символы, представляющие точки интереса, могут быть выполнены в синем цвете, а все графические символы, представляющие кластеры, могут быть выполнены в розовом цвете, причем интенсивность розового цвета может меняться в зависимости от количества точек интереса, объединенных в соответствующий кластер.
[92] При определении на карте 200 местоположения графических символов точек интереса и графических символов кластеров, сервер 102 может размещать графические символы таким образом, чтобы центр массы площадной фигуры, представляющей собой графический символ точки интереса, совпадал с позицией точки интереса на карте 200. Однако это не является обязательным. В качестве неограничивающего примера, сервер 102 может размещать графические символы, имеющие форму перевернутой капли, таким образом, чтобы расположенное внизу острие капли совпадало с позицией метки точки интереса на карте. В качестве наглядного примера, графический символ 202, представленный на Фиг. 3, представляет собой изображение перевернутой капли с расположенным внизу острием.
[93] При определении на карте 200 местоположения графических символов кластеров, сервер 102 может размещать графические символы таким образом, чтобы центр массы площадной фигуры, представляющей собой графический символ точки интереса, совпадал с с центром масс точек интереса, объединенных в данный кластер. Однако это не является обязательным. В качестве неограничивающего примера, сервер 102 может размещать графические символы, имеющие форму кленового листа (не изображено), таким образом, чтобы расположенное внизу острие веточки листка совпадало с центром масс точек интереса, объединенных в данный кластер.
[94] Точки интереса могут размещаться в пространстве с разной плотностью. Графические объекты, представляющие точки интереса, могут не соприкасаться друг с другом, могут соприкасаться друг с другом, и могут перекрываться полностью или частично. Например, графические объекты 202, 204 и 206, изображенные на Фиг. 2, не перекрываются с другими графическими объектами и не касаются других графических объектов. Изображенные на Фиг. 2 графические объекты 208 и 210 частично перекрываются. Изображенные на Фиг. 2 графические объекты 212 и 214 частично перекрываются, а графический объект 216 соприкасается с графическим объектом 214. Изображенные на Фиг. 2 графические объекты 218, 220, 222, 224 и 226 частично перекрываются.
[95] Касания и перекрытия возможны тогда, когда точки интереса расположены относительно близко друг от друга.
[96] Вероятность перекрытий может зависеть от различных факторов. Например, на возможность касаний и перекрытий может влиять плотность точек интереса на единицу площади, масштаб карты 200, а также размер графических объектов, обозначающих точки интереса. Например, количество достопримечательностей, в расчете на один квадратный километр, на территории Московского кремля будет больше, чем на территории поселка Вихровский Пристенского района Курской области. Соответственно, если точками интереса являются достопримечательности, то, при одинаковом масштабе, вероятность перекрытий выше, когда показываются точки интереса на территории Московского кремля, чем когда показываются точки интереса на территории поселка Вихровский Пристенского района Курской области.
[97] Вышесказанное применимо также к графическим символам, обозначающим кластеры, которые также могут соприкасаться и/или перекрываться, полностью или частично, с другими графическими символами, представляющими точки интереса и/или кластеры. Например, изображенные на Фиг. 5 графические объекты 506 и 216 частично перекрываются, при этом графический объект 502 представляет собой кластер, объединяющий в себе две точки интереса, а графический объект 216 является графическим объектом, представляющим точку интереса.
[98] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность осуществлять размещение на карте 200 слоя сетки 302, как это показано в качестве наглядного примера на Фиг. 3.
[99] В контексте описания настоящей технологии, термин «сетка» («grid») обозначает сетку 302, включающую в себя множество ячеек, которая используется для условного разбиения карты 200 на секторы и для анализа пространственных данных, в том числе данных о точках интереса (метках точек интереса), данных о кластерах, как находящихся внутри ячеек, так и на границах смежных ячеек сетки.
[100] Сервер 102 может осуществлять нанесение сетки 302 на карту 200 таким образом, чтобы размер ячейки сетки 302 превышал размер самого крупного графического символа, обозначающего либо метку точки интереса, либо кластер.
[101] Таким образом, если все графические символы имеют одинаковый размер, как это показано на Фиг. 3, то размер ячейки будет больше, чем размер любого из графических символов.
[102] Если размер графических символов отличается (например, если размеры графических символов, обозначающих кластеры, различаются по размеру в зависимости от количества объединенных в них точек интереса, как это показано на Фиг. 5), то размер ячейки будет больше, чем размер самого крупного графического символа из всех графических символов, отображаемых на соответствующем фрагменте карты 200. В случае, изображенном на Фиг. 5, самым крупным графическим символом является графический символ 504.
[103] Несмотря на то, что размер ячейки превышает размер любого графического символа, границы ячейки могут как пересекать, так и не пересекать графические символы. Например, как это показано на Фиг. 3, графические символы 212 и 214 пересекаются границами ячеек сетки 302, причем графический символ 214 пересекается сразу двумя границами ячеек сетки 302. Сетка, нанесенная на карту 200, может не отображаться на дисплее 118 электронного устройства 112. Кроме того, сетка, нанесенная на карту 200, может не передаваться сервером 102 электронному устройству 112.
[104] В результате размещения на карте 200 слоя сетки 302, различные графические символы могут оказаться в различных ячейках сетки. Например, как это показано на Фиг. 3, в ячейках 230, 232, 238 и 242 не имеется графических объектов. В ячейке 234 располагаются четыре графических объекта, а именно, графические объекты 204, 206, 208, 210. В ячейке 236 располагается один графический объект 202. В ячейке 240 располагаются пять графических объектов, а именно, графические объекты 218, 220, 222, 224, 226. В ячейке 246 располагается один графический объект 216.
[105] В результате размещения на карте 200 слоя сетки 302, различные графические символы могут оказаться одновременно в нескольких ячейках сетки. Например, графический объект 214 пересекается двумя границами ячеек 238, 240, 244 и 246. Другими словами, графический объект 214 расположен на границе четырех смежных ячеек сетки 300. Объект 214, соответственно, располагается одновременно в четырех ячейках 238, 240, 244 и 246.
[106] В свою очередь, графический объект 212 также пересекается двумя границами ячеек 238, 240, 244 и 246. Пересечение графического объекта 212 горизонтальной линией, разделяющей ячейки 240 и 246, на Фиг. 3 не видно из-за перекрытия графического объекта 212 графическим объектом 214, однако такое пересечение имеется. Графический объект 212 не попал в ячейку 244 из-за своей каплевидной формы. Другими словами, графический объект 214 расположен на границе трех смежных ячеек сетки 300. Графический объект 212 располагается одновременно только в трех ячейках 238, 240 и 246.
[107] Границы ячеек сетки 302 могут пересекать также и графические объекты, представляющие кластеры. Например, как это видно на Фиг. 5, графический объект 506, представляющий кластер, пересекается двумя границами ячеек 238, 240, 244 и 246.
[108] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность определять, имеется ли перекрытие между графическими символами, обозначающими метки разных точек интереса и/или представляющие кластеры. Более конкретно, воплощения настоящей технологии (а) размещают на карте слой сетки, условно разделяя таким образом карту 200 на ячейки, и (б) определяют, пересекаются ли графические символы, расположенные внутри одной ячейки (без проверки наличия пересечений между графическими символами, не расположенными в одной ячейке) и, в ответ на выявленное пересечение расположенных внутри одной ячейки графических символов, воплощения настоящей технологии объединяют все или некоторые перекрывающиеся расположенные внутри одной ячейки графические символы в кластер. Далее, воплощения настоящей технологии определяют местоположение графического символа, представляющего данный кластер, с учетом местоположения центра масс маркеров объединенных точек интереса или с учетом местоположения центра масс графических символов объединенных точек интереса.
[109] Технический результат по меньшей мере некоторых воплощений настоящей технологии достигается за счет комбинации двух преимуществ, по сравнению с существующим уровнем техники, а именно: (1) в уменьшении вычислительной нагрузки, ложащейся на сервер 102, при осуществлении кластеризации близкорасположенных точек интереса поскольку, в отличие от известных технологий, обеспечивающих кластеризацию и размещение графических символов в центры масс объединенных точек интереса, воплощения настоящей технологии не проверяют наличие или отсутствие перекрытий между всеми точками на карте 200, а проводит только ограниченное количество расчетов только между множествами точек интереса, расположенных, соответственно, внутри общей для них ячейки; (2) по сравнению с существующими технологиями, в которых кластеризация осуществляется только в отношении множеств точек интереса, расположенных внутри общей для них ячейки, по меньшей мере некоторые воплощения настоящей технологии обеспечивают расположение кластеров не в центрах ячеек, образованных в результате нанесения сетки, а в центрах масс объединенных точек интереса.
[110] В данном неограничивающем воплощении настоящей технологии, для определения, имеется ли перекрытие между по меньшей мере двумя графическими символами, сервер 102 осуществляет попиксельное сравнение изображений соответствующих по меньшей мере двух графических символов. Под перекрытием в разных воплощениях настоящей технологии могут пониматься полное перекрытие, и/или частичное перекрытие, и/или соприкасание.
[111] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность определять, имеется ли перекрытие между графическими символами в пределах одной ячейки сетки 302, и объединять перекрывающиеся графические символы, расположенные в одной ячейке, в кластеры.
[112] В альтернативных неограничивающих воплощениях настоящей технологии, для определения, имеется ли перекрытие между по меньшей мере двумя графическими символами, сервер 102 осуществляет сравнение геометрических координат соответствующих по меньшей мере двух графических символов. Под перекрытием можно понимать полное перекрытие, и/или частичное перекрытие, и/или соприкасание.
[113] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность рассчитывать центры масс.
[114] Центры масс могут рассчитываться для двух и более меток точек интереса.
[115] Центры масс могут рассчитываться для двух и более графических символов.
[116] Центры масс могут рассчитываться математически. В качестве неограничивающих примеров, для двух и более меток точек интереса, центр масс может рассчитываться как центр масс системы материальных точек в классической механике. Для графических символов, центр масс может рассчитываться как центр масс однородных плоскостных фигур. Одним из применимых способов расчета центра масс является определение центра масс с использованием плотностного алгоритма кластеризации пространственных данных с присутствием шума, известного также как DBSCAN (Density-based spatial clustering of applications with noise).
[117] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность объединять по меньшей мере два графических символа в кластер. При объединении по меньшей мере двух графических символов в кластер, сервер 102 может осуществлять размещение графического символа, обозначающего этот кластер, в центр масс точек, объединенных в этот кластер.
[118] Машиночитаемые инструкции, сохраненные на носителе информации 104, могут предоставлять серверу 102 возможность передавать электронному устройству 112, с которого был направлен запрос на предоставление точек интереса, информацию, которая может включать в себя фрагменты карт 200 с расположенными на них графическими символами, обозначающими метки точек интереса и/или кластеров. Передача информации может осуществляться по сети 112 передачи данных, и фрагменты карт 200 с расположенными на них графическими символами, обозначающими метки точек интереса и/или кластеров, могут отражаться на дисплее электронного устройства 112.
[119] Хранимые на носителе информации 104 сервера 102 программные инструкции могут обеспечивать инициирование процессора и выполнение им этапов способа 700, как это указано ниже при описании Фиг. 7.
[120] Сервер 102 соединен с сетью 110 передачи данных через линию связи (не пронумерована). В некоторых вариантах осуществления настоящей технологии, не ограничивающих ее объем, сеть 110 передачи данных связи может представлять собой Интернет. В других вариантах осуществления настоящей технологии, сеть 110 передачи данных может быть реализована иначе - в виде глобальной сети передачи данных, локальной сети передачи данных, частной сети передачи данных и т.п.
[121] Реализация линии связи не ограничена, и будет зависеть от того, какие устройства присоединены к сети 110 передачи данных. В качестве примера, но не ограничения, подключение сервера 102 к сети 110 передачи связи может быть осуществлено по проводной связи (соединение на основе сети Ethernet). В то же время, другие устройства могут быть подключены иными способами. Так, в случаях, в которых подключенное устройство представляет собой беспроводное устройство связи (например, электронное устройство 112, реализованное как смартфон), подключение представляет собой беспроводную сеть связи (например, среди прочего, линия связи сети 3G, линия связи сети 4G, беспроводной интернет Wireless Fidelity или коротко WiFi®, Bluetooth® и т.п.). В тех примерах, где устройство настольный компьютер (как, например, электронное устройство 112), линия связи может быть как беспроводной так и проводной (соединение на основе сети Ethernet).
[122] Важно иметь в виду, что различные воплощения сервера 102, электронного устройства 112, линий связи для подсоединения к сети 110 передачи данных даны исключительно в иллюстрационных целях. Таким образом, специалисты в данной области техники смогут понять подробности других конкретных вариантов осуществления воплощения сервера 102, электронного устройства 112, линий связи для подсоединения к сети 110 передачи данных. Таким образом, представленные здесь примеры не ограничивают объем настоящей технологии.
[123] Через сеть 110 передачи данных, сервер 102 может быть соединен с упомянутым выше электронным устройством 112. Электронное устройство 112 обычно связано с пользователем 120. Пользователем 120 является лицо, заинтересованное в получении информации об объектах, имеющих пространственные координаты. Такими объектами могут быть объекты, информация о которых была получена сервером 102 из собственных источников данных, и/или из открытых источников данных, и/или информация о которых была передана на сервер 102 публикатором с своего электронного устройства по сети 110 передачи данных. В данном воплощении настоящей технологии, пользователь 120 является туристом, осуществляющим с помощью клиентского устройства 120 поиск достопримечательностей в центре города Москвы.
[124] В альтернативных вариантах воплощения настоящей технологии, пользователь 120 может осуществлять поиск объектов иной категории. Например, в качестве нескольких неограничивающих примеров пользователей 120, из множества возможных примеров, можно назвать: (а) покупатель, который ищет магазин подарков и сувениров в районе Киевского вокзала в г. Москве; в) пользователь, который ищет поблизости кафе или ресторан.
[125] Следует отметить, что тот факт, что электронное устройство 112 связано с пользователем 120, не подразумевает какого-либо конкретного режима работы, равно как и необходимости входа в систему, быть зарегистрированным, или чего-либо подобного.
[126] Варианты клиентского устройства 120 конкретно не ограничены, но в качестве примера клиентского устройства 120 могут использоваться персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.п.), устройства беспроводной связи (мобильные телефоны, смартфоны, планшеты и т.п.), а также сетевое оборудование (маршрутизаторы, коммутаторы или шлюзы).
[127] Схематически изображенное на Фиг. 1 клиентское устройство 120 реализовано в виде смартфона Apple™ iPhone 5S с установленной на нем и действующей операционной системой iOS 7, с Bluetooth, Wi-Fi, 3G, LTE, системами позиционирования GPS и ГЛОНАСС.
[128] Клиентское устройство 120 включает в себя также носитель информации 114. В принципе, данный носитель информации может быть носителем абсолютно любого типа и характера, включая ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB флеш-накопители, твердотельные накопители, накопители на магнитной ленте и т.д, а также их комбинации.
[129] В клиентском устройстве 120, схематически изображенном на Фиг. 1, носитель информации 114 реализован как флеш-накопитель объемом 16 Гб.
[130] Носитель информации 114 может сохранять файлы пользователя и программные инструкции.
[131] В частности, носитель информации 114 может хранить программное обеспечение, реализующее функции браузера 116. В общем случае, целью браузера 116 является предоставление возможности пользователю 120 загружать на клиентское устройство 120 файлы через сеть 110 передачи данных с сервера 102, и показывать загруженные изображения (видео) на дисплее 118, который будет подробнее описан ниже.
[132] Реализация браузера 116 никак конкретно не ограничена. В качестве неограничивающих примеров, такими браузерами могут быть Яндекс™ браузер, Google Chrome™, Internet Explorer™, различные мобильные поисковые приложения, и так далее. В клиентском устройстве 120 браузер 116 реализован как мобильный браузер Яндекс.
[133] Важно иметь в виду, что любое другое коммерчески доступное или собственное приложение может быть использовано для реализации вариантов осуществления настоящей технологии, не ограничивающих ее объем.
[134] Клиентское устройство 112 включает в себя также упомянутый выше дисплей 118, являющийся сенсорным экраном 4'', с разрешением 640×1136, позволяющий представлять видеоинформацию пользователю 120, а также который может использоваться как устройство ввода информации. Таким образом, пользователь 120 имеет возможность видеть на дисплее 118 в интерфейса браузера 116 клиентского устройства 120 различные объекты, например, отмеченные графическими символами достопримечательности на карте 200, либо текстовую информацию о достопримечательностях, и т.д. Кроме того, пользователь 120 может делать запросы на предоставление информации о точках интереса путем ввода запроса с использованием сенсорного экрана.
[135] В ходе демонстрации шагов, выполняемых в ходе выполнения способа 700, будут делаться ссылки на схематическое изображение варианта воплощения сетевой компьютерной системы 100, как это представлено на Фиг. 1, а также для наглядности ссылки будут делаться на Фиг. 2, Фиг. 3, Фиг. 4, Фиг. 5 и Фиг. 6.
[136] Фиг. 7 является блок-диаграммой способа 700, выполняемого на сервере 102, изображенном на Фиг. 1, выполняемого в соответствии с вариантами осуществления настоящей технологии, не ограничивающими ее объем.
[137] Этап 702 - получение запроса пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200
[138] В данном воплощении настоящей технологии, на этапе 702, сервер 102 осуществляет получение запроса пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200, изображенной на Фиг. 2.
[139] Пользователь 120 может сгенерировать такой запрос путем ввода поискового запроса в поисковую строку сервиса карт, когда веб-страница сервиса карт открыта в веб-браузере 116 и показана на дисплее 118 электронного устройства 112. Поисковый запрос может быть введен любым подходящим образом. В качестве неограничивающих примеров, поисковый запрос может быть напечатан с использованием виртуальной клавиатуры на дисплее 118, либо путем осуществления операции скопировать/вставить, когда осуществляется копирование текста из любого источника и его последующая вставка в поисковую строку, либо с использованием голосового ввода запроса.
[140] В альтернативных воплощениях настоящей технологии, запрос пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200 дополнительно включает в себя получение запроса пользователя 120 на предоставление пятой точки интереса для показа на карте 200.
[141] Как будет понятно специалистам в данной области техники, в ответ на запрос пользователя 120 может быть предоставлено большее количество точек интереса.
[142] Далее, метод 700 переходит к этапу 704.
[143] Этап 704 - получение метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса, причем каждая из меток имеет позицию на карте 200 и графический символ, обозначающий соответствующую метку
[144] На этапе 704, сервер 102 осуществляет получение из баз данных 106 метки первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса.
[145] Каждая из меток первой точки интереса 208, второй точки интереса 210, третьей точки интереса 218 и четвертой точки интереса 220 имеет позицию на карте 200.
[146] В качестве неограничивающих примеров, позиция на карте 200 может быть определена географическими координатами, или почтовым адресом, или почтовым индексом, и т.п.
[147] Каждая из меток точек интереса имеет графический символ, и каждая из меток точек интереса представлена своим графическим символом.
[148] В данном воплощении настоящей технологии, первая точка интереса, вторая точка интереса, третья точка интереса и четвертая точка интереса представлены, соответственно, графическими символами 208, 210, 218 и 220 на карте 200, изображенной на Фиг. 2.
[149] В альтернативных воплощениях настоящей технологии, когда запрос пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200 дополнительно включает в себя получение запроса пользователя 120 на предоставление пятой точки интереса для показа на карте 200, сервер 102 осуществляет получение из баз данных 106 метки пятой точки интереса. Пятая точка интереса также имеет метку, которая имеет позицию на карте 200 и графический символ, обозначающий соответствующую метку.
[150] Далее, метод 700 переходит к этапу 706.
[151] Следует отметить, что этапы 706-714 описаны последовательно с целью облегчить понимание отдельных элементов способа 700. Как будет понятно специалистам в данной области техники, этапы 706-714 не обязательно должны выполняться в данном порядке, и не обязательно последовательно. Напротив, скорее всего все или некоторые из этих этапов могут и будут осуществляться одновременно. Например, определение местоположения графических символов и размещение на карте 200 слоя сетки 302 может производиться одновременно, либо даже размещение на карте 200 слоя сетки 302 может производиться до определения местоположения графических символов.
[152] Этап 706 - определение на карте 200 местоположения графических символов 208, 210, 218 и 220 соответственно метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса
[153] На этапе 706, сервер 102 осуществляет определение на карте 200 местоположения графических символов 208, 210, 218 и 220 соответственно метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса. Определение на карте 200 местоположения графических символов 208, 210, 218 и 220 может отличаться в разных воплощениях настоящей технологии.
[154] Под определение на карте 200 местоположения графических символов 208, 210, 218 и 220 может пониматься их размещение на карте 200.
[155] В данном воплощении настоящей технологии, графические символы 208, 210, 218 и 220 имеют форму перевернутой капли. Сервер 102 в данном воплощении настоящей технологии определяет местоположение графических символов 208, 210, 218 и 220 таким образом, чтобы расположенное внизу острие каждой капли совпадало с позицией метки точки интереса на карте 200.
[156] В альтернативных воплощениях настоящей технологии, сервер 102 может определять местоположение графических символов 208, 210, 218 и 220 иным образом. В качестве неограничивающего примера, сервер 102 может определять местоположение графических символов 208, 210, 218 и 220 таким образом, чтобы центры масс соответствующих графических символов совпадали с позициями меток соответствующих точек интереса на карте 200.
[157] Далее, метод 700 переходит к этапу 708.
[158] Этап 708 - размещение на карте 200 слоя сетки 302
[159] На этапе 708, сервер 102 осуществляет размещение на карте 200 слоя сетки 302, как это показано на Фиг. 3.
[160] Слой сетки 302 включает в себя множество ячеек сетки. Например, как это показано на Фиг. 3, слой сетки 302 включает в себя ячейки 230, 232, 234, 236, 238, 240, 242, 244 и 246.
[161] Масштаб сетки 302 определяется таким образом, чтобы размер ячейки превышал размер самого крупного графического символа, размещенного на карте 200.
[162] Поскольку на Фиг. 3 все графические символы имеют одинаковый размер, то размер ячейки будет больше, чем размер любого из графических символов, изображенных на Фиг. 3. Однако в случаях, когда размер графических символов отличается, то размер ячейки 230, 232, 234, 236, 238, 240, 242, 244 и 246 будет больше, чем размер самого крупного графического символа из всех графических символов, отображаемых на соответствующем фрагменте карты 200.
[163] Далее, метод 700 переходит к этапу 710.
[164] Этап 710 - определение месторасположения графических символов 208, 210, 218 и 220, обозначающих соответственно метки первой, второй, третьей и четвертой точек интереса
[165] Говоря в общем, при определении, где расположены графические объекты, сервер 102 может определять местоположение графических символов относительно сетки 302 карты 200. В этом отношении, каждый из графических символов может пересекаться одной границей сетки 302, двумя границами сетки 302, либо не пересекаться границами сетки 302. При пересечении графического символа одной границей сетки 302, графический объект может считаться расположенным одновременно в двух ячейках сетки 302. При пересечении графического символа двумя границами сетки 302, графический объект может считаться расположенным одновременно в четырех ячейках сетки 302. В некоторых случаях, когда графический объект имеет несимметричную и/или неправильную геометрическую форму, при пересечении графического символа двумя границами сетки 302, графический объект может оказаться расположенным одновременно в трех ячейках сетки 302. В случае, когда графический символ не пересекается границами сетки 302, этот графический объект расположен в одной ячейке сетки 302.
[166] На этапе 710, сервер 102 осуществляет определение месторасположения графических символов 208, 210, 218 и 220, обозначающих соответственно метки первой, второй, третьей и четвертой точек интереса. В результате этого, сервер 102, в данном воплощении настоящей технологии, определил, что графические символы 208, 210, обозначающие соответственно метки первой и второй точек интереса, полностью расположены в первой ячейке 234 сетки 200, и графические символы 218 и 220, обозначающие метки третьей и четвертой точек интереса, полностью расположены во второй ячейке 240 сетки 302, при этом графические символы 208, 210, 218 и 220 не пересечены границами сетки 302.
[167] Следует обратить внимание, что ячейка 234 и ячейка 240 являются смежными ячейками, что не является обязательным. В других воплощениях настоящей технологии, при осуществлении способа 700 применительно к другим точкам интереса (например, применительно к точкам интереса, представленным графическими символами 208, 210, 214, 216), первой ячейкой и второй ячейкой могли бы быть, например, ячейка 246 и ячейка 234.
[168] Когда сервер 102 определяет, что графические символы 208, 210, обозначающие, соответственно, метки первой и второй точек интереса, расположены в первой ячейке 234 сетки 200, и графические символы 218 и 220, обозначающие метки третьей и четвертой точек интереса, расположены во второй ячейке 240 сетки 302, метод 700 переходит к этапу 712. Данное определение местонахождения необходимо, поскольку при расчете, какие графические символы могут быть объединены в кластер, могут приниматься во внимание такие графические объекты, которые расположены в одной ячейке.
[169] В альтернативных воплощениях настоящей технологии, когда запрос пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200 дополнительно включает в себя получение запроса пользователя 120 на предоставление пятой точки интереса, сервер 102 осуществляет определение на карте 200 местоположения графического символа метки пятой точки интереса, и определяет, пересечен ли графический символ пятой точки интереса одной или двумя границами сетки 302, и в какой или каких ячейках расположен графический символ пятой точки интереса. Например, сервер может определить, что графический объект метки пятой точки интереса (графический символ метки пятой точки не изображен) пересекается границей сетки 302, той ее частью, которая разделяет ячейки 234 и 240.
[170] Этап 712 - определение, имеется ли перекрытие между графическими символами 208 и 210, обозначающими метки первой и второй точек интереса и, в случае определения перекрытия, объединение этих графических символов в первый кластер
[171] На этапе 712, сервер 102 определяет, имеется ли перекрытие между графическими символами 208 и 210, обозначающими метки первой и второй точек интереса.
[172] Говоря в общем, при определении перекрытий графических символов, сервер 102 осуществляет проверку наличия или отсутствия перекрытий только между графическими символами, расположенными в пределах одной и той же ячейки. Так, например, при осуществлении анализа части карты 200, соответствующей ячейке 243, сервер 102 будет осуществлять проверку на наличие перекрытий только между графическими символами 204, 206, 208 и 210, поскольку только эти графические символы расположены в пределах ячейки 234. Таким образом, сервер 102 не будет объединять графические символы, расположенные в разных ячейках. При этом следует учитывать, что графический символ может, в случае его пересечения одной или двумя линиями сетки 302, считаться расположенным в двух, трех или четырех смежных ячейках, в зависимости от характера пересечения. В таком случае графический символ, расположенный, например, одновременно в двух смежных ячейках, потенциально может быть объединен либо с графическим символом, расположенным в одной такой смежной ячейке, либо с графическим символом, расположенном в другой такой смежной ячейке.
[173] В данном неограничивающем воплощении настоящей технологии, для определения, имеется ли перекрытие между графическими символами 208 и 210, обозначающими метки первой и второй точек интереса, сервер 102 осуществляет попиксельное сравнение изображений графических символов 208 и 210. В данном воплощении настоящей технологии, под перекрытием понимается полное перекрытие и частичное перекрытие. В данном воплощении настоящей технологии, сервер 102 обнаруживает частичное перекрытие, как это показано на Фиг. 3.
[174] Определив перекрытие между графическими символами 208 и 210, обозначающими метки первой и второй точек интереса, сервер 102 объединяет графические символы 208 и 210 в кластер, и размещает графический символ 402, представляющий первый кластер, в центре масс в центр масс точек, объединенных в первый кластер.
[175] Как будет понятно специалистам в данной области техники, количество перекрывающихся точек интереса в пределах одной ячейки может превышать две точки интереса. Соответственно, в кластер могут быть объединены две и более точек интереса. Более того, в кластер могут быть объединены ранее сформированные кластеры, либо могут быть объединены ранее сформированные кластеры и точки интереса.
[176] В данном воплощении настоящей технологии, под центрами масс точек, объединенных в первый кластер, следует понимать центр масс точек, соответствующих меткам первой точки интереса и второй точки интересе.
[177] В альтернативных воплощениях, центрами масс точек, объединенных в первый кластер, может быть центр масс графических символов 208 и 210.
[178] Как будет понятно специалистам в данной области техники, в случаях, когда сервер 102 определил, что перекрытия между графическими символами 208 и 210, обозначающими метки первой и второй точек интереса, не имеется, объединение этих графических символов в первый кластер не происходит.
[179] Далее, метод 700 переходит к этапу 714.
[180] Этап 714 - определение, имеется ли перекрытие между графическими символами 218 и 220, обозначающими метки третьей и четвертой точек интереса и, в случае определения перекрытия, объединение этих графических символов во второй кластер
[181] На этапе 714, сервер 102 сервер 102 определяет, имеется ли перекрытие между графическими символами 218 и 220, обозначающими метки третьей и четвертой точек интереса. В данном неограничивающем воплощении настоящей технологии, для определения, имеется ли перекрытие между графическими символами 218 и 220, обозначающими метки третьей и четвертой точек интереса, сервер 102 осуществляет попиксельное сравнение изображений графических символов 218 и 220. В данном воплощении настоящей технологии, под перекрытием понимается полное перекрытие и частичное перекрытие. В данном воплощении настоящей технологии, сервер 102 обнаруживает частичное перекрытие, как это показано на Фиг. 3.
[182] В альтернативных воплощениях настоящей технологии, под перекрытием может пониматься полное перекрытие, и/или частичное перекрытие, и/или соприкасание.
[183] Определив перекрытие между графическими символами 218 и 220, обозначающими метки третьей и четвертой точек интереса, сервер 102 объединяет графические символы 218 и 220 в кластер, и размещает графический символ, представляющий второй кластер (не изображен), в центре масс точек, объединенных во второй кластер.
[184] Как будет понятно специалистам в данной области техники, количество перекрывающихся точек интереса в пределах одной ячейки может превышать две точки интереса. Соответственно, в кластер могут быть объединены две и более точек интереса. Например, как это изображено на Фиг. 5, в кластер, представленный графическим символом 404, были объединены пять точек интереса, которые на Фиг. 3 были представлены графическими символами 218, 220, 222, 224 и 226. Более того, в кластер могут быть объединены ранее сформированные кластеры, либо могут быть объединены ранее сформированные кластеры и точки интереса.
[185] В данном воплощении настоящей технологии, под центрами масс точек, объединенных во второй кластер, следует понимать центр масс точек, соответствующих меткам третьей точки интереса и четвертой точки интереса.
[186] В альтернативных воплощениях, центрами масс точек, объединенных во второй кластер, может быть центр масс графических символов 218 и 220.
[187] Как будет понятно специалистам в данной области техники, в случаях, когда сервер 102 определил, что перекрытия между графическими символами 218 и 220, обозначающими метки первой и второй точек интереса не имеется, объединение этих графических символов в первый кластер не происходит.
[188] Далее, метод 700 завершается.
В альтернативных воплощениях настоящей технологии, когда запрос пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте 200 дополнительно включает в себя получение запроса пользователя 120 на предоставление пятой точки интереса, сервер 102 осуществляет определение, имеется ли перекрытие между графическим символом, обозначающим метку пятой точки интереса, и любым другим графическим символом в пределах той же самой ячейки, где расположен графический объект метки пятой точки интереса.
В случае, когда графический объект метки пятой точки интереса (графический символ метки пятой точки не изображен) пересекается границей сетки 302, той ее частью, которая разделяет ячейки 234 и 240, сервер 102 определяет, что графический символ метки пятой точки интереса расположен одновременно в двух ячейках - в ячейке 234 и в ячейке 240. Таким образом, любым другим графическим символом, объединение с которым графического символа метки пятой точки интереса потенциально возможно, может быть как графический символ, обозначающий метку любой другой точки интереса в ячейке 234 или в ячейке 240, либо графический символ, обозначающий метку кластера в ячейке 234 или в ячейке 240. Такое перекрытие графического символа метки пятой точки с другим графическим символом возможно, например, когда другой графический символ находится в непосредственной близости от границы сетки 302, либо прилегает к границе сетки 302, либо, подобно графическому символу метки пятой точки интереса, пересекает границу сетки 302.
[189] В случае определения сервером 102 такого перекрытия, сервер 102 осуществляет объединение графического символа, обозначающего метку пятой точки интереса, с соответствующим графическим символом.
[190] В качестве примера, если бы графический объект метки пятой точки интереса соприкасался бы с графическим объектом метки первой точки интереса и/или с графическим объектом метки второй точки интереса, все эти точки могли бы быть объединены в первый кластер.
[191] Если бы графический объект метки пятой точки интереса соприкасался бы с графическим объектом метки третьей точки интереса и/или с графическим объектом метки четвертой точки интереса, все эти точки могли бы быть объединены во второй кластер.
[192] Если бы графический объект метки пятой точки интереса соприкасался бы с графическим объектом метки n-точки интереса, то графический объект метки пятой точки интереса и графический объект метки n-точки интереса могли бы быть объединены в третий кластер. Графический символ, обозначающий соответствующий кластер, мог быть бы помещен в центр масс точек, объединенных в данный кластер.
[193] Возможны ситуации, когда графический объект метки пятой точки интереса соприкасается одновременно с графическими объектами сразу в двух или более ячейках. В этом случае объединение может происходить с наиболее близко расположенным графическим символом, причем близость определяется расстоянием от центров масс соответствующих меток точек интереса либо от центров масс соответствующих графических объектов.
[194] В некоторых вариантах воплощения настоящей технологии, сервер 102 может осуществлять повторную кластеризацию точек интереса. Так, например, когда запрос пользователя 120 на предоставление первой точки интереса, второй точки интереса, третьей точки интереса, четвертой точки интереса для показа на карте 200 дополнительно включает в себя получение запроса пользователя 120 на предоставление шестой точки интереса 216, изображенной на Фиг. 5, для показа на карте 200, способ может дополнительно включать определение, имеется ли перекрытие между графическим символом 506, изображенном на Фиг. 5, обозначающим в данном воплощении настоящей технологии первый кластер и графическим символом 216, обозначающим метку шестой точки интереса, и в случае определения перекрытия, способ может обеспечивать включение графического символа 216, обозначающего метку шестой точки интереса в новый графический символ 606, обозначающий первый кластер после объединения предыдущей версии первого кластера 505 с графическим символом 216 шестой метки шестой точки интереса, и размещение графического символа 606, обозначающего первый кластер, в новый центр масс точек, объединенных в первый кластер. Одной из возможных причин перекластеризации может быть то обстоятельство, что предыдущая кластеризация могла повлечь возникновение графических символов более крупных размеров, в результате чего новый графический символ кластера может коснуться графического символа метки точки интереса.
[195] В рамках настоящего описания следует понимать, что везде, где указано получение данных от любого клиентского устройства и/или от любого почтового сервера, и/или от любого другого сервера, может использоваться получение электронного или иного сигнала от соответствующего клиентского устройства (сервера, почтового сервера), а отображение на экране устройства может быть реализовано как подача сигнала экрану, в котором содержится определенная информация, которая в дальнейшем может быть интерпретирована определенными образами, и по меньшей мере частично отображена на экране клиентского устройства. Подача и получение сигнала не везде указаны в рамках настоящего описания для упрощения изложения и облегчения понимания настоящего решения. Сигналы могут передаваться оптическими методами (по волоконно-оптической связи, например), электронными методами (по проводной или беспроводной связи), механическими методами (передача давления, температуры и/или других физических параметров посредством которых возможна передача сигнала).
Изобретение относится к области компьютерной техники. Технический результат заключается в обеспечении организации в кластеры точек интереса, показываемых пользователю на карте на электронном устройстве в виде графических символов. Технический результат достигается за счет получения запроса пользователя на предоставление первой точки интереса, второй точки интереса, третьей точки интереса и четвертой точки интереса для показа на карте, получения метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса, определения на карте местоположения графических символов соответственно метки первой точки интереса, метки второй точки интереса, метки третьей точки интереса и метки четвертой точки интереса, размещения на карте слоя сетки, определения, имеется ли перекрытие между графическим символом, обозначающим метку первой точки интереса, и графическим символом, обозначающим метку второй точки интереса, и объединения графического символа, обозначающего метку первой точки интереса, и графического символа, обозначающего метку второй точки интереса, в первый кластер, и размещения графического символа, обозначающего первый кластер, в центре масс точек, объединенных в первый кластер. 2 н. и 33 з.п. ф-лы, 7 ил.