>

아래에 다음 알고리즘을 만들려고하지만 어떻게 시작할 수 있는지 잘 모르겠으므로 여기에 코드가 없습니다 :

목표는 표시하는 것입니다 (예 : Google지도의 30 개 매장). 현재 앱에서 Google Maps API를 사용하고 있습니다.

알고리즘 :
확대/축소 수준에 따라 30 개의 다른 상점을 검색하십시오.

예 1 : 확대/축소가 10 인 경우 (도시 확대) 해당 확대/축소에서 30 개의 서로 다른 상점을 표시합니다. 이 상점들은지도와 다른 위도를 포함합니다. (사용자가 현재지도에서보고있는 것을 북쪽, 남쪽, 동쪽 및 서쪽으로 가리는 것이 이상적임)

예 2 : 사용자가 15 단계로 확대하면 (거리 확대/축소) 해당 확대/축소로 30 개의 매장을 표시합니다. 30 개 매장이 아닌 경우 (<30)이 표시됩니다.

도움이 될 것입니다. 더 많은 설명이 필요하면 의견을 말하고 게시물을 수정하겠습니다.

  • 답변 # 1

    <올>

    점포를 표시하기 전에 Jozef의 다음 답변과 같이 "표준"마커를 숨겨야합니다.

    와이즈 비즈 와이즈 비즈

            

    You can do it simply by modification of the map style: Adding a Styled Map

      Create JSON filesrc\main\res\raw\map_style.jsonlike this:

    에지도 스타일 추가
    

            

    [
      {
        featureType: "poi",
        elementType: "labels",
        stylers: [
          {
            visibility: "off"
          }
        ]
      }
    ]
    
    

    Google Places API에서 지역 정보 검색을 사용하고 근처 URL 요청을 통해 관심 장소 목록을 얻을 수 있습니다.

    GoogleMap

    구문 분석해보십시오.

    NB! 주변 URL 요청은 20 개의 장소 만 반환합니다. 더 많은 데이터를로드하려면 googleMap.setMapStyle(MapStyleOptions.loadRawResourceStyle(getContext(), R.raw.map_style)); 의 문자열 값을 사용해야합니다.  응답 태그 및 https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=<LAT_LNG>&types=point_of_interest&radius=<RADIUS_IN_METERS>&sensor=false&key=<YOUR_APP_KEY> 를 통해 전달  다음 요청에 대한 매개 변수 :

    next_page_token
    
    

    pagetoken 의 목록에서 30 개의 상점을 선택할 수 있습니다  또는 다른 필드 또는 다른 사용자 정의 기준. 사용자가 확대/축소를 10에서 15로 변경하면 확대/축소 10에 표시된 모든 상점이 여전히 표시되어야합니다.

    https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=<LAT_LNG>&types=point_of_interest&radius=<RADIUS_IN_METERS>&sensor=false&key=<YOUR_APP_KEY>&pagetoken=<TOKEN_FOR_NEXT_PAGE_FROM_next_page_token_TAG_OF_RESPONSE>

  • 이전 python - csvDicReader ()가 사전 객체를 반환합니까?
  • 다음 javascript - React에서 발송하지 않고 업데이트 된 소품