CameraUpdateFactory

공개 최종 클래스 CameraUpdateFactory가 객체를 확장함

지도의 카메라를 변경하는 CameraUpdate 객체를 만드는 메서드가 포함된 클래스입니다. 지도의 카메라를 수정하려면 이 클래스로 만든 CameraUpdate 객체를 사용하여 animateCamera(CameraUpdate), animateCamera(CameraUpdate, GoogleMap.CancelableCallback) 또는 moveCamera(CameraUpdate)를 호출합니다.

예를 들어 지도를 확대하려면 다음 코드를 사용하세요.

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

이 클래스의 메서드를 사용하기 전에 다음 중 하나를 실행하여 이 클래스가 초기화되도록 해야 합니다.

개발자 가이드

자세한 내용은 카메라 및 뷰 개발자 가이드를 참고하세요.

공개 메서드 요약

정적 CameraUpdate
newCameraPosition(CameraPosition cameraPosition)
카메라를 지정된 CameraPosition로 이동하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
newLatLng(LatLng latLng)
화면 중앙을 LatLng 객체로 지정된 위도와 경도로 이동하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
newLatLngBounds(LatLngBounds 경계, int width, int 높이, int 패딩)
지정된 위도/경도 경계가 최대한 큰 확대/축소 수준에서 지정된 크기의 경계 상자 내에서 화면 중앙에 오도록 카메라를 변환하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
newLatLngBounds(LatLngBounds 경계, int 패딩)
지정된 위도/경도 경계가 가능한 가장 큰 확대/축소 수준에서 화면의 중앙에 오도록 카메라를 변환하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
newLatLngZoom(LatLng latLng, 플로팅 확대/축소)
화면 중심을 LatLng 객체로 지정된 위도와 경도로 이동하고 지정된 확대/축소 수준으로 이동하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
scrollBy(플로트 xPixel, 플로팅 yPixel)
x 및 y 방향으로 지정된 픽셀 수만큼 시야의 중심을 이동하여 지도 위로 카메라를 스크롤하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
zoomBy(부동 소수점 수, 포인트 포커스)
현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
zoomBy(부동 소수점 수)
현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
zoomIn()
시점의 높이를 지면에 더 가깝게 이동하여 지도를 확대하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
zoomOut()
시점의 높이를 지면에서 더 멀리 이동하여 지도를 축소하는 CameraUpdate를 반환합니다.
정적 CameraUpdate
zoomTo(플로팅 확대/축소)
카메라 시점을 특정 확대/축소 수준으로 이동하는 CameraUpdate를 반환합니다.

상속받은 메서드 요약

공개 메서드

공개 정적 CameraUpdate newCameraPosition (CameraPosition cameraPosition)

카메라를 지정된 CameraPosition로 이동하는 CameraUpdate를 반환합니다. 실제로 이 작업은 CameraPosition 객체의 위도, 경도, 확대/축소 수준, 방위, 기울기로부터 변환을 생성합니다.

매개변수
cameraPosition
반환 값

공개 정적 CameraUpdate newLatLng (LatLng latLng)

화면 중앙을 LatLng 객체로 지정된 위도와 경도로 이동하는 CameraUpdate를 반환합니다. 그러면 카메라가 LatLng 객체의 중앙에 배치됩니다.

매개변수
latLng 원하는 위도와 경도가 포함된 LatLng 객체
반환 값

공개 정적 CameraUpdate newLatLngBounds (LatLngBounds 경계, int 너비, int 높이, int 패딩)

지정된 위도/경도 경계가 최대한 큰 확대/축소 수준에서 지정된 크기의 경계 상자 내에서 화면 중앙에 오도록 카메라를 변환하는 CameraUpdate를 반환합니다. 추가 패딩을 지정하여 경계 상자의 크기를 추가로 제한할 수 있습니다. 반환된 CameraUpdate의 방위는 0이고 기울기는 0입니다.

인수가 경계 상자의 원하는 크기를 지정하므로 newLatLngBounds(LatLngBounds, int)와 달리 이 메서드에서 반환하는 CameraUpdate를 사용하여 지도의 레이아웃 단계 전에 카메라를 변경할 수 있습니다.

매개변수
bounds 경계 상자에 맞출 영역입니다.
너비 경계 상자 너비 (픽셀)
높이 경계 상자 높이 (픽셀)
패딩 경계 상자의 추가 크기 제한 (픽셀)
반환 값

공개 정적 CameraUpdate newLatLngBounds (LatLngBounds 경계, int 패딩)

지정된 위도/경도 경계가 가능한 가장 큰 확대/축소 수준에서 화면의 중앙에 오도록 카메라를 변환하는 CameraUpdate를 반환합니다. 지도뷰의 가장자리에서 경계 상자를 인셋하기 위해 패딩을 지정할 수 있습니다. 반환된 CameraUpdate의 방위는 0이고 기울기는 0입니다.

지도에서 레이아웃을 진행할 때까지는 이 카메라 업데이트로 카메라를 변경하지 마세요. 이 메서드가 적절한 경계 상자와 확대/축소 수준을 올바르게 판단하려면 지도에 크기가 있어야 합니다. 그러지 않으면 IllegalStateException이 발생합니다. 지도를 사용할 수 있는 것만으로는 충분하지 않습니다. 지도를 포함하는 뷰도 크기가 결정되도록 레이아웃을 거쳐야 합니다. 이것이 발생했는지 확실하지 않으면 대신 newLatLngBounds(LatLngBounds, int, int, int)를 사용하고 지도의 크기를 수동으로 제공하세요.

매개변수
bounds 화면에 표시할 영역
패딩 경계 상자 가장자리와 뷰 가장자리 사이에 남겨두는 공간 (픽셀)입니다. 이 값은 경계 상자의 네 면 모두에 적용됩니다.
반환 값

공개 정적 CameraUpdate newLatLngZoom (LatLng latLng, 플로팅 확대/축소)

화면 중심을 LatLng 객체로 지정된 위도와 경도로 이동하고 지정된 확대/축소 수준으로 이동하는 CameraUpdate를 반환합니다.

매개변수
latLng 원하는 위도와 경도가 포함된 LatLng 객체
원하는 줌레벨(2.0~21.0)로 설정합니다. 이 범위 아래의 값은 2.0으로 설정되고 그보다 높은 값은 21.0으로 설정됩니다. 값을 늘리면 확대됩니다. 모든 영역에 가장 큰 확대/축소 수준의 타일이 있는 것은 아닙니다.
반환 값

공개 정적 CameraUpdate scrollBy (float xPixel, float yPixel)

x 및 y 방향으로 지정된 픽셀 수만큼 시야의 중심을 이동하여 지도 위로 카메라를 스크롤하는 CameraUpdate를 반환합니다.

예:

  • xPixel = 5이고 yPixel = 0인 경우, 시스템은 지도가 왼쪽으로 5픽셀 이동한 것처럼 보이도록 카메라를 이동하여 오른쪽으로 스크롤합니다.
  • xPixel = 0이고 yPixel = 5인 경우 지도가 위쪽으로 5픽셀 이동한 것처럼 보이도록 카메라를 이동하여 아래로 스크롤합니다.

스크롤은 카메라의 현재 방향에 따라 진행됩니다. 예를 들어 카메라의 방향이 90도라면 동쪽이 '위'이고 오른쪽으로 스크롤하면 카메라가 남쪽으로 이동합니다.

매개변수
xPixel 가로로 스크롤할 픽셀 수입니다. 양수 값은 카메라가 현재 방향을 기준으로 오른쪽으로 이동합니다. 음수 값은 현재 방향을 기준으로 카메라를 왼쪽으로 이동합니다.
yPixel 세로로 스크롤할 픽셀 수입니다. 양수 값은 현재 방향을 기준으로 카메라를 아래로 이동합니다. 음수 값은 현재 방향을 기준으로 카메라를 위로 이동합니다.
반환 값

공개 정적 CameraUpdate zoomBy (부동 소수점 수, 포인트 포커스)

현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate를 반환합니다.

초점으로 지정된 지점은 고정된 상태로 유지됩니다. 즉, 확대/축소 프로세스 전과 후에 동일한 위도/경도에 해당합니다.

이 메서드는 확대/축소가 현재 카메라를 기준으로 한다는 점에서 zoomTo(float)와 다릅니다.

예를 들어 LatLng (11.11, 22.22)가 현재 화면 위치 (23, 45)에 있는 경우입니다. 확대/축소 금액과 이 LatLng를 사용하여 이 메서드를 호출한 후에도 이 LatLng의 화면 위치는 여전히 (23, 45)입니다.

매개변수
amount 크기를 변경할 수 있습니다. 양수 값은 지표면에 더 가깝게 확대/축소됨을 나타내고 음수 값은 지표면을 벗어나 확대/축소함을 나타냅니다.
초점 확대/축소 프로세스 후에 고정된 상태로 유지되는 화면의 픽셀 위치입니다. 카메라가 이동하기 전에 해당 픽셀 위치에 있던 위도/경도는 카메라가 이동된 후에도 동일하게 유지됩니다.
반환 값

공개 정적 CameraUpdate zoomBy (부동 소수점 수)

현재 카메라 시점의 확대/축소 수준을 이동하는 CameraUpdate를 반환합니다.

이 메서드는 확대/축소가 현재 카메라를 기준으로 한다는 점에서 zoomTo(float)와 다릅니다.

매개변수
amount 크기를 변경할 수 있습니다. 양수 값은 지표면에 더 가깝게 확대/축소됨을 나타내고 음수 값은 지표면을 벗어나 확대/축소함을 나타냅니다.
반환 값

공개 정적 CameraUpdate zoomIn ()

시점의 높이를 지면에 더 가깝게 이동하여 지도를 확대하는 CameraUpdate를 반환합니다. 확대/축소 증가는 1.0입니다.

반환 값

공개 정적 CameraUpdate zoomOut ()

시점의 높이를 지면에서 더 멀리 이동하여 지도를 축소하는 CameraUpdate를 반환합니다. 확대/축소 증가는 -1.0입니다.

반환 값

공개 정적 CameraUpdate zoomTo (부동 소수점 수 확대/축소)

카메라 시점을 특정 확대/축소 수준으로 이동하는 CameraUpdate를 반환합니다.

매개변수
원하는 줌레벨(2.0~21.0)로 설정합니다. 이 범위 아래의 값은 2.0으로 설정되고 그보다 높은 값은 21.0으로 설정됩니다. 값을 늘리면 확대됩니다. 모든 영역에 가장 큰 확대/축소 수준의 타일이 있는 것은 아닙니다.