Coordinate Systems
Two Systems
The platform supports both coordinate systems, with auto-detection:
| System | Range | Detection | Used By |
|---|---|---|---|
| WGS84 geographic | [lng, lat] — values like [145.08, -37.88] | Any |value| > 1 | All 22+ Mappedin malls |
| Normalized | [0, 1] — values like [0.45, 0.72] | All values in [0, 1] | 5 non-Mappedin malls (Abuzz, Jibestream, VisioWeb) |
Geographic Coordinates (Preferred)
All Mappedin malls use geographic coordinates via georef transform (affine transform from pixel space to lat/lng using 3+ control points in the Mappedin map file).
Benefits:
- Seamless floor switching — all floors share the same lat/lng coordinate space, so the same pan position corresponds to the same physical location across floors
- Real-world distances — enables indoor navigation with actual meters
- Mall-wide domain —
computeMallGeographicDomain()computes a unified bounding box across all floors with alignment applied - Aspect ratio from lat/lng — no floor plan image needed;
cos(lat)corrects for latitude distortion
Normalized Coordinates (Legacy)
Only used by malls from parsers that lack georef data:
- Abuzz (World Square, Macquarie Centre) — SVG-based, no georef
- Jibestream (Westfield Sydney) — SVG-based, no georef
- VisioWeb (Westfield WTC, Westfield London) — tile-based, no georef
Each floor is its own [0,1] universe. Pan positions don't correspond across floors. Floor switching resets to fit-all.
Mall-Wide Domain
For geographic malls, computeMallGeographicDomain() computes a single bounding box that encompasses all floors (with per-floor alignment offsets applied). This shared domain (mallVectorDomain) is used as effectiveDomain so all floors render in the same coordinate frame — enabling preserved zoom/pan across floor switches.
For normalized malls, each floor computes its own vectorDomain independently.
Decision: All New Imports Must Use Geographic Coordinates
Any parser that can produce georef data should always do so. Normalized coordinates are only acceptable when the source data truly has no geographic reference points (no control points, no lat/lng in metadata).