Zrozumienie i korzystanie z trybów wysokości

AltitudeMode to właściwość, która określa położenie elementu mapy w pionie. Określa, czy obiekt jest renderowany względem terenu, względem obiektów nadziemnych (takich jak budynki) czy na bezwzględnej wysokości nad poziomem morza.

AltitudeMode to właściwość, która określa, gdzie elementy dodawane do mapy 3D, takie jak znaczniki, linie łamane, wielokąty i modele, są renderowane względem powierzchni Ziemi. Dodatkowo AltitudeMode określa, gdzie kamera jest ustawiana podczas animacji flyTo i flyAround.

Z tego przewodnika dowiesz się, jak skutecznie korzystać z AltitudeMode, oraz poznasz czynniki, które wpływają na sposób renderowania elementów.

Numeryczne modele terenu

Umiejscowienie elementu jest regulowane przez 2 podstawowe numeryczne modele terenu (NMT) dostępne w interfejsie API:

  • Numeryczny model terenu (NMT) / „Ground”: widok „gołej ziemi” przedstawiający wysokość terenu bez obiektów nadziemnych.
  • Cyfrowy model powierzchni (Digital Surface Model – DSM) / „Mesh”: reprezentacja powierzchni, która obejmuje wysokość terenu oraz obiekty nadziemne, takie jak budynki i drzewa.

Ilustracja poniżej przedstawia różnicę między renderowaniem obszaru miejskiego za pomocą NMT i DSM:

Obraz przedstawiający widoki DTM i DSM wieży Eiffla i Paryża obok siebie

Opcje AltitudeMode

Wybór AltitudeMode określa, jak wartość wysokości elementu (jeśli jest podana) jest interpretowana względem numerycznych modeli terenu.

  • ABSOLUTE: renderuje obiekt względem średniego poziomu morza, obliczonego za pomocą EGM96.
  • CLAMP_TO_GROUND: renderuje obiekt bezpośrednio na NMT (Ground), ignorując podaną wysokość i podążając za terenem.
  • RELATIVE_TO_GROUND: renderuje obiekt względem powierzchni NMT (Ground).
  • RELATIVE_TO_MESH: renderuje obiekt względem DSM (Mesh) – najwyższej powierzchni, w tym gruntu, budynków i wody.

Poniższy przykład pozwala zmienić AltitudeMode linii łamanej, aby zobaczyć, jak różne tryby wpływają na renderowanie linii łamanej na złożonej geometrii w środowisku półmiejskim:

Wartości wysokości w trybach względnych

W przypadku trybów względnych (RELATIVE_TO_GROUND lub RELATIVE_TO_MESH) podana wartość wysokości jest przesunięciem od wybranej powierzchni bazowej, a nie stałą wysokością nad poziomem morza. Na przykład wysokość 100 spowoduje umieszczenie elementu 100 metrów nad NMT lub DSM.

Jeśli dane elementu nie zawierają wysokości, tryb względny, taki jak RELATIVE_TO_MESH, umieści element bezpośrednio na siatce lub powierzchni. W przypadku linii łamanych i wielokątów połączenia między punktami będą jednak liniami prostymi, co może spowodować, że linia będzie przechodzić przez siatkę między punktami, jeśli nie użyjesz interpolacji.

Dalsze kroki

  • Więcej informacji o AltitudeMode, w tym o AltitudeMode i znacznikach, znajdziesz w artykule w Centrum architektury.