문제

Google Earth API를 사용하여 사용자가 위치를 입력 할 수있는 검색 필드를 사용하여 Globe의 간단한 시야를 만들려고합니다. 그들이 Go를 때렸을 때, 지구는 입력 한 위치를 확대 할 것입니다.

나는 그들이 지정한 위치를 똑바로 바라보고 싶다. 다음 코드를 시도했습니다.

var lookAt = ge.createLookAt('');
lookAt.set(point.y, point.x, 600, ge.ALTITUDE_RELATIVE_TO_GROUND, 0, 00, 0);
ge.getView().setAbstractView(lookAt);

그러나 이것은 항상 약간 잘못된 위치로갑니다.

도움이 되었습니까?

해결책

단순히 Point.y와 Point.x가 잘못된 길을 가질 수 있습니까?

// latitude, longitude, altitude, altitudeMode, heading, tilt, range
lookAt.set(point.x, point.y, 600, ge.ALTITUDE_RELATIVE_TO_GROUND, 0, 0, 0);

'사용자가 위치를 입력 할 수있다'고 말할 때 항목을 지오 코딩한다는 뜻입니까? 예를 들어 "New York"또는 "M20 1LL"을 입력하는 사용자는 예를 들어 있습니까? 그렇다면 지오 코딩이 정확한 과학이 아니며 결과가 항상 정확하지는 않다는 것을 알아야합니다 (특히 무료 지오 코딩 서비스가 포함됩니다).

이것이 사실이라면 두 가지 실제 해결책이 있습니다.

1) 정확도를 보장하기 위해 상업 지구 코딩 서비스를 사용하려면 지불하십시오.

2) '키'장소의 미리 컴퓨팅 된 지오 코더 응답이 포함 된 자체 데이터베이스 또는 캐시를 구축하십시오.http://code.google.com/apis/maps/documentation/javaScript/v2/services.html#geocoding_caching

btw 코드는 틸트의 Double Zero (00)를 제외하고 ...

var lookAt = ge.createLookAt('');

// latitude, longitude, altitude, altitudeMode, heading, tilt, range
lookAt.set(point.y, point.x, 600, ge.ALTITUDE_RELATIVE_TO_GROUND, 0, 0, 0);

ge.getView().setAbstractView(lookAt);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top