13 lines
9.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Provides utilities related to coordinates."><title>maplibre::coords - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-cb6f1f67f1bcd037.css" id="mainThemeStyle"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="maplibre" data-themes="" data-resource-suffix="" data-rustdoc-version="1.73.0 (cc66ad468 2023-10-03)" data-channel="1.73.0" data-search-js="search-6dfdfced5eff6596.js" data-settings-js="settings-de11bff964e9d4e5.js" data-settings-css="settings-8c76f75bfb6bd192.css" data-theme-light-css="light-1596385f77d47ef2.css" data-theme-dark-css="dark-0a43001d3fc2282c.css" data-theme-ayu-css="ayu-fd19013d6ce078bf.css" ><script src="../../static.files/storage-db41da1a38ea3cb8.js"></script><script defer src="../../static.files/main-0795b7d26be81095.js"></script><noscript><link rel="stylesheet" media="(prefers-color-scheme:light)" href="../../static.files/light-1596385f77d47ef2.css"><link rel="stylesheet" media="(prefers-color-scheme:dark)" href="../../static.files/dark-0a43001d3fc2282c.css"><link rel="stylesheet" href="../../static.files/noscript-cffde32267a19fd6.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="logo-container" href="../../maplibre/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2></h2></nav><nav class="sidebar"><a class="logo-container" href="../../maplibre/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Module coords</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#constants">Constants</a></li><li><a href="#functions">Functions</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">maplibre</a>::<wbr><a class="mod" href="#">coords</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/maplibre/coords.rs.html#1-822">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Provides utilities related to coordinates.</p>
</div></details><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.AlignedWorldTileCoords.html" title="struct maplibre::coords::AlignedWorldTileCoords">AlignedWorldTileCoords</a></div><div class="desc docblock-short">An aligned world tile coordinate aligns a world coordinate at a 4x4 tile raster within the
world. The aligned coordinates is defined by the coordinates of the upper left tile in the 4x4
tile raster divided by 2 and rounding to the ceiling.</div></li><li><div class="item-name"><a class="struct" href="struct.InnerCoords.html" title="struct maplibre::coords::InnerCoords">InnerCoords</a></div><div class="desc docblock-short">Within each tile there is a separate coordinate system. Usually this coordinate system is
within <a href="constant.EXTENT.html" title="constant maplibre::coords::EXTENT"><code>EXTENT</code></a>. Therefore, <code>x</code> and <code>y</code> must be within the bounds of <a href="constant.EXTENT.html" title="constant maplibre::coords::EXTENT"><code>EXTENT</code></a>.</div></li><li><div class="item-name"><a class="struct" href="struct.LatLon.html" title="struct maplibre::coords::LatLon">LatLon</a></div></li><li><div class="item-name"><a class="struct" href="struct.Quadkey.html" title="struct maplibre::coords::Quadkey">Quadkey</a></div><div class="desc docblock-short">Represents the position of a node within a quad tree. The first u8 defines the <code>ZoomLevel</code> of the node.
The remaining bytes define which part (north west, south west, south east, north east) of each
subdivision of the quadtree is concerned.</div></li><li><div class="item-name"><a class="struct" href="struct.TileCoords.html" title="struct maplibre::coords::TileCoords">TileCoords</a></div><div class="desc docblock-short">Every tile has tile coordinates. These tile coordinates are also called
<a href="https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames">Slippy map tile names</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.ViewRegion.html" title="struct maplibre::coords::ViewRegion">ViewRegion</a></div><div class="desc docblock-short">Defines a bounding box on a tiled map with a <a href="struct.ZoomLevel.html" title="struct maplibre::coords::ZoomLevel"><code>ZoomLevel</code></a> and a padding.</div></li><li><div class="item-name"><a class="struct" href="struct.WorldCoords.html" title="struct maplibre::coords::WorldCoords">WorldCoords</a></div><div class="desc docblock-short">Actual coordinates within the 3D world. The <code>z</code> value of the [<code>WorldCoors</code>] is not related to
the <code>z</code> value of the [<code>WorldTileCoors</code>]. In the 3D world all tiles are rendered at <code>z</code> values
which are determined only by the render engine and not by the zoom level.</div></li><li><div class="item-name"><a class="struct" href="struct.WorldTileCoords.html" title="struct maplibre::coords::WorldTileCoords">WorldTileCoords</a></div><div class="desc docblock-short">Every tile has tile coordinates. Every tile coordinate can be mapped to a coordinate within
the world. This provides the freedom to map from <a href="https://wiki.openstreetmap.org/wiki/TMS">TMS</a>
to <a href="https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames">Slippy map tile names</a>.</div></li><li><div class="item-name"><a class="struct" href="struct.Zoom.html" title="struct maplibre::coords::Zoom">Zoom</a></div><div class="desc docblock-short"><code>Zoom</code> is an exponential scale that defines the zoom of the camera on the map.
We can derive the <code>ZoomLevel</code> from <code>Zoom</code> by using the <code>[crate::coords::ZOOM_BOUNDS]</code>.</div></li><li><div class="item-name"><a class="struct" href="struct.ZoomLevel.html" title="struct maplibre::coords::ZoomLevel">ZoomLevel</a></div></li></ul><h2 id="constants" class="small-section-header"><a href="#constants">Constants</a></h2><ul class="item-table"><li><div class="item-name"><a class="constant" href="constant.EXTENT.html" title="constant maplibre::coords::EXTENT">EXTENT</a></div></li><li><div class="item-name"><a class="constant" href="constant.EXTENT_SINT.html" title="constant maplibre::coords::EXTENT_SINT">EXTENT_SINT</a></div></li><li><div class="item-name"><a class="constant" href="constant.EXTENT_UINT.html" title="constant maplibre::coords::EXTENT_UINT">EXTENT_UINT</a></div></li><li><div class="item-name"><a class="constant" href="constant.MAX_ZOOM.html" title="constant maplibre::coords::MAX_ZOOM">MAX_ZOOM</a></div></li><li><div class="item-name"><a class="constant" href="constant.TILE_SIZE.html" title="constant maplibre::coords::TILE_SIZE">TILE_SIZE</a></div></li><li><div class="item-name"><a class="constant" href="constant.ZOOM_BOUNDS.html" title="constant maplibre::coords::ZOOM_BOUNDS">ZOOM_BOUNDS</a></div></li></ul><h2 id="functions" class="small-section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.create_zoom_bounds.html" title="fn maplibre::coords::create_zoom_bounds">create_zoom_bounds</a><span title="Restricted Visibility">&nbsp;🔒</span> </div></li></ul></section></div></main></body></html>