ZGConnectCoordinates

Runtime/ZGConnectCoordinates.cs · 221 linija · ZGConnect

Uloga u sustavu

Converts between Unity world-space positions and real-world GPS coordinates. Coordinate chain: Unity (x, y, z) ↕ add / subtract dataset origin offset EPSG:3765 — HTRS96 / Croatia TM (easting, northing in metres) ↕ Transverse Mercator (de)projection WGS84 (latitude, longitude in decimal degrees) The HTRS96 datum is based on GRS80, which is virtually identical to WGS84 for all practical purposes (< 1 m difference over Croatia). Call Configure() once at startup — TerrainStreamingController does this automatically when the CityDataset is loaded.

Uloga: Modul ZGConnect

Dizajnerska obrazloženja: Modul ZGConnectCoordinates izdvojen je radi odvajanja odgovornosti unutar ZG Connect pipeline-a. Implementacija slijedi editor-first pristup s eksplicitnim JSON modelima i determinističkim tile ID-evima u EPSG:3765 sustavu.

ADR-001, ADR-002, ADR-008, ADR-043 Kronologija

Pregled

Converts between Unity world-space positions and real-world GPS coordinates. Coordinate chain: Unity (x, y, z) ↕ add / subtract dataset origin offset EPSG:3765 — HTRS96 / Croatia TM (easting, northing in metres) ↕ Transverse Mercator (de)projection WGS84 (latitude, longitude in decimal degrees) The HTRS96 datum is based on GRS80, which is virtually identical to WGS84 for all practical purposes (< 1 m difference over Croatia). Call Configure() once at startup — TerrainStreamingController does this automatically when the CityDataset is loaded.

Development · Changelog

Metode (4)

public static void Configure(int originX, int originY, float minHeightM)

Linija 45 · klasa ZGConnectCoordinates

EPSG:3765 northing that maps to Unity Z = 0.</summary> public static double OriginNorthing { get; private set; } = 5051000.0; <summary> Real-world elevation (metres above sea level) at Unity Y = 0. Equal to the dataset's global minimum height.

Parametri

ImeOpis
originXTip: int
originYTip: int
minHeightMTip: float

Povratna vrijednost: void — nema povratne vrijednosti.

Algoritam

  1. Izvršava poslovnu logiku metode Configure prema implementaciji u izvorniku.

Side-effecti

Poziva:

Pozivatelji:

public static Vector3 WGS84ToUnity(double lat, double lon, float heightY = 0f)

Linija 69 · klasa ZGConnectCoordinates

Unity world position → (latitude, longitude) in decimal degrees (WGS84).

Parametri

ImeOpis
latTip: double
lonTip: double
0fTip: float heightY =

Povratna vrijednost: Vector3 — povratna vrijednost prema potpisu.

Algoritam

  1. Vraća rezultat pozivatelju nakon obrade.

Side-effecti

Poziva:

Pozivatelji:

public static float UnityYToElevation(float unityY) => unityY + MinHeightMetres;

Linija 82 · klasa ZGConnectCoordinates

WGS84 decimal degrees → Unity world position.

Parametri

ImeOpis
unityYTip: float

Povratna vrijednost: float — povratna vrijednost prema potpisu.

Algoritam

  1. Vraća rezultat pozivatelju nakon obrade.

Side-effecti

Poziva:

Pozivatelji:

public static string Format(double lat, double lon)

Linija 88 · klasa ZGConnectCoordinates

Unity Y value → approximate real-world elevation in metres above sea level. Accurate to ± 1 m across the dataset extent.

Parametri

ImeOpis
latTip: double
lonTip: double

Povratna vrijednost: string — povratna vrijednost prema potpisu.

Algoritam

  1. Vraća rezultat pozivatelju nakon obrade.

Side-effecti

Poziva:

Pozivatelji: