@basemaps/landing 8.6.0 → 8.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/build/src/__tests__/geojson.test.js +1 -1
  2. package/build/src/__tests__/geojson.test.js.map +1 -1
  3. package/build/src/components/map.d.ts +2 -1
  4. package/build/src/components/map.js +24 -12
  5. package/build/src/components/map.js.map +1 -1
  6. package/build/src/components/map.label.js +1 -0
  7. package/build/src/components/map.label.js.map +1 -1
  8. package/build/src/components/map.switcher.js +17 -2
  9. package/build/src/components/map.switcher.js.map +1 -1
  10. package/build/src/components/terrain.control.d.ts +14 -0
  11. package/build/src/components/terrain.control.js +101 -0
  12. package/build/src/components/terrain.control.js.map +1 -0
  13. package/build/src/config.layer.d.ts +11 -1
  14. package/build/src/config.map.js +8 -1
  15. package/build/src/config.map.js.map +1 -1
  16. package/build/src/tile.matrix.d.ts +1 -0
  17. package/build/src/tile.matrix.js +1 -0
  18. package/build/src/tile.matrix.js.map +1 -1
  19. package/build/tsconfig.tsbuildinfo +1 -1
  20. package/package.json +8 -11
  21. package/dist/android-chrome-192x192.png +0 -0
  22. package/dist/android-chrome-512x512.png +0 -0
  23. package/dist/apple-touch-icon.png +0 -0
  24. package/dist/assets/clear.svg +0 -1
  25. package/dist/assets/fonts/OpenSans-Bold.woff2 +0 -0
  26. package/dist/assets/fonts/OpenSans-Italic.woff2 +0 -0
  27. package/dist/assets/fonts/OpenSans-Light.woff2 +0 -0
  28. package/dist/assets/fonts/OpenSans-Regular.woff2 +0 -0
  29. package/dist/assets/fonts/OpenSans-SemiBold.woff2 +0 -0
  30. package/dist/assets/logo-linz.svg +0 -124
  31. package/dist/assets/logo-nz-govt.svg +0 -196
  32. package/dist/assets/whats_new_updates.svg +0 -1
  33. package/dist/basemaps-card.jpeg +0 -0
  34. package/dist/docs/404.html +0 -2173
  35. package/dist/docs/assets/images/favicon.png +0 -0
  36. package/dist/docs/assets/javascripts/bundle.83f73b43.min.js +0 -16
  37. package/dist/docs/assets/javascripts/bundle.83f73b43.min.js.map +0 -7
  38. package/dist/docs/assets/javascripts/lunr/min/lunr.ar.min.js +0 -1
  39. package/dist/docs/assets/javascripts/lunr/min/lunr.da.min.js +0 -18
  40. package/dist/docs/assets/javascripts/lunr/min/lunr.de.min.js +0 -18
  41. package/dist/docs/assets/javascripts/lunr/min/lunr.du.min.js +0 -18
  42. package/dist/docs/assets/javascripts/lunr/min/lunr.el.min.js +0 -1
  43. package/dist/docs/assets/javascripts/lunr/min/lunr.es.min.js +0 -18
  44. package/dist/docs/assets/javascripts/lunr/min/lunr.fi.min.js +0 -18
  45. package/dist/docs/assets/javascripts/lunr/min/lunr.fr.min.js +0 -18
  46. package/dist/docs/assets/javascripts/lunr/min/lunr.he.min.js +0 -1
  47. package/dist/docs/assets/javascripts/lunr/min/lunr.hi.min.js +0 -1
  48. package/dist/docs/assets/javascripts/lunr/min/lunr.hu.min.js +0 -18
  49. package/dist/docs/assets/javascripts/lunr/min/lunr.hy.min.js +0 -1
  50. package/dist/docs/assets/javascripts/lunr/min/lunr.it.min.js +0 -18
  51. package/dist/docs/assets/javascripts/lunr/min/lunr.ja.min.js +0 -1
  52. package/dist/docs/assets/javascripts/lunr/min/lunr.jp.min.js +0 -1
  53. package/dist/docs/assets/javascripts/lunr/min/lunr.kn.min.js +0 -1
  54. package/dist/docs/assets/javascripts/lunr/min/lunr.ko.min.js +0 -1
  55. package/dist/docs/assets/javascripts/lunr/min/lunr.multi.min.js +0 -1
  56. package/dist/docs/assets/javascripts/lunr/min/lunr.nl.min.js +0 -18
  57. package/dist/docs/assets/javascripts/lunr/min/lunr.no.min.js +0 -18
  58. package/dist/docs/assets/javascripts/lunr/min/lunr.pt.min.js +0 -18
  59. package/dist/docs/assets/javascripts/lunr/min/lunr.ro.min.js +0 -18
  60. package/dist/docs/assets/javascripts/lunr/min/lunr.ru.min.js +0 -18
  61. package/dist/docs/assets/javascripts/lunr/min/lunr.sa.min.js +0 -1
  62. package/dist/docs/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +0 -1
  63. package/dist/docs/assets/javascripts/lunr/min/lunr.sv.min.js +0 -18
  64. package/dist/docs/assets/javascripts/lunr/min/lunr.ta.min.js +0 -1
  65. package/dist/docs/assets/javascripts/lunr/min/lunr.te.min.js +0 -1
  66. package/dist/docs/assets/javascripts/lunr/min/lunr.th.min.js +0 -1
  67. package/dist/docs/assets/javascripts/lunr/min/lunr.tr.min.js +0 -18
  68. package/dist/docs/assets/javascripts/lunr/min/lunr.vi.min.js +0 -1
  69. package/dist/docs/assets/javascripts/lunr/min/lunr.zh.min.js +0 -1
  70. package/dist/docs/assets/javascripts/lunr/tinyseg.js +0 -206
  71. package/dist/docs/assets/javascripts/lunr/wordcut.js +0 -6708
  72. package/dist/docs/assets/javascripts/swagger-ui-bundle.js +0 -2
  73. package/dist/docs/assets/javascripts/swagger-ui-bundle.js.map +0 -1
  74. package/dist/docs/assets/javascripts/swagger-ui-standalone-preset.js +0 -2
  75. package/dist/docs/assets/javascripts/swagger-ui-standalone-preset.js.map +0 -1
  76. package/dist/docs/assets/javascripts/workers/search.6ce7567c.min.js +0 -42
  77. package/dist/docs/assets/javascripts/workers/search.6ce7567c.min.js.map +0 -7
  78. package/dist/docs/assets/stylesheets/main.0253249f.min.css +0 -1
  79. package/dist/docs/assets/stylesheets/main.0253249f.min.css.map +0 -1
  80. package/dist/docs/assets/stylesheets/palette.06af60db.min.css +0 -1
  81. package/dist/docs/assets/stylesheets/palette.06af60db.min.css.map +0 -1
  82. package/dist/docs/assets/stylesheets/swagger-ui-dark.css +0 -849
  83. package/dist/docs/assets/stylesheets/swagger-ui.css +0 -3
  84. package/dist/docs/assets/stylesheets/swagger-ui.css.map +0 -1
  85. package/dist/docs/assets/swagger-ui/oauth2-redirect.html +0 -79
  86. package/dist/docs/configuration/index.html +0 -2337
  87. package/dist/docs/deployment/index.html +0 -2288
  88. package/dist/docs/developer-guide/cli-methods/bundle-the-basemaps-assets-archive/index.html +0 -2539
  89. package/dist/docs/developer-guide/cli-methods/bundle-the-basemaps-config-file/index.html +0 -2459
  90. package/dist/docs/developer-guide/index.html +0 -2241
  91. package/dist/docs/developer-guide/run-basemaps-locally/index.html +0 -2471
  92. package/dist/docs/developer-guide/server-methods/serve-basemaps-with-bundled-config-file/index.html +0 -2469
  93. package/dist/docs/developer-guide/server-methods/serve-basemaps-with-collection-of-geotiff-files/index.html +0 -2358
  94. package/dist/docs/examples/_overview/index.html +0 -2226
  95. package/dist/docs/examples/index.leaflet.xyz.3857.html +0 -38
  96. package/dist/docs/examples/index.maplibre.opacity.3857.html +0 -215
  97. package/dist/docs/examples/index.maplibre.vector.3857.html +0 -45
  98. package/dist/docs/examples/leaflet.xyz.3857/index.html +0 -2260
  99. package/dist/docs/examples/maplibre.opacity.3857/index.html +0 -2437
  100. package/dist/docs/examples/maplibre.vector.3857/index.html +0 -2267
  101. package/dist/docs/index.css +0 -3
  102. package/dist/docs/index.html +0 -2497
  103. package/dist/docs/linz-motif.svg +0 -124
  104. package/dist/docs/operator-guide/cog-quality/index.html +0 -2477
  105. package/dist/docs/operator-guide/empty-tiles/index.html +0 -2347
  106. package/dist/docs/operator-guide/gebco/index.html +0 -2312
  107. package/dist/docs/operator-guide/index.html +0 -2215
  108. package/dist/docs/operator-guide/quick-start/index.html +0 -2460
  109. package/dist/docs/operator-guide/relief-shade/index.html +0 -2327
  110. package/dist/docs/operator-guide/static/2023-06-26-gisborne-2023.png +0 -0
  111. package/dist/docs/operator-guide/static/projection_beehive_fakenztm2000.webp +0 -0
  112. package/dist/docs/operator-guide/static/projection_beehive_nztm2000quad.webp +0 -0
  113. package/dist/docs/operator-guide/static/projection_nztm2000quad_0_0_0.webp +0 -0
  114. package/dist/docs/operator-guide/static/quality__005_006_0_bilinear.webp +0 -0
  115. package/dist/docs/operator-guide/static/quality__005_006_0_lanczos.webp +0 -0
  116. package/dist/docs/operator-guide/static/quality__i6.bilinear.webp +0 -0
  117. package/dist/docs/operator-guide/static/quality__i6.cubic.webp +0 -0
  118. package/dist/docs/operator-guide/static/quality__i6.lanczos.webp +0 -0
  119. package/dist/docs/operator-guide/static/quality__resampling-overview.webp +0 -0
  120. package/dist/docs/operator-guide/static/quick-start__layers.png +0 -0
  121. package/dist/docs/operator-guide/static/relief__aerial.webp +0 -0
  122. package/dist/docs/operator-guide/static/relief__base.webp +0 -0
  123. package/dist/docs/operator-guide/static/relief__darken.webp +0 -0
  124. package/dist/docs/operator-guide/static/relief__lighten.webp +0 -0
  125. package/dist/docs/operator-guide/texture-shade/index.html +0 -2370
  126. package/dist/docs/operator-guide/xyz-projection/index.html +0 -2375
  127. package/dist/docs/quick-start/index.html +0 -2228
  128. package/dist/docs/sitemap.xml +0 -219
  129. package/dist/docs/sitemap.xml.gz +0 -0
  130. package/dist/docs/static/basemaps-service.png +0 -0
  131. package/dist/docs/static/tile-resize.png +0 -0
  132. package/dist/docs/static/workflow-run.png +0 -0
  133. package/dist/docs/user-guide/_get-started/index.html +0 -2463
  134. package/dist/docs/user-guide/api-documentation/index.html +0 -840
  135. package/dist/docs/user-guide/api-documentation/swagger-3b2ee5d5.html +0 -120
  136. package/dist/docs/user-guide/swagger-api.json +0 -393
  137. package/dist/docs/user-guide/technical-documentation/index.html +0 -2860
  138. package/dist/docs/user-guide/use-in-esri-software/how-to-add-emergency-imagery-to-arcgis/index.html +0 -2220
  139. package/dist/docs/user-guide/use-in-esri-software/how-to-add-emergency-imagery-to-arcgis/static/emergency-response-group.png +0 -0
  140. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/index.html +0 -2268
  141. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/basemaps-menu-button.png +0 -0
  142. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/copy-url-apikey.png +0 -0
  143. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/custom-parameters.png +0 -0
  144. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/layer-search.png +0 -0
  145. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/layer-selector.png +0 -0
  146. package/dist/docs/user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/static/move-apikey-info.png +0 -0
  147. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/index.html +0 -2243
  148. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-1-agol-map-viewer.png +0 -0
  149. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-2-layers-panel.png +0 -0
  150. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-3-browse-layers-option.png +0 -0
  151. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-4-agol-option.png +0 -0
  152. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-5-search-box.png +0 -0
  153. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/static/step-6-desired-layer-on-map.png +0 -0
  154. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-basemaps-to-arcgis-online-basemaps/index.html +0 -2229
  155. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-basemaps-to-arcgis-online-basemaps/static/LINZ-basemaps-group.png +0 -0
  156. package/dist/docs/user-guide/use-in-esri-software/how-to-add-linz-basemaps-to-arcgis-online-basemaps/static/basemaps-in-esri-chooser.png +0 -0
  157. package/dist/docs/user-guide/use-in-esri-software/index.html +0 -2217
  158. package/dist/docs/user-guide/working-with-vector-tiles/creation/index.html +0 -2310
  159. package/dist/docs/user-guide/working-with-vector-tiles/creation/inputs/json-schema-file/index.html +0 -2302
  160. package/dist/docs/user-guide/working-with-vector-tiles/index.html +0 -2286
  161. package/dist/docs/user-guide/working-with-vector-tiles/schema/addresses/index.html +0 -2408
  162. package/dist/docs/user-guide/working-with-vector-tiles/schema/aerialways/index.html +0 -2797
  163. package/dist/docs/user-guide/working-with-vector-tiles/schema/boundaries/index.html +0 -2408
  164. package/dist/docs/user-guide/working-with-vector-tiles/schema/buildings/index.html +0 -2571
  165. package/dist/docs/user-guide/working-with-vector-tiles/schema/contours/index.html +0 -2719
  166. package/dist/docs/user-guide/working-with-vector-tiles/schema/dam_lines/index.html +0 -2561
  167. package/dist/docs/user-guide/working-with-vector-tiles/schema/ferries/index.html +0 -2541
  168. package/dist/docs/user-guide/working-with-vector-tiles/schema/land/index.html +0 -7134
  169. package/dist/docs/user-guide/working-with-vector-tiles/schema/parcel_boundaries/index.html +0 -2408
  170. package/dist/docs/user-guide/working-with-vector-tiles/schema/pier_lines/index.html +0 -2541
  171. package/dist/docs/user-guide/working-with-vector-tiles/schema/place_labels/index.html +0 -2428
  172. package/dist/docs/user-guide/working-with-vector-tiles/schema/pois/index.html +0 -2538
  173. package/dist/docs/user-guide/working-with-vector-tiles/schema/public_transport/index.html +0 -2802
  174. package/dist/docs/user-guide/working-with-vector-tiles/schema/sites/index.html +0 -3324
  175. package/dist/docs/user-guide/working-with-vector-tiles/schema/street_labels/index.html +0 -2817
  176. package/dist/docs/user-guide/working-with-vector-tiles/schema/street_polygons/index.html +0 -2684
  177. package/dist/docs/user-guide/working-with-vector-tiles/schema/streets/index.html +0 -3371
  178. package/dist/docs/user-guide/working-with-vector-tiles/schema/water_lines/index.html +0 -3708
  179. package/dist/docs/user-guide/working-with-vector-tiles/schema/water_polygons/index.html +0 -3477
  180. package/dist/docs/user-guide/working-with-vector-tiles/static/labels.png +0 -0
  181. package/dist/docs/user-guide/working-with-vector-tiles/static/topographic.png +0 -0
  182. package/dist/docs/user-guide/working-with-vector-tiles/static/topolite.png +0 -0
  183. package/dist/docs/user-guide/working-with-vector-tiles/styling/index.html +0 -2584
  184. package/dist/docs/user-guide/working-with-vector-tiles/styling/index.maplibre.vector.3857.html +0 -80
  185. package/dist/docs/user-guide/working-with-vector-tiles/styling/static/add-filter.webp +0 -0
  186. package/dist/docs/user-guide/working-with-vector-tiles/styling/static/contours.webp +0 -0
  187. package/dist/docs/user-guide/working-with-vector-tiles/styling/static/modify-paint.webp +0 -0
  188. package/dist/docs/user-guide/working-with-vector-tiles/usage/index.html +0 -2425
  189. package/dist/docs/user-guide/working-with-vector-tiles/usage/index.maplibre.vector.3857.html +0 -22
  190. package/dist/examples/index.html +0 -34
  191. package/dist/examples/index.leaflet.xyz.3857.html +0 -43
  192. package/dist/examples/index.maplibre.compare.3857.html +0 -111
  193. package/dist/examples/index.maplibre.elevation.3857.html +0 -100
  194. package/dist/examples/index.maplibre.opacity.3857.html +0 -218
  195. package/dist/examples/index.maplibre.vector.3857.html +0 -48
  196. package/dist/examples/index.openlayers.attribution.wmts.3857.html +0 -55
  197. package/dist/examples/index.openlayers.wmts.3857.html +0 -49
  198. package/dist/examples/index.openlayers.xyz.3857.html +0 -49
  199. package/dist/favicon-16x16.png +0 -0
  200. package/dist/favicon-32x32.png +0 -0
  201. package/dist/favicon.ico +0 -0
  202. package/dist/index-8.6.0-c101a024188933aa.js +0 -65922
  203. package/dist/index-8.6.0-c5e57c4593cca04a.css +0 -7686
  204. package/dist/index.css +0 -7686
  205. package/dist/index.html +0 -24
  206. package/dist/index.js +0 -65922
  207. package/dist/json-schema/stac-basemaps-extension/1.0/schema.json +0 -144
  208. package/dist/lib/attribution-8.6.0-7e26e43200746f3c.js +0 -10632
  209. package/dist/lib/attribution.js +0 -10632
@@ -1,2375 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en" class="no-js">
4
- <head>
5
-
6
- <meta charset="utf-8">
7
- <meta name="viewport" content="width=device-width,initial-scale=1">
8
-
9
-
10
-
11
- <link rel="canonical" href="http://localhost:8000/docs/operator-guide/xyz-projection/">
12
-
13
-
14
- <link rel="prev" href="../texture-shade/">
15
-
16
-
17
- <link rel="next" href="../../user-guide/_get-started/">
18
-
19
-
20
- <link rel="icon" href="../../assets/images/favicon.png">
21
- <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.5.44">
22
-
23
-
24
-
25
- <title>XYZ and projection math - LINZ Basemaps</title>
26
-
27
-
28
-
29
- <link rel="stylesheet" href="../../assets/stylesheets/main.0253249f.min.css">
30
-
31
-
32
- <link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
46
- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,700,700i%7COpen+Sans+Mono:400,400i,700,700i&display=fallback">
47
- <style>:root{--md-text-font:"Open Sans";--md-code-font:"Open Sans Mono"}</style>
48
-
49
-
50
-
51
- <link rel="stylesheet" href="../../index.css">
52
-
53
- <script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
- <script id="__analytics">function __md_analytics(){function e(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],e("js",new Date),e("config",""),document.addEventListener("DOMContentLoaded",(function(){document.forms.search&&document.forms.search.query.addEventListener("blur",(function(){this.value&&e("event","search",{search_term:this.value})}));document$.subscribe((function(){var t=document.forms.feedback;if(void 0!==t)for(var a of t.querySelectorAll("[type=submit]"))a.addEventListener("click",(function(a){a.preventDefault();var n=document.location.pathname,d=this.getAttribute("data-md-value");e("event","feedback",{page:n,data:d}),t.firstElementChild.disabled=!0;var r=t.querySelector(".md-feedback__note [data-md-value='"+d+"']");r&&(r.hidden=!1)})),t.hidden=!1})),location$.subscribe((function(t){e("config","",{page_path:t.pathname})}))}));var t=document.createElement("script");t.async=!0,t.src="https://www.googletagmanager.com/gtag/js?id=",document.getElementById("__analytics").insertAdjacentElement("afterEnd",t)}</script>
63
-
64
- <script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
65
-
66
-
67
-
68
-
69
-
70
- </head>
71
-
72
-
73
-
74
-
75
-
76
-
77
-
78
-
79
-
80
- <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
81
-
82
-
83
- <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
84
- <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
85
- <label class="md-overlay" for="__drawer"></label>
86
- <div data-md-component="skip">
87
-
88
-
89
- <a href="#xyz-and-projection-math" class="md-skip">
90
- Skip to content
91
- </a>
92
-
93
- </div>
94
- <div data-md-component="announce">
95
-
96
- </div>
97
-
98
-
99
-
100
-
101
-
102
-
103
- <header class="md-header md-header--shadow" data-md-component="header">
104
- <nav class="md-header__inner md-grid" aria-label="Header">
105
- <a href="../.." title="LINZ Basemaps" class="md-header__button md-logo" aria-label="LINZ Basemaps" data-md-component="logo">
106
-
107
- <img src="../../linz-motif.svg" alt="logo">
108
-
109
- </a>
110
- <label class="md-header__button md-icon" for="__drawer">
111
-
112
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
113
- </label>
114
- <div class="md-header__title" data-md-component="header-title">
115
- <div class="md-header__ellipsis">
116
- <div class="md-header__topic">
117
- <span class="md-ellipsis">
118
- LINZ Basemaps
119
- </span>
120
- </div>
121
- <div class="md-header__topic" data-md-component="header-topic">
122
- <span class="md-ellipsis">
123
-
124
- XYZ and projection math
125
-
126
- </span>
127
- </div>
128
- </div>
129
- </div>
130
-
131
-
132
- <form class="md-header__option" data-md-component="palette">
133
-
134
-
135
-
136
-
137
- <input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_0">
138
-
139
- <label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_1" hidden>
140
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
141
- </label>
142
-
143
-
144
-
145
-
146
-
147
- <input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_1">
148
-
149
- <label class="md-header__button md-icon" title="Switch to light mode" for="__palette_0" hidden>
150
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
151
- </label>
152
-
153
-
154
- </form>
155
-
156
-
157
-
158
- <script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
159
-
160
-
161
-
162
-
163
- <div class="md-header__source">
164
- <a href="https://github.com/linz/basemaps" title="Go to repository" class="md-source" data-md-component="source">
165
- <div class="md-source__icon md-icon">
166
-
167
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
168
- </div>
169
- <div class="md-source__repository">
170
- GitHub
171
- </div>
172
- </a>
173
- </div>
174
-
175
- </nav>
176
-
177
- </header>
178
-
179
- <div class="md-container" data-md-component="container">
180
-
181
-
182
-
183
-
184
-
185
-
186
- <main class="md-main" data-md-component="main">
187
- <div class="md-main__inner md-grid">
188
-
189
-
190
-
191
- <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
192
- <div class="md-sidebar__scrollwrap">
193
- <div class="md-sidebar__inner">
194
-
195
-
196
-
197
-
198
- <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
199
- <label class="md-nav__title" for="__drawer">
200
- <a href="../.." title="LINZ Basemaps" class="md-nav__button md-logo" aria-label="LINZ Basemaps" data-md-component="logo">
201
-
202
- <img src="../../linz-motif.svg" alt="logo">
203
-
204
- </a>
205
- LINZ Basemaps
206
- </label>
207
-
208
- <div class="md-nav__source">
209
- <a href="https://github.com/linz/basemaps" title="Go to repository" class="md-source" data-md-component="source">
210
- <div class="md-source__icon md-icon">
211
-
212
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
213
- </div>
214
- <div class="md-source__repository">
215
- GitHub
216
- </div>
217
- </a>
218
- </div>
219
-
220
- <ul class="md-nav__list" data-md-scrollfix>
221
-
222
-
223
-
224
-
225
-
226
-
227
-
228
- <li class="md-nav__item">
229
- <a href="../.." class="md-nav__link">
230
-
231
-
232
- <span class="md-ellipsis">
233
- LINZ Basemaps
234
- </span>
235
-
236
-
237
- </a>
238
- </li>
239
-
240
-
241
-
242
-
243
-
244
-
245
-
246
-
247
-
248
- <li class="md-nav__item">
249
- <a href="../../configuration/" class="md-nav__link">
250
-
251
-
252
- <span class="md-ellipsis">
253
- Configuration
254
- </span>
255
-
256
-
257
- </a>
258
- </li>
259
-
260
-
261
-
262
-
263
-
264
-
265
-
266
-
267
-
268
- <li class="md-nav__item">
269
- <a href="../../deployment/" class="md-nav__link">
270
-
271
-
272
- <span class="md-ellipsis">
273
- Deployment
274
- </span>
275
-
276
-
277
- </a>
278
- </li>
279
-
280
-
281
-
282
-
283
-
284
-
285
-
286
-
287
-
288
- <li class="md-nav__item">
289
- <a href="../../quick-start/" class="md-nav__link">
290
-
291
-
292
- <span class="md-ellipsis">
293
- Quick start guide
294
- </span>
295
-
296
-
297
- </a>
298
- </li>
299
-
300
-
301
-
302
-
303
-
304
-
305
-
306
-
307
-
308
-
309
-
310
-
311
-
312
-
313
-
314
-
315
-
316
-
317
-
318
-
319
-
320
-
321
-
322
-
323
-
324
- <li class="md-nav__item md-nav__item--nested">
325
-
326
-
327
-
328
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
329
-
330
-
331
-
332
- <div class="md-nav__link md-nav__container">
333
- <a href="../../developer-guide/" class="md-nav__link ">
334
-
335
-
336
- <span class="md-ellipsis">
337
- Developer guide
338
- </span>
339
-
340
-
341
- </a>
342
-
343
-
344
- <label class="md-nav__link " for="__nav_5" id="__nav_5_label" tabindex="0">
345
- <span class="md-nav__icon md-icon"></span>
346
- </label>
347
-
348
- </div>
349
-
350
- <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
351
- <label class="md-nav__title" for="__nav_5">
352
- <span class="md-nav__icon md-icon"></span>
353
- Developer guide
354
- </label>
355
- <ul class="md-nav__list" data-md-scrollfix>
356
-
357
-
358
-
359
-
360
-
361
-
362
-
363
-
364
-
365
- <li class="md-nav__item">
366
- <a href="../../developer-guide/run-basemaps-locally/" class="md-nav__link">
367
-
368
-
369
- <span class="md-ellipsis">
370
- How to run basemaps locally
371
- </span>
372
-
373
-
374
- </a>
375
- </li>
376
-
377
-
378
-
379
-
380
-
381
-
382
-
383
-
384
-
385
-
386
-
387
-
388
-
389
-
390
-
391
-
392
-
393
-
394
-
395
-
396
- <li class="md-nav__item md-nav__item--nested">
397
-
398
-
399
-
400
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_3" >
401
-
402
-
403
- <label class="md-nav__link" for="__nav_5_3" id="__nav_5_3_label" tabindex="0">
404
-
405
-
406
- <span class="md-ellipsis">
407
- Cli methods
408
- </span>
409
-
410
-
411
- <span class="md-nav__icon md-icon"></span>
412
- </label>
413
-
414
- <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_3_label" aria-expanded="false">
415
- <label class="md-nav__title" for="__nav_5_3">
416
- <span class="md-nav__icon md-icon"></span>
417
- Cli methods
418
- </label>
419
- <ul class="md-nav__list" data-md-scrollfix>
420
-
421
-
422
-
423
-
424
-
425
-
426
-
427
- <li class="md-nav__item">
428
- <a href="../../developer-guide/cli-methods/bundle-the-basemaps-assets-archive/" class="md-nav__link">
429
-
430
-
431
- <span class="md-ellipsis">
432
- Bundle the basemaps assets archive
433
- </span>
434
-
435
-
436
- </a>
437
- </li>
438
-
439
-
440
-
441
-
442
-
443
-
444
-
445
-
446
-
447
-
448
- <li class="md-nav__item">
449
- <a href="../../developer-guide/cli-methods/bundle-the-basemaps-config-file/" class="md-nav__link">
450
-
451
-
452
- <span class="md-ellipsis">
453
- Bundle the basemaps config file
454
- </span>
455
-
456
-
457
- </a>
458
- </li>
459
-
460
-
461
-
462
-
463
- </ul>
464
- </nav>
465
-
466
- </li>
467
-
468
-
469
-
470
-
471
-
472
-
473
-
474
-
475
-
476
-
477
-
478
-
479
-
480
-
481
-
482
-
483
-
484
-
485
-
486
-
487
- <li class="md-nav__item md-nav__item--nested">
488
-
489
-
490
-
491
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_4" >
492
-
493
-
494
- <label class="md-nav__link" for="__nav_5_4" id="__nav_5_4_label" tabindex="0">
495
-
496
-
497
- <span class="md-ellipsis">
498
- Server methods
499
- </span>
500
-
501
-
502
- <span class="md-nav__icon md-icon"></span>
503
- </label>
504
-
505
- <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_4_label" aria-expanded="false">
506
- <label class="md-nav__title" for="__nav_5_4">
507
- <span class="md-nav__icon md-icon"></span>
508
- Server methods
509
- </label>
510
- <ul class="md-nav__list" data-md-scrollfix>
511
-
512
-
513
-
514
-
515
-
516
-
517
-
518
- <li class="md-nav__item">
519
- <a href="../../developer-guide/server-methods/serve-basemaps-with-bundled-config-file/" class="md-nav__link">
520
-
521
-
522
- <span class="md-ellipsis">
523
- Serve basemaps using a bundled config file
524
- </span>
525
-
526
-
527
- </a>
528
- </li>
529
-
530
-
531
-
532
-
533
-
534
-
535
-
536
-
537
-
538
-
539
- <li class="md-nav__item">
540
- <a href="../../developer-guide/server-methods/serve-basemaps-with-collection-of-geotiff-files/" class="md-nav__link">
541
-
542
-
543
- <span class="md-ellipsis">
544
- Serve basemaps using a collection of GeoTIFF files
545
- </span>
546
-
547
-
548
- </a>
549
- </li>
550
-
551
-
552
-
553
-
554
- </ul>
555
- </nav>
556
-
557
- </li>
558
-
559
-
560
-
561
-
562
- </ul>
563
- </nav>
564
-
565
- </li>
566
-
567
-
568
-
569
-
570
-
571
-
572
-
573
-
574
-
575
-
576
-
577
-
578
-
579
-
580
-
581
-
582
-
583
-
584
-
585
-
586
-
587
-
588
-
589
- <li class="md-nav__item md-nav__item--nested">
590
-
591
-
592
-
593
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
594
-
595
-
596
- <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
597
-
598
-
599
- <span class="md-ellipsis">
600
- Examples
601
- </span>
602
-
603
-
604
- <span class="md-nav__icon md-icon"></span>
605
- </label>
606
-
607
- <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
608
- <label class="md-nav__title" for="__nav_6">
609
- <span class="md-nav__icon md-icon"></span>
610
- Examples
611
- </label>
612
- <ul class="md-nav__list" data-md-scrollfix>
613
-
614
-
615
-
616
-
617
-
618
-
619
-
620
- <li class="md-nav__item">
621
- <a href="../../examples/_overview/" class="md-nav__link">
622
-
623
-
624
- <span class="md-ellipsis">
625
- Overview
626
- </span>
627
-
628
-
629
- </a>
630
- </li>
631
-
632
-
633
-
634
-
635
-
636
-
637
-
638
-
639
-
640
-
641
- <li class="md-nav__item">
642
- <a href="../../examples/leaflet.xyz.3857/" class="md-nav__link">
643
-
644
-
645
- <span class="md-ellipsis">
646
- Leaflet Raster Map
647
- </span>
648
-
649
-
650
- </a>
651
- </li>
652
-
653
-
654
-
655
-
656
-
657
-
658
-
659
-
660
-
661
-
662
- <li class="md-nav__item">
663
- <a href="../../examples/maplibre.opacity.3857/" class="md-nav__link">
664
-
665
-
666
- <span class="md-ellipsis">
667
- Maplibre Opacity Slider
668
- </span>
669
-
670
-
671
- </a>
672
- </li>
673
-
674
-
675
-
676
-
677
-
678
-
679
-
680
-
681
-
682
-
683
- <li class="md-nav__item">
684
- <a href="../../examples/maplibre.vector.3857/" class="md-nav__link">
685
-
686
-
687
- <span class="md-ellipsis">
688
- Maplibre Vector Map
689
- </span>
690
-
691
-
692
- </a>
693
- </li>
694
-
695
-
696
-
697
-
698
- </ul>
699
- </nav>
700
-
701
- </li>
702
-
703
-
704
-
705
-
706
-
707
-
708
-
709
-
710
-
711
-
712
-
713
-
714
-
715
-
716
-
717
-
718
-
719
-
720
-
721
-
722
-
723
-
724
-
725
-
726
-
727
-
728
-
729
-
730
-
731
-
732
-
733
-
734
-
735
-
736
-
737
- <li class="md-nav__item md-nav__item--active md-nav__item--nested">
738
-
739
-
740
-
741
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" checked>
742
-
743
-
744
-
745
- <div class="md-nav__link md-nav__container">
746
- <a href="../" class="md-nav__link ">
747
-
748
-
749
- <span class="md-ellipsis">
750
- Operator guide
751
- </span>
752
-
753
-
754
- </a>
755
-
756
-
757
- <label class="md-nav__link " for="__nav_7" id="__nav_7_label" tabindex="0">
758
- <span class="md-nav__icon md-icon"></span>
759
- </label>
760
-
761
- </div>
762
-
763
- <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="true">
764
- <label class="md-nav__title" for="__nav_7">
765
- <span class="md-nav__icon md-icon"></span>
766
- Operator guide
767
- </label>
768
- <ul class="md-nav__list" data-md-scrollfix>
769
-
770
-
771
-
772
-
773
-
774
-
775
-
776
-
777
-
778
- <li class="md-nav__item">
779
- <a href="../cog-quality/" class="md-nav__link">
780
-
781
-
782
- <span class="md-ellipsis">
783
- COG Quality
784
- </span>
785
-
786
-
787
- </a>
788
- </li>
789
-
790
-
791
-
792
-
793
-
794
-
795
-
796
-
797
-
798
-
799
- <li class="md-nav__item">
800
- <a href="../empty-tiles/" class="md-nav__link">
801
-
802
-
803
- <span class="md-ellipsis">
804
- Sparse Datasets and empty tiles
805
- </span>
806
-
807
-
808
- </a>
809
- </li>
810
-
811
-
812
-
813
-
814
-
815
-
816
-
817
-
818
-
819
-
820
- <li class="md-nav__item">
821
- <a href="../gebco/" class="md-nav__link">
822
-
823
-
824
- <span class="md-ellipsis">
825
- Gebco re-project to NZTM2000Quad cog file
826
- </span>
827
-
828
-
829
- </a>
830
- </li>
831
-
832
-
833
-
834
-
835
-
836
-
837
-
838
-
839
-
840
-
841
- <li class="md-nav__item">
842
- <a href="../quick-start/" class="md-nav__link">
843
-
844
-
845
- <span class="md-ellipsis">
846
- Running LINZ Basemaps - Quick Start
847
- </span>
848
-
849
-
850
- </a>
851
- </li>
852
-
853
-
854
-
855
-
856
-
857
-
858
-
859
-
860
-
861
-
862
- <li class="md-nav__item">
863
- <a href="../relief-shade/" class="md-nav__link">
864
-
865
-
866
- <span class="md-ellipsis">
867
- Relief shade
868
- </span>
869
-
870
-
871
- </a>
872
- </li>
873
-
874
-
875
-
876
-
877
-
878
-
879
-
880
-
881
-
882
-
883
- <li class="md-nav__item">
884
- <a href="../texture-shade/" class="md-nav__link">
885
-
886
-
887
- <span class="md-ellipsis">
888
- Texture shading
889
- </span>
890
-
891
-
892
- </a>
893
- </li>
894
-
895
-
896
-
897
-
898
-
899
-
900
-
901
-
902
-
903
-
904
-
905
-
906
- <li class="md-nav__item md-nav__item--active">
907
-
908
- <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
909
-
910
-
911
-
912
-
913
-
914
- <label class="md-nav__link md-nav__link--active" for="__toc">
915
-
916
-
917
- <span class="md-ellipsis">
918
- XYZ and projection math
919
- </span>
920
-
921
-
922
- <span class="md-nav__icon md-icon"></span>
923
- </label>
924
-
925
- <a href="./" class="md-nav__link md-nav__link--active">
926
-
927
-
928
- <span class="md-ellipsis">
929
- XYZ and projection math
930
- </span>
931
-
932
-
933
- </a>
934
-
935
-
936
-
937
- <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
938
-
939
-
940
-
941
-
942
-
943
-
944
- <label class="md-nav__title" for="__toc">
945
- <span class="md-nav__icon md-icon"></span>
946
- Table of contents
947
- </label>
948
- <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
949
-
950
- <li class="md-nav__item">
951
- <a href="#background" class="md-nav__link">
952
- <span class="md-ellipsis">
953
- Background
954
- </span>
955
- </a>
956
-
957
- </li>
958
-
959
- <li class="md-nav__item">
960
- <a href="#process" class="md-nav__link">
961
- <span class="md-ellipsis">
962
- Process
963
- </span>
964
- </a>
965
-
966
- </li>
967
-
968
- <li class="md-nav__item">
969
- <a href="#example" class="md-nav__link">
970
- <span class="md-ellipsis">
971
- Example
972
- </span>
973
- </a>
974
-
975
- <nav class="md-nav" aria-label="Example">
976
- <ul class="md-nav__list">
977
-
978
- <li class="md-nav__item">
979
- <a href="#example-code" class="md-nav__link">
980
- <span class="md-ellipsis">
981
- Example Code
982
- </span>
983
- </a>
984
-
985
- </li>
986
-
987
- </ul>
988
- </nav>
989
-
990
- </li>
991
-
992
- </ul>
993
-
994
- </nav>
995
-
996
- </li>
997
-
998
-
999
-
1000
-
1001
- </ul>
1002
- </nav>
1003
-
1004
- </li>
1005
-
1006
-
1007
-
1008
-
1009
-
1010
-
1011
-
1012
-
1013
-
1014
-
1015
-
1016
-
1017
-
1018
-
1019
-
1020
-
1021
-
1022
-
1023
-
1024
-
1025
-
1026
-
1027
-
1028
-
1029
-
1030
- <li class="md-nav__item md-nav__item--nested">
1031
-
1032
-
1033
-
1034
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
1035
-
1036
-
1037
- <label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
1038
-
1039
-
1040
- <span class="md-ellipsis">
1041
- User guide
1042
- </span>
1043
-
1044
-
1045
- <span class="md-nav__icon md-icon"></span>
1046
- </label>
1047
-
1048
- <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
1049
- <label class="md-nav__title" for="__nav_8">
1050
- <span class="md-nav__icon md-icon"></span>
1051
- User guide
1052
- </label>
1053
- <ul class="md-nav__list" data-md-scrollfix>
1054
-
1055
-
1056
-
1057
-
1058
-
1059
-
1060
-
1061
- <li class="md-nav__item">
1062
- <a href="../../user-guide/_get-started/" class="md-nav__link">
1063
-
1064
-
1065
- <span class="md-ellipsis">
1066
- Get started with LINZ Basemaps
1067
- </span>
1068
-
1069
-
1070
- </a>
1071
- </li>
1072
-
1073
-
1074
-
1075
-
1076
-
1077
-
1078
-
1079
-
1080
-
1081
-
1082
- <li class="md-nav__item">
1083
- <a href="../../user-guide/api-documentation/" class="md-nav__link">
1084
-
1085
-
1086
- <span class="md-ellipsis">
1087
- API documentation
1088
- </span>
1089
-
1090
-
1091
- </a>
1092
- </li>
1093
-
1094
-
1095
-
1096
-
1097
-
1098
-
1099
-
1100
-
1101
-
1102
-
1103
- <li class="md-nav__item">
1104
- <a href="../../user-guide/technical-documentation/" class="md-nav__link">
1105
-
1106
-
1107
- <span class="md-ellipsis">
1108
- Technical documentation and specifications
1109
- </span>
1110
-
1111
-
1112
- </a>
1113
- </li>
1114
-
1115
-
1116
-
1117
-
1118
-
1119
-
1120
-
1121
-
1122
-
1123
-
1124
-
1125
-
1126
-
1127
-
1128
-
1129
-
1130
-
1131
-
1132
-
1133
-
1134
-
1135
-
1136
-
1137
-
1138
-
1139
-
1140
-
1141
-
1142
- <li class="md-nav__item md-nav__item--nested">
1143
-
1144
-
1145
-
1146
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4" >
1147
-
1148
-
1149
-
1150
- <div class="md-nav__link md-nav__container">
1151
- <a href="../../user-guide/use-in-esri-software/" class="md-nav__link ">
1152
-
1153
-
1154
- <span class="md-ellipsis">
1155
- Use in Esri software
1156
- </span>
1157
-
1158
-
1159
- </a>
1160
-
1161
-
1162
- <label class="md-nav__link " for="__nav_8_4" id="__nav_8_4_label" tabindex="0">
1163
- <span class="md-nav__icon md-icon"></span>
1164
- </label>
1165
-
1166
- </div>
1167
-
1168
- <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_4_label" aria-expanded="false">
1169
- <label class="md-nav__title" for="__nav_8_4">
1170
- <span class="md-nav__icon md-icon"></span>
1171
- Use in Esri software
1172
- </label>
1173
- <ul class="md-nav__list" data-md-scrollfix>
1174
-
1175
-
1176
-
1177
-
1178
-
1179
-
1180
-
1181
-
1182
-
1183
-
1184
-
1185
-
1186
-
1187
-
1188
-
1189
-
1190
-
1191
-
1192
-
1193
- <li class="md-nav__item md-nav__item--nested">
1194
-
1195
-
1196
-
1197
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4_2" >
1198
-
1199
-
1200
-
1201
- <div class="md-nav__link md-nav__container">
1202
- <a href="../../user-guide/use-in-esri-software/how-to-add-emergency-imagery-to-arcgis/" class="md-nav__link ">
1203
-
1204
-
1205
- <span class="md-ellipsis">
1206
- How to add emergency imagery in ArcGIS
1207
- </span>
1208
-
1209
-
1210
- </a>
1211
-
1212
- </div>
1213
-
1214
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_4_2_label" aria-expanded="false">
1215
- <label class="md-nav__title" for="__nav_8_4_2">
1216
- <span class="md-nav__icon md-icon"></span>
1217
- How to add emergency imagery in ArcGIS
1218
- </label>
1219
- <ul class="md-nav__list" data-md-scrollfix>
1220
-
1221
-
1222
-
1223
- </ul>
1224
- </nav>
1225
-
1226
- </li>
1227
-
1228
-
1229
-
1230
-
1231
-
1232
-
1233
-
1234
-
1235
-
1236
-
1237
-
1238
-
1239
-
1240
-
1241
-
1242
-
1243
-
1244
-
1245
-
1246
-
1247
- <li class="md-nav__item md-nav__item--nested">
1248
-
1249
-
1250
-
1251
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4_3" >
1252
-
1253
-
1254
-
1255
- <div class="md-nav__link md-nav__container">
1256
- <a href="../../user-guide/use-in-esri-software/how-to-add-individual-linz-basemaps-layers-to-arcgis/" class="md-nav__link ">
1257
-
1258
-
1259
- <span class="md-ellipsis">
1260
- How to add individual LINZ Basemap layers to ArcGIS
1261
- </span>
1262
-
1263
-
1264
- </a>
1265
-
1266
- </div>
1267
-
1268
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_4_3_label" aria-expanded="false">
1269
- <label class="md-nav__title" for="__nav_8_4_3">
1270
- <span class="md-nav__icon md-icon"></span>
1271
- How to add individual LINZ Basemap layers to ArcGIS
1272
- </label>
1273
- <ul class="md-nav__list" data-md-scrollfix>
1274
-
1275
-
1276
-
1277
- </ul>
1278
- </nav>
1279
-
1280
- </li>
1281
-
1282
-
1283
-
1284
-
1285
-
1286
-
1287
-
1288
-
1289
-
1290
-
1291
-
1292
-
1293
-
1294
-
1295
-
1296
-
1297
-
1298
-
1299
-
1300
-
1301
- <li class="md-nav__item md-nav__item--nested">
1302
-
1303
-
1304
-
1305
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4_4" >
1306
-
1307
-
1308
-
1309
- <div class="md-nav__link md-nav__container">
1310
- <a href="../../user-guide/use-in-esri-software/how-to-add-linz-aerial-imagery-basemaps-to-arcgis-online/" class="md-nav__link ">
1311
-
1312
-
1313
- <span class="md-ellipsis">
1314
- How to add LINZ aerial imagery Basemaps to ArcGIS Online
1315
- </span>
1316
-
1317
-
1318
- </a>
1319
-
1320
- </div>
1321
-
1322
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_4_4_label" aria-expanded="false">
1323
- <label class="md-nav__title" for="__nav_8_4_4">
1324
- <span class="md-nav__icon md-icon"></span>
1325
- How to add LINZ aerial imagery Basemaps to ArcGIS Online
1326
- </label>
1327
- <ul class="md-nav__list" data-md-scrollfix>
1328
-
1329
-
1330
-
1331
- </ul>
1332
- </nav>
1333
-
1334
- </li>
1335
-
1336
-
1337
-
1338
-
1339
-
1340
-
1341
-
1342
-
1343
-
1344
-
1345
-
1346
-
1347
-
1348
-
1349
-
1350
-
1351
-
1352
-
1353
-
1354
-
1355
- <li class="md-nav__item md-nav__item--nested">
1356
-
1357
-
1358
-
1359
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_4_5" >
1360
-
1361
-
1362
-
1363
- <div class="md-nav__link md-nav__container">
1364
- <a href="../../user-guide/use-in-esri-software/how-to-add-linz-basemaps-to-arcgis-online-basemaps/" class="md-nav__link ">
1365
-
1366
-
1367
- <span class="md-ellipsis">
1368
- How to add LINZ Basemaps to ArcGIS Online Basemaps
1369
- </span>
1370
-
1371
-
1372
- </a>
1373
-
1374
- </div>
1375
-
1376
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_4_5_label" aria-expanded="false">
1377
- <label class="md-nav__title" for="__nav_8_4_5">
1378
- <span class="md-nav__icon md-icon"></span>
1379
- How to add LINZ Basemaps to ArcGIS Online Basemaps
1380
- </label>
1381
- <ul class="md-nav__list" data-md-scrollfix>
1382
-
1383
-
1384
-
1385
- </ul>
1386
- </nav>
1387
-
1388
- </li>
1389
-
1390
-
1391
-
1392
-
1393
- </ul>
1394
- </nav>
1395
-
1396
- </li>
1397
-
1398
-
1399
-
1400
-
1401
-
1402
-
1403
-
1404
-
1405
-
1406
-
1407
-
1408
-
1409
-
1410
-
1411
-
1412
-
1413
-
1414
-
1415
-
1416
-
1417
-
1418
-
1419
-
1420
-
1421
-
1422
-
1423
-
1424
-
1425
- <li class="md-nav__item md-nav__item--nested">
1426
-
1427
-
1428
-
1429
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5" >
1430
-
1431
-
1432
-
1433
- <div class="md-nav__link md-nav__container">
1434
- <a href="../../user-guide/working-with-vector-tiles/" class="md-nav__link ">
1435
-
1436
-
1437
- <span class="md-ellipsis">
1438
- Working with Vector Tiles
1439
- </span>
1440
-
1441
-
1442
- </a>
1443
-
1444
-
1445
- <label class="md-nav__link " for="__nav_8_5" id="__nav_8_5_label" tabindex="0">
1446
- <span class="md-nav__icon md-icon"></span>
1447
- </label>
1448
-
1449
- </div>
1450
-
1451
- <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_5_label" aria-expanded="false">
1452
- <label class="md-nav__title" for="__nav_8_5">
1453
- <span class="md-nav__icon md-icon"></span>
1454
- Working with Vector Tiles
1455
- </label>
1456
- <ul class="md-nav__list" data-md-scrollfix>
1457
-
1458
-
1459
-
1460
-
1461
-
1462
-
1463
-
1464
-
1465
-
1466
-
1467
-
1468
-
1469
-
1470
-
1471
-
1472
-
1473
-
1474
-
1475
-
1476
-
1477
-
1478
- <li class="md-nav__item md-nav__item--nested">
1479
-
1480
-
1481
-
1482
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5_2" >
1483
-
1484
-
1485
-
1486
- <div class="md-nav__link md-nav__container">
1487
- <a href="../../user-guide/working-with-vector-tiles/creation/" class="md-nav__link ">
1488
-
1489
-
1490
- <span class="md-ellipsis">
1491
- Creation
1492
- </span>
1493
-
1494
-
1495
- </a>
1496
-
1497
-
1498
- <label class="md-nav__link " for="__nav_8_5_2" id="__nav_8_5_2_label" tabindex="0">
1499
- <span class="md-nav__icon md-icon"></span>
1500
- </label>
1501
-
1502
- </div>
1503
-
1504
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_5_2_label" aria-expanded="false">
1505
- <label class="md-nav__title" for="__nav_8_5_2">
1506
- <span class="md-nav__icon md-icon"></span>
1507
- Creation
1508
- </label>
1509
- <ul class="md-nav__list" data-md-scrollfix>
1510
-
1511
-
1512
-
1513
-
1514
-
1515
-
1516
-
1517
-
1518
-
1519
-
1520
-
1521
-
1522
-
1523
-
1524
-
1525
-
1526
-
1527
- <li class="md-nav__item md-nav__item--nested">
1528
-
1529
-
1530
-
1531
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5_2_2" >
1532
-
1533
-
1534
- <label class="md-nav__link" for="__nav_8_5_2_2" id="__nav_8_5_2_2_label" tabindex="0">
1535
-
1536
-
1537
- <span class="md-ellipsis">
1538
- Inputs
1539
- </span>
1540
-
1541
-
1542
- <span class="md-nav__icon md-icon"></span>
1543
- </label>
1544
-
1545
- <nav class="md-nav" data-md-level="4" aria-labelledby="__nav_8_5_2_2_label" aria-expanded="false">
1546
- <label class="md-nav__title" for="__nav_8_5_2_2">
1547
- <span class="md-nav__icon md-icon"></span>
1548
- Inputs
1549
- </label>
1550
- <ul class="md-nav__list" data-md-scrollfix>
1551
-
1552
-
1553
-
1554
-
1555
-
1556
-
1557
-
1558
- <li class="md-nav__item">
1559
- <a href="../../user-guide/working-with-vector-tiles/creation/inputs/json-schema-file/" class="md-nav__link">
1560
-
1561
-
1562
- <span class="md-ellipsis">
1563
- JSON Schema File
1564
- </span>
1565
-
1566
-
1567
- </a>
1568
- </li>
1569
-
1570
-
1571
-
1572
-
1573
- </ul>
1574
- </nav>
1575
-
1576
- </li>
1577
-
1578
-
1579
-
1580
-
1581
- </ul>
1582
- </nav>
1583
-
1584
- </li>
1585
-
1586
-
1587
-
1588
-
1589
-
1590
-
1591
-
1592
-
1593
-
1594
-
1595
-
1596
-
1597
-
1598
-
1599
-
1600
-
1601
-
1602
-
1603
-
1604
-
1605
-
1606
-
1607
-
1608
-
1609
-
1610
-
1611
-
1612
-
1613
-
1614
-
1615
-
1616
-
1617
-
1618
-
1619
-
1620
-
1621
-
1622
-
1623
-
1624
-
1625
-
1626
-
1627
-
1628
-
1629
-
1630
-
1631
-
1632
-
1633
-
1634
-
1635
-
1636
-
1637
-
1638
-
1639
- <li class="md-nav__item md-nav__item--nested">
1640
-
1641
-
1642
-
1643
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5_3" >
1644
-
1645
-
1646
- <label class="md-nav__link" for="__nav_8_5_3" id="__nav_8_5_3_label" tabindex="0">
1647
-
1648
-
1649
- <span class="md-ellipsis">
1650
- Schema
1651
- </span>
1652
-
1653
-
1654
- <span class="md-nav__icon md-icon"></span>
1655
- </label>
1656
-
1657
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_5_3_label" aria-expanded="false">
1658
- <label class="md-nav__title" for="__nav_8_5_3">
1659
- <span class="md-nav__icon md-icon"></span>
1660
- Schema
1661
- </label>
1662
- <ul class="md-nav__list" data-md-scrollfix>
1663
-
1664
-
1665
-
1666
-
1667
-
1668
-
1669
-
1670
- <li class="md-nav__item">
1671
- <a href="../../user-guide/working-with-vector-tiles/schema/addresses/" class="md-nav__link">
1672
-
1673
-
1674
- <span class="md-ellipsis">
1675
- addresses
1676
- </span>
1677
-
1678
-
1679
- </a>
1680
- </li>
1681
-
1682
-
1683
-
1684
-
1685
-
1686
-
1687
-
1688
-
1689
-
1690
-
1691
- <li class="md-nav__item">
1692
- <a href="../../user-guide/working-with-vector-tiles/schema/aerialways/" class="md-nav__link">
1693
-
1694
-
1695
- <span class="md-ellipsis">
1696
- aerialways
1697
- </span>
1698
-
1699
-
1700
- </a>
1701
- </li>
1702
-
1703
-
1704
-
1705
-
1706
-
1707
-
1708
-
1709
-
1710
-
1711
-
1712
- <li class="md-nav__item">
1713
- <a href="../../user-guide/working-with-vector-tiles/schema/boundaries/" class="md-nav__link">
1714
-
1715
-
1716
- <span class="md-ellipsis">
1717
- boundaries
1718
- </span>
1719
-
1720
-
1721
- </a>
1722
- </li>
1723
-
1724
-
1725
-
1726
-
1727
-
1728
-
1729
-
1730
-
1731
-
1732
-
1733
- <li class="md-nav__item">
1734
- <a href="../../user-guide/working-with-vector-tiles/schema/buildings/" class="md-nav__link">
1735
-
1736
-
1737
- <span class="md-ellipsis">
1738
- buildings
1739
- </span>
1740
-
1741
-
1742
- </a>
1743
- </li>
1744
-
1745
-
1746
-
1747
-
1748
-
1749
-
1750
-
1751
-
1752
-
1753
-
1754
- <li class="md-nav__item">
1755
- <a href="../../user-guide/working-with-vector-tiles/schema/contours/" class="md-nav__link">
1756
-
1757
-
1758
- <span class="md-ellipsis">
1759
- contours
1760
- </span>
1761
-
1762
-
1763
- </a>
1764
- </li>
1765
-
1766
-
1767
-
1768
-
1769
-
1770
-
1771
-
1772
-
1773
-
1774
-
1775
- <li class="md-nav__item">
1776
- <a href="../../user-guide/working-with-vector-tiles/schema/dam_lines/" class="md-nav__link">
1777
-
1778
-
1779
- <span class="md-ellipsis">
1780
- dam_lines
1781
- </span>
1782
-
1783
-
1784
- </a>
1785
- </li>
1786
-
1787
-
1788
-
1789
-
1790
-
1791
-
1792
-
1793
-
1794
-
1795
-
1796
- <li class="md-nav__item">
1797
- <a href="../../user-guide/working-with-vector-tiles/schema/ferries/" class="md-nav__link">
1798
-
1799
-
1800
- <span class="md-ellipsis">
1801
- ferries
1802
- </span>
1803
-
1804
-
1805
- </a>
1806
- </li>
1807
-
1808
-
1809
-
1810
-
1811
-
1812
-
1813
-
1814
-
1815
-
1816
-
1817
- <li class="md-nav__item">
1818
- <a href="../../user-guide/working-with-vector-tiles/schema/land/" class="md-nav__link">
1819
-
1820
-
1821
- <span class="md-ellipsis">
1822
- land
1823
- </span>
1824
-
1825
-
1826
- </a>
1827
- </li>
1828
-
1829
-
1830
-
1831
-
1832
-
1833
-
1834
-
1835
-
1836
-
1837
-
1838
- <li class="md-nav__item">
1839
- <a href="../../user-guide/working-with-vector-tiles/schema/parcel_boundaries/" class="md-nav__link">
1840
-
1841
-
1842
- <span class="md-ellipsis">
1843
- parcel_boundaries
1844
- </span>
1845
-
1846
-
1847
- </a>
1848
- </li>
1849
-
1850
-
1851
-
1852
-
1853
-
1854
-
1855
-
1856
-
1857
-
1858
-
1859
- <li class="md-nav__item">
1860
- <a href="../../user-guide/working-with-vector-tiles/schema/pier_lines/" class="md-nav__link">
1861
-
1862
-
1863
- <span class="md-ellipsis">
1864
- pier_lines
1865
- </span>
1866
-
1867
-
1868
- </a>
1869
- </li>
1870
-
1871
-
1872
-
1873
-
1874
-
1875
-
1876
-
1877
-
1878
-
1879
-
1880
- <li class="md-nav__item">
1881
- <a href="../../user-guide/working-with-vector-tiles/schema/place_labels/" class="md-nav__link">
1882
-
1883
-
1884
- <span class="md-ellipsis">
1885
- place_labels
1886
- </span>
1887
-
1888
-
1889
- </a>
1890
- </li>
1891
-
1892
-
1893
-
1894
-
1895
-
1896
-
1897
-
1898
-
1899
-
1900
-
1901
- <li class="md-nav__item">
1902
- <a href="../../user-guide/working-with-vector-tiles/schema/pois/" class="md-nav__link">
1903
-
1904
-
1905
- <span class="md-ellipsis">
1906
- pois
1907
- </span>
1908
-
1909
-
1910
- </a>
1911
- </li>
1912
-
1913
-
1914
-
1915
-
1916
-
1917
-
1918
-
1919
-
1920
-
1921
-
1922
- <li class="md-nav__item">
1923
- <a href="../../user-guide/working-with-vector-tiles/schema/public_transport/" class="md-nav__link">
1924
-
1925
-
1926
- <span class="md-ellipsis">
1927
- public_transport
1928
- </span>
1929
-
1930
-
1931
- </a>
1932
- </li>
1933
-
1934
-
1935
-
1936
-
1937
-
1938
-
1939
-
1940
-
1941
-
1942
-
1943
- <li class="md-nav__item">
1944
- <a href="../../user-guide/working-with-vector-tiles/schema/sites/" class="md-nav__link">
1945
-
1946
-
1947
- <span class="md-ellipsis">
1948
- sites
1949
- </span>
1950
-
1951
-
1952
- </a>
1953
- </li>
1954
-
1955
-
1956
-
1957
-
1958
-
1959
-
1960
-
1961
-
1962
-
1963
-
1964
- <li class="md-nav__item">
1965
- <a href="../../user-guide/working-with-vector-tiles/schema/street_labels/" class="md-nav__link">
1966
-
1967
-
1968
- <span class="md-ellipsis">
1969
- street_labels
1970
- </span>
1971
-
1972
-
1973
- </a>
1974
- </li>
1975
-
1976
-
1977
-
1978
-
1979
-
1980
-
1981
-
1982
-
1983
-
1984
-
1985
- <li class="md-nav__item">
1986
- <a href="../../user-guide/working-with-vector-tiles/schema/street_polygons/" class="md-nav__link">
1987
-
1988
-
1989
- <span class="md-ellipsis">
1990
- street_polygons
1991
- </span>
1992
-
1993
-
1994
- </a>
1995
- </li>
1996
-
1997
-
1998
-
1999
-
2000
-
2001
-
2002
-
2003
-
2004
-
2005
-
2006
- <li class="md-nav__item">
2007
- <a href="../../user-guide/working-with-vector-tiles/schema/streets/" class="md-nav__link">
2008
-
2009
-
2010
- <span class="md-ellipsis">
2011
- streets
2012
- </span>
2013
-
2014
-
2015
- </a>
2016
- </li>
2017
-
2018
-
2019
-
2020
-
2021
-
2022
-
2023
-
2024
-
2025
-
2026
-
2027
- <li class="md-nav__item">
2028
- <a href="../../user-guide/working-with-vector-tiles/schema/water_lines/" class="md-nav__link">
2029
-
2030
-
2031
- <span class="md-ellipsis">
2032
- water_lines
2033
- </span>
2034
-
2035
-
2036
- </a>
2037
- </li>
2038
-
2039
-
2040
-
2041
-
2042
-
2043
-
2044
-
2045
-
2046
-
2047
-
2048
- <li class="md-nav__item">
2049
- <a href="../../user-guide/working-with-vector-tiles/schema/water_polygons/" class="md-nav__link">
2050
-
2051
-
2052
- <span class="md-ellipsis">
2053
- water_polygons
2054
- </span>
2055
-
2056
-
2057
- </a>
2058
- </li>
2059
-
2060
-
2061
-
2062
-
2063
- </ul>
2064
- </nav>
2065
-
2066
- </li>
2067
-
2068
-
2069
-
2070
-
2071
-
2072
-
2073
-
2074
-
2075
-
2076
-
2077
-
2078
-
2079
-
2080
-
2081
-
2082
-
2083
-
2084
-
2085
-
2086
-
2087
- <li class="md-nav__item md-nav__item--nested">
2088
-
2089
-
2090
-
2091
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5_4" >
2092
-
2093
-
2094
-
2095
- <div class="md-nav__link md-nav__container">
2096
- <a href="../../user-guide/working-with-vector-tiles/styling/" class="md-nav__link ">
2097
-
2098
-
2099
- <span class="md-ellipsis">
2100
- Styling
2101
- </span>
2102
-
2103
-
2104
- </a>
2105
-
2106
- </div>
2107
-
2108
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_5_4_label" aria-expanded="false">
2109
- <label class="md-nav__title" for="__nav_8_5_4">
2110
- <span class="md-nav__icon md-icon"></span>
2111
- Styling
2112
- </label>
2113
- <ul class="md-nav__list" data-md-scrollfix>
2114
-
2115
-
2116
-
2117
- </ul>
2118
- </nav>
2119
-
2120
- </li>
2121
-
2122
-
2123
-
2124
-
2125
-
2126
-
2127
-
2128
-
2129
-
2130
-
2131
-
2132
-
2133
-
2134
-
2135
-
2136
-
2137
-
2138
-
2139
-
2140
-
2141
- <li class="md-nav__item md-nav__item--nested">
2142
-
2143
-
2144
-
2145
- <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_5_5" >
2146
-
2147
-
2148
-
2149
- <div class="md-nav__link md-nav__container">
2150
- <a href="../../user-guide/working-with-vector-tiles/usage/" class="md-nav__link ">
2151
-
2152
-
2153
- <span class="md-ellipsis">
2154
- Usage
2155
- </span>
2156
-
2157
-
2158
- </a>
2159
-
2160
- </div>
2161
-
2162
- <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_8_5_5_label" aria-expanded="false">
2163
- <label class="md-nav__title" for="__nav_8_5_5">
2164
- <span class="md-nav__icon md-icon"></span>
2165
- Usage
2166
- </label>
2167
- <ul class="md-nav__list" data-md-scrollfix>
2168
-
2169
-
2170
-
2171
- </ul>
2172
- </nav>
2173
-
2174
- </li>
2175
-
2176
-
2177
-
2178
-
2179
- </ul>
2180
- </nav>
2181
-
2182
- </li>
2183
-
2184
-
2185
-
2186
-
2187
- </ul>
2188
- </nav>
2189
-
2190
- </li>
2191
-
2192
-
2193
-
2194
- </ul>
2195
- </nav>
2196
- </div>
2197
- </div>
2198
- </div>
2199
-
2200
-
2201
-
2202
- <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
2203
- <div class="md-sidebar__scrollwrap">
2204
- <div class="md-sidebar__inner">
2205
-
2206
-
2207
- <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
2208
-
2209
-
2210
-
2211
-
2212
-
2213
-
2214
- <label class="md-nav__title" for="__toc">
2215
- <span class="md-nav__icon md-icon"></span>
2216
- Table of contents
2217
- </label>
2218
- <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
2219
-
2220
- <li class="md-nav__item">
2221
- <a href="#background" class="md-nav__link">
2222
- <span class="md-ellipsis">
2223
- Background
2224
- </span>
2225
- </a>
2226
-
2227
- </li>
2228
-
2229
- <li class="md-nav__item">
2230
- <a href="#process" class="md-nav__link">
2231
- <span class="md-ellipsis">
2232
- Process
2233
- </span>
2234
- </a>
2235
-
2236
- </li>
2237
-
2238
- <li class="md-nav__item">
2239
- <a href="#example" class="md-nav__link">
2240
- <span class="md-ellipsis">
2241
- Example
2242
- </span>
2243
- </a>
2244
-
2245
- <nav class="md-nav" aria-label="Example">
2246
- <ul class="md-nav__list">
2247
-
2248
- <li class="md-nav__item">
2249
- <a href="#example-code" class="md-nav__link">
2250
- <span class="md-ellipsis">
2251
- Example Code
2252
- </span>
2253
- </a>
2254
-
2255
- </li>
2256
-
2257
- </ul>
2258
- </nav>
2259
-
2260
- </li>
2261
-
2262
- </ul>
2263
-
2264
- </nav>
2265
- </div>
2266
- </div>
2267
- </div>
2268
-
2269
-
2270
-
2271
- <div class="md-content" data-md-component="content">
2272
- <article class="md-content__inner md-typeset">
2273
-
2274
-
2275
-
2276
-
2277
-
2278
-
2279
-
2280
- <h1 id="xyz-and-projection-math">XYZ and projection math</h1>
2281
- <p><a href="https://github.com/linz/NZTM2000TileMatrixSet">NZTM2000Quad</a> is not supported by many third party tools especially inside the Vector Tile space. Often tools expect tiles to be served as <code>/{z}/{x}/{y}.mvt</code> and assume the projection is <a href="https://docs.ogc.org/is/17-083r2/17-083r2.html#63">WebMercatorQuad</a>.</p>
2282
- <p>Basemaps uses the lack of built in projection information to allow tools to work with NZTM2000Quad tiles without knowing they are in a different tile matrix set.</p>
2283
- <p>This is how basemaps provides <a href="https://epsg.io/2193">NZTM2000 EPSG:2193</a> support to Aerial imagery on https://basemaps.linz.govt.nz using custom projection logic <a href="https://github.com/linz/basemaps/blob/master/packages/landing/src/tile.matrix.ts#L56">basemaps/landing</a></p>
2284
- <h2 id="background">Background</h2>
2285
- <p>Tile mapping services use a <a href="https://docs.ogc.org/is/17-083r2/17-083r2.html">TileMatrixSet</a> to describe where the tiles are meant to be positioned on the globe using a origin point and scale information per zoom level, most web mapping systems assume the tile matrix set is <a href="https://docs.ogc.org/is/17-083r2/17-083r2.html#63">WebMercatorQuad</a>.</p>
2286
- <p>Assuming the target tile matrix set is similar to WebMercatorQuad, which has a square tile grid, with zoom levels increasing at a factor of 2 and starting with a single tile z:0, x:0, y:0 points can be projected into a "fake" version of the tile matrix set and then used with any tool that supports <a href="https://epsg.io/4326">EPSG:4326</a> to <a href="https://epsg.io/3857">EPSG:3857</a> math such as tippecanoe.</p>
2287
- <h2 id="process">Process</h2>
2288
- <p>To create a fake projection from a tile grid the process is</p>
2289
- <ul>
2290
- <li>Take a lat, lon pair (<a href="https://epsg.io/4326">EPSG:4326</a> degrees) and project into the target projection (eg <a href="https://epsg.io/2193">EPSG:2193</a>)</li>
2291
- <li>Take the target x,y pair (<a href="https://epsg.io/2193">EPSG:2193</a> metres) and project where in the tile grid the point would be located (px)</li>
2292
- <li>Take the x,y pixels pair and assume it is now a WebMercatorQuad tile then project it to <a href="https://epsg.io/3857">EPSG:3857</a></li>
2293
- <li>Take the x,y (<a href="https://epsg.io/3857">EPSG:3857</a> metres) and project it into lat, lon (<a href="https://epsg.io/4326">EPSG:4326</a>)</li>
2294
- </ul>
2295
- <p>The point is now in the fake projection and can be combined with applications that consume XYZ tiles</p>
2296
- <h2 id="example">Example</h2>
2297
- <p>To convert an example point, such as the <a href="https://en.wikipedia.org/wiki/Beehive_(New_Zealand)">Beehive</a> is located at <code>-41.2784°</code>, <code>174.7767°</code> (<a href="https://epsg.io/4326">EPSG:4326</a>) <img alt="Beehive NZTM2000Quad" src="../static/projection_beehive_nztm2000quad.webp" /></p>
2298
- <p>Converting to <a href="https://epsg.io/2193">NZTM2000 EPSG:2193</a> <code>x: 1748795.82...</code>, <code>y: 5428814.899...</code></p>
2299
- <p>Using NZTM2000Quad to convert to pixel cooridantes of tile z:0, x:0, y:0 yields <code>x:128.0001..., y:127.999...</code></p>
2300
- <p><img alt="Beehive NZTM2000Quad" src="../static/projection_nztm2000quad_0_0_0.webp" /></p>
2301
- <p>converting to metres EPSG:3857 x: <code>21.883...</code>, y: <code>7.2815...</code> and then into lat,lon (<a href="https://epsg.io/4326">EPSG:4326</a>) <code>0.0001...</code>, <code>0.0000...</code> as NZTM2000Quad is centred on the beehive the result of lat,lon approx 0,0 is expected!</p>
2302
- <p><img alt="Beehive FakeNZTM2000Quad" src="../static/projection_beehive_fakenztm2000.webp" /></p>
2303
- <p>These lat,lon coordinates can now be used in a system that works with XYZ tiles but assumes that they are in WebMercatorQuad</p>
2304
- <h3 id="example-code">Example Code</h3>
2305
- <p>Using <a href="https://github.com/linz/basemaps/tree/master/packages/geo">@basemaps/geo</a></p>
2306
- <div class="language-typescript highlight"><pre><span></span><code><span id="__span-0-1"><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="k">import</span><span class="w"> </span><span class="p">{</span><span class="nx">NZTM2000QuadTms</span><span class="p">,</span><span class="w"> </span><span class="nx">GoogleTms</span><span class="p">,</span><span class="w"> </span><span class="nx">Projection</span><span class="p">}</span><span class="w"> </span><span class="kr">from</span><span class="w"> </span><span class="s1">&#39;@basemaps/geo&#39;</span>
2307
- </span><span id="__span-0-2"><a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a>
2308
- </span><span id="__span-0-3"><a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="c1">// Convert to NZTMQuad pixel location</span>
2309
- </span><span id="__span-0-4"><a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a><span class="kd">const</span><span class="w"> </span><span class="nx">nztmXy</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">Projection</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">Nztm2000QuadTms</span><span class="p">).</span><span class="nx">fromWgs84</span><span class="p">([</span><span class="mf">174.7767</span><span class="p">,</span><span class="w"> </span><span class="o">-</span><span class="mf">41.2784</span><span class="p">])</span>
2310
- </span><span id="__span-0-5"><a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a><span class="kd">const</span><span class="w"> </span><span class="nx">nztmPixels</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">Nztm2000QuadTms</span><span class="p">.</span><span class="nx">sourceToPixels</span><span class="p">(</span><span class="nx">nztmXy</span><span class="p">[</span><span class="mf">0</span><span class="p">],</span><span class="w"> </span><span class="nx">nztmXy</span><span class="p">[</span><span class="mf">1</span><span class="p">],</span><span class="mf">0</span><span class="p">)</span>
2311
- </span><span id="__span-0-6"><a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a>
2312
- </span><span id="__span-0-7"><a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a><span class="c1">// Convert from pixels assuming EPSG:3857 WebMercatorQuad</span>
2313
- </span><span id="__span-0-8"><a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a><span class="kd">const</span><span class="w"> </span><span class="nx">googleXy</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">GoogleTms</span><span class="p">.</span><span class="nx">pixelsToSource</span><span class="p">(</span><span class="nx">nztmPixels</span><span class="p">.</span><span class="nx">x</span><span class="p">,</span><span class="w"> </span><span class="nx">nztmPixels</span><span class="p">.</span><span class="nx">y</span><span class="p">,</span><span class="w"> </span><span class="mf">0</span><span class="p">)</span>
2314
- </span><span id="__span-0-9"><a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a><span class="kd">const</span><span class="w"> </span><span class="nx">latLon</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">Projection</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">GoogleTms</span><span class="p">).</span><span class="nx">toWgs84</span><span class="p">([</span><span class="nx">googleXy</span><span class="p">.</span><span class="nx">x</span><span class="p">,</span><span class="w"> </span><span class="nx">googleXy</span><span class="p">.</span><span class="nx">y</span><span class="p">])</span><span class="sb">```</span>
2315
- </span></code></pre></div>
2316
-
2317
-
2318
-
2319
-
2320
-
2321
-
2322
-
2323
-
2324
-
2325
-
2326
-
2327
-
2328
-
2329
-
2330
-
2331
- </article>
2332
- </div>
2333
-
2334
-
2335
- <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
2336
- </div>
2337
-
2338
- </main>
2339
-
2340
- <footer class="md-footer">
2341
-
2342
- <div class="md-footer-meta md-typeset">
2343
- <div class="md-footer-meta__inner md-grid">
2344
- <div class="md-copyright">
2345
-
2346
- <div class="md-copyright__highlight">
2347
- <a href="https://www.linz.govt.nz/copyright">© CC BY 4.0 LINZ</a>
2348
- </div>
2349
-
2350
-
2351
- Made with
2352
- <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
2353
- Material for MkDocs
2354
- </a>
2355
-
2356
- </div>
2357
-
2358
- </div>
2359
- </div>
2360
- </footer>
2361
-
2362
- </div>
2363
- <div class="md-dialog" data-md-component="dialog">
2364
- <div class="md-dialog__inner md-typeset"></div>
2365
- </div>
2366
-
2367
-
2368
- <script id="__config" type="application/json">{"base": "../..", "features": ["navigation.indexes", "content.code.copy"], "search": "../../assets/javascripts/workers/search.6ce7567c.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
2369
-
2370
-
2371
- <script src="../../assets/javascripts/bundle.83f73b43.min.js"></script>
2372
-
2373
-
2374
- </body>
2375
- </html>