Google Maps API v2 마커 Anchor 탐색

Google Maps API의 Marker에는 [Anchor]( htps : //에서 ゔぇぺぺrs. 오, ぇ. 코 m / 마 ps / 도쿠 멘 타치 온 / 안 d 로이 d / 레후 렌세 / 코 m / 고오 g ぇ / 안 d 로이 d / gms / 마 ps / 모래 l / 마 케로 p Chion s # Ancho r (f 아 t , float)라는 속성이 있으며 위도 경도와 이미지의 어느 위치를 매핑할지 설정할 수 있습니다.

Marker의 기본 이미지는 잘 보이는 핀처럼 보이지만 기본 Anchor는 0.5f/1.0f입니다. 설정치는, 화상에 대한 「x축의 비율」과 「y축의 비율」로, 말하자면, 「위도 경도의 위치를 ​​화상의, 가로 방향은 정확히 중간, 세로 방향은 최하부에 맞춘다 "라는 것입니다.

Marker.anchor の設定値

아래와 같이 설정값을 변경하면 각각 마커의 표시 위치가 바뀝니다. (Android SDK와 함께 제공되는 Google Maps API v2 샘플을 기반으로 함)

anchor_center_bottom.java
mAdelaide = mMap.addMarker(new MarkerOptions()
    .position(ADELAIDE)
    .title("Adelaide")
    .snippet("Population: 1,213,000")
    .anchor(0.5f, 1.0f)); // 既定値と同じ

anchor_left_top.java
mAdelaide = mMap.addMarker(new MarkerOptions()
    .position(ADELAIDE)
    .title("Adelaide")
    .snippet("Population: 1,213,000")
    .anchor(0.0f, 0.0f)); // 左上

anchor_right_middle.java
mAdelaide = mMap.addMarker(new MarkerOptions()
    .position(ADELAIDE)
    .title("Adelaide")
    .snippet("Population: 1,213,000")
    .anchor(1.0f, 0.5f)); // 右中

Marker.anchor examples

v1 그럼 어땠어?



Google Maps API v1 에서는 ItemizedOverlayboundCenterboundCenterBottom 에 해당하는 기능이군요. 이쪽은 메소드명대로, 「중앙/중심」과 「중앙/하부」밖에 대응하지 않았기 때문에, 보다 유연하게 되었다고 말할 수 있습니다.

빠는거리


  • 처음, anchor 는 픽셀 지정이다, 라고 마음대로 착각하고, 화상의 사이즈를 취득해 고뇨고뇨 하고 있던 것은 비밀.
  • 0.0~1.0의 범위인 것을 잊고, 0~100의 값을 설정하면, 「마커가 전부 사라집니다」
  • 좋은 웹페이지 즐겨찾기