Jak działa Google Earth

Jak działa Google Earth

Google Earth zaczyna się od fotografii - okropnie dużo. Google łączy zdjęcia satelitarne wykonane przez swoich partnerów z bardziej konwencjonalnymi strzałami lotniczymi i drukuje je w jedną ogromną „wirtualną fakturę”, która obejmuje glob. Fotografia zastosowana w tej „warstwie podstawowej” jest różna.Rozdzielczości osiągną nawet 0.15 m na piksel w najbardziej szczegółowych obszarach. Anglia spadła teraz do 0.5 m na piksel, ale Antarktyda jest schwytana dziesiątą tej wierności.

Zdjęcia są regularnie aktualizowane, ponieważ nowi dostawcy lub satelity są dostępne online, ale może to potrwać jeden do trzech lat przed przetworzeniem obrazu i dodawania do warstwy podstawowej. Sprytnym bitem jest to, jak te zdjęcia są mapowane na wirtualny glob na twoim komputerze. Mapowanie Ziemi to niemały wyczyn. Zgodnie z obliczeniami jednego z inżynierów, którzy zbudowali Google Earth, jeśli przechowywałeś tylko jeden piksel danych kolorów dla każdej km kwadratowej powierzchni Ziemi, nadal skończyłbyś 2.Obraz 4 GB mierzący 40 000 x 20 000 pikseli, a to byłoby w stanie rozwiązać tylko funkcje o szerokości 2 km. Żadna karta PC ani karty graficznej nie mogłaby poradzić sobie z czymś tego rozmiaru, a kiedy pamiętasz, że Google Earth musi rozwiązać funkcje mniejsze niż jeden metr, zaczynasz rozumieć skalę pamięci, strumieniowania i przetwarzania.

Jak więc Google Earth to zarządza? Oprogramowanie przyjmuje gigantyczną teksturę warstwy bazowej wielostronnej i wykorzystuje funkcję pochodzącą z MIP-Mapp. Mapowanie MIP powstało we wczesnych dniach grafiki 3D jako sposób na oszczędzanie przepustowości i siły przetwarzania podczas procesu renderowania w czasie rzeczywistym. Kiedy zobaczysz zbliżenie powierzchni MIP, widzisz teksturę w całej jej chwale o wysokiej rozdzielczości. Jednak, gdy ta powierzchnia cofa się w odległość, proces wymienia teksturę na mniej szczegółowych wariantów, zapisując kartę graficzną z rysowania tekstury, której i tak nie zobaczyłbyś poprawnie.

Google Earth robi coś podobnego, używając stosu map MIP reprezentujących powierzchnię Ziemi, jak widać z różnych odległości, i w dowolnym momencie rysując wąską kolumnę tego stosu. Wokół centralnego punktu okna otrzymujesz najwyższą teksturę rozdzielczości po powiększaniu, ale poza tym punktem centralnym inteligentnie wykorzystuje mapy MIP o niższej rozdzielczości w sposób równowagi jakości obrazu i wydajności. Gdy twój punkt widzenia porusza się po planecie, algorytm okaże się, gdzie potrzebujesz największych wirtualnych tekstur i opiera je od serwera do dysku twardego do pamięci systemowej do pamięci tekstury. Zapewnia to w dowolnym momencie tylko najbardziej przydatne poziomy szczegółowości są wysyłane na kartę graficzną.

Podczas gdy tak się dzieje, Google Earth nakłada grafikę wektorową, tekst i bitmapę zawarte w różnych warstwach danych. Te nakładki są kontrolowane przez KML, wariant XML o tej samej strukturze opartej na znacznikach, zagnieżdżonych elementach i atrybutach. KML może określać ikony i etykiety, lokalizacje, a nawet punkty widokowe, i może powiedzieć aplikacji Google Earth, aby nakładała obraz, pobierać dane z internetowej bazy danych lub strony internetowej lub wyświetlić teksturowany obiekt 3D. Funkcje te pozwalają Google zintegrować dane z własnych baz danych wyszukiwania, ale pozwalają również stronom trzecim pracować z własnymi bazami danych lub treści online. Ponieważ KML nie jest ogromnym skokiem dla osób używanych do pracy z XML, umożliwia także zaawansowanym użytkownikom zatrudnienie Google Earth jako podstawy własnych systemów informacji geograficznych, aplikacji lub maski. Patrz http: // Ziemia.Google.com/galeria/indeks.HTML dla niektórych przykładów.