From aaae60a95c07a2aa843b3592c464f74d886136d1 Mon Sep 17 00:00:00 2001 From: Austen Adler Date: Wed, 8 Feb 2023 23:28:16 -0500 Subject: [PATCH] Commit initial design workflow document --- .gitignore | 1 + README.adoc | 10 + design-workflow/32g2t7pp.png | Bin 0 -> 214895 bytes design-workflow/DESIGN_WORKFLOW.adoc | 924 +++++++++++++++++++++++++++ 4 files changed, 935 insertions(+) create mode 100644 design-workflow/32g2t7pp.png create mode 100644 design-workflow/DESIGN_WORKFLOW.adoc diff --git a/.gitignore b/.gitignore index ea8c4bf..ae7c358 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /target +/design-workflow/*.svg diff --git a/README.adoc b/README.adoc index 8b13789..ac6e603 100644 --- a/README.adoc +++ b/README.adoc @@ -1 +1,11 @@ +// echo README.adoc | entr sh -c "asciidoctor README.adoc; printf 'Done\n'" +:toc: +:nofooter: +:!webfonts: +// gem install --user rouge +:source-highlighter: rouge // pygments coderay +:rouge-style: molokai +// Enable line numbers for listing blocks +:source-linenums-option: += Doc diff --git a/design-workflow/32g2t7pp.png b/design-workflow/32g2t7pp.png new file mode 100644 index 0000000000000000000000000000000000000000..c021f8d2286e763cb84428b383341e09d03b4b35 GIT binary patch literal 214895 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

_?&=8YC01`lv1S)(k2*n^V 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%0Ae)o@8AbW?+k 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μ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ǫVS<}|xDi6j}{R|Zen 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 NeWj^XrSKu-{{W%|sgwW! literal 0 HcmV?d00001 diff --git a/design-workflow/DESIGN_WORKFLOW.adoc b/design-workflow/DESIGN_WORKFLOW.adoc new file mode 100644 index 0000000..308c850 --- /dev/null +++ b/design-workflow/DESIGN_WORKFLOW.adoc @@ -0,0 +1,924 @@ +// echo DESIGN.adoc | entr sh -c "asciidoctor DESIGN.adoc; printf 'Done\n'" +:toc: +:nofooter: +:!webfonts: +:source-highlighter: rouge +:rouge-style: molokai +// :source-linenums-option: +:stem: + += Design + +++++ + +++++ + +The goal of this document is to walk through how the design was chosen. + +== 10,000 meter view + +This project allows anyone to address ~1 square meter of land by bringing together: + +. Memorizability (the format is encoded like an address; ex: `2891 APPLE SPONGE BALLOON`) +. Accuracy (between `0.73` and `1.52` square meter resolution; no point is too close or too far from any other point) +. Accessible via multiple interfaces, open source, and offline operation + +Using these tricks: + +. Using Hilbert curves to map the 2-dimesnional surface area of earth to a 1-dimentional integer, thanks to Google's link:https://s2geometry.io/[S2 Geometry^] addressing scheme, and the unofficial Rust link:https://lib.rs/crates/s2[s2^] crate +. Encoding the entire space stem:[4.22*10^14] points using a small wordlist so only very common words are used +. Efficiency + +== Goals [[goals]] + +The list is in order of importance + +. Create a memorizable address-like mapping of human-scale. Ex: houses, shops, roads ++ +About 1 square meter points on Earth +. Accessible, open source, and offline. The only requirement of this project should be to have a computing device. +** Provide many user-friendly interfaces for *all* common uses cases +** Decode/encode to standards like UTM and lat/lon +** Small binary, with low minimum CPU requirements +** Minimum (including zero) network traffic if possible +. Optimize memorizability +** Use only common words by using a smaller wordlist +** Map homonyms and singluar/plural words to identical values +. Equally distribute points +.. The internal data structure can, therefore, not be lat/lon directly (see <>) +. Locality (TODO: I don't know if this is a good idea or not) + +=== Non-goals [[non-goals]] + +. By-hand encoding/decoding +** This is a nice feature for Xaddress, but it is not feasable with my algorithm +. Variable-resolution grid size +** It is not important that this algorithm can support higher- or lower-resolution mappings. The resolution is fixed + +== Comparison [[comparison]] + +Yes, this is yet another standard, but I believe it has significant improvements that no other existing algorithm can provide. + +For a detailed comparison, go link:https://wiki.openstreetmap.org/wiki/What3words[here^] instead + +.Comparison with similar algorithms +[%header,cols="h,,,,"] +|=== +| +|this_algorithm +|link:https://what3words.com/[what3words^] +|link:https://xaddress.org/[Xaddress^] +|link:https://maps.google.com/pluscodes/[Plus Codes^]/link:https://en.wikipedia.org/wiki/Open_Location_Code[Open Location Codes^] + +|Format +m|2891 APPLE SPONGE BALLOON +m|///clip.apples.leap +m|7150 MAGICAL PEARL +m|849VCWC8+R9 + +|Open Source +|Yes +|No +|Yes +|Yes + +|Memorizable +footnote:[This is subjective, of course. I am defining this to mean similar enough to an address, which I consider memorizable] +|Yes +|Yes (is shorter than this_algorithm) +|Yes (is shorter than this_algorithm) +|No + +|Small wordlist +footnote:[This is important for a few reasons. +Firstly, smaller wordlist means you can exclusively use very comon words (for example, clicking around in 30 seconds on what3words, link:https://what3words.com/rampage.unanswerable.desirability[`///balaclava.jostles.ghoulish`^] was found as an address. +These words are not commonly used). +Secondly, it is easier to translate the common words to other languages. +Thirdly, it allows plural words and homonyms to be mapped to the same point easily.] +|Yes (Under 5000) +|No (25,000-40,000) +|No (~200k) +|N/A + +|Compact (can be recorded in a small number of bytes) +|No +|No +|No +|Yes + +|Relative Uniform Grid size +footnote:[The varaince in distance between two points is low. +Non-uniform grid size usually comes from mapping linearly to latitude/longitude. +For example, 1deg lon at the equator is a much longer distance than 1deg lon near a pole +] +|Yes (Points range from .73m^2^ to 1.52m^2^) +footnote:[Mappings are uniform in Hilbert space, but variance comes from reprojecting back to Earth's non-spherical surface] +footnote:[This is because a link:https://en.wikipedia.org/wiki/Hilbert_curve[Hilbert curve^] is used to evenly distribute points instead of mapping linearly to latitude/longitude. +See link:https://s2geometry.io/resources/s2cell_statistics[S2 Cell Statistics^] (level 23) for more.] +|? +footnote:[TODO: Does anybody know the answer to this?] +|No +(11 meters at the equator and .1 meters at the poles) +footnote:[Minimum point resolution is lat 0.0001, lon 0.0001. Multiplying the circumference at the equator, stem:[4.0*10^7*.0001/360=11] meters at the equator and the circle around 90deg north 11m in radius, stem:[11*2*3.14*.0001/360=1.9*10^-5] meters (though Xaddress is not addressable here since it is not a country) +] +|N/A? +footnote:[TODO: I don't know] + +|Whole-Earth coverage +|Yes +|Yes +|No +|Yes + +|Encode/decode offline +|Yes +|Yes (closed-source app is required) +|Yes (though no app exists) +|Yes + +|Locality (similar addresses are physically nearby) +|? (This is being considered. Either option is possible) +|No +|No +|? + +|=== + +== Algorithm [[algorithm]] + +The algorithm was selected by thinking through each of these parts in order. + +=== Addressing Scheme [[addressing-scheme]] + +The original idea for creating a new algorithm is the issue with existing, similar projects that map to latitude, longitude. +Mapping linearly to polar coordinates like lat, lon returns a non-uniform distribution of points. + +The arc length of 1° around the equator is + +[stem] +++++ +d_(0 text(°))=d_(text(circumference)) * theta / (360 text(°)) += (4.01*10^7 text(m)) / (360 text(°)) += 1.11*10^5 text(m) +++++ + +While the arc length of 1° at latitude 89.9° is approximately + +[stem] +++++ +d_(89.9 text(°)) += cos(89.9 text(°)) * d_(text(circumference)) * theta / (360 text(°)) += 194 text(m) +++++ + +Any algorithm that is linearly lat/lon-based does not have a uniform distribution of points. + +Xaddress does not address this and what3words created a proprietary algorithm so that more-dense locations have more points. +The aim of this algorithm is to fairly distribute points across the globe, and encode to a reasonable resolution that is as functional or more-functional than what3words and Xaddress. + +The addressing scheme I want to use, in principle, maps Earth's surface to a link:https://en.wikipedia.org/wiki/Hilbert_curve[Hilbert curve^]. +This is done by treating Earth as a perfect sphere, then projecting a Hilbert curve on each of the 6 faces of the bounding box (cube) of the sphere. +A more graphical representation of this Earth Cube can be found on Google's S2 Geometry website link:https://s2geometry.io/resources/earthcube[here^]. +This application only uses the addressing scheme of the S2 geometry library, and no other features; + +Next, the coordinates are reprojected a few times in order to more accurately represent Earth's surface. +Again, all of these come from link:https://s2geometry.io[S2]. +They are described link:https://s2geometry.io/devguide/s2cell_hierarchy#coordinate-systems[here^]. + +.Hilbert curves projected and transformed onto Earth's surface. From link:https://s2.sidewalklabs.com/planetaryview/[sidewalklabs planetary view^] +image::./32g2t7pp.png[Image of Earth with 6 Hilbert curve projections] + +=== Search space [[search-space]] + +S2 addresses map to a cell at a given level. Two cell level candidates were chosen due to their size and average resolution. + +.Statistics of the two candidates for cell levels for this project. More can be seen link:https://s2geometry.io/resources/s2cell_statistics[here^] +|=== +|Level |Min area |Max area |Average area |Number of cells + +|22 +|2.90m^2^ +|6.08m^2^ +|4.83m^2^ +|1.05*10^14^ + +|23 +|0.73m^2^ +|1.52m^2^ +|1.21m^2^ +|4.22*10^14^ + +|=== + +The last column indicates the number of cells that need to be mappable by this algorithm. +That is, I need a format that has values that map to all 1.05*10^14^ or 4.22*10^14^ cells. + +=== Wordlist Size [[wordlist-size]] + +Goal 1 of this project is to make the address memorizable. +Using only digits or letters is not memorizable, and there are already better methods to map to latlon (just use lat/lon if you only want to use numbers; use Plus Codes if you only want to use letters and numbers). + +A wordlist would be a good candidate for memorizability since current addresses are word-based. +Xaddress has a similar idea - map a number and some words together to make a memorizable address. + +In order to find a good wordlist that can map to all cases, a format needs to be selected. +Given some format of known values, the minimum size of the wordlist can be found. + +For example, if I wanted to see how many words I need to support level 22 with a format like `1234 WORD1 WORD2` (4-digit number, then 1 word, then a second word), I could compute + +[stem] +++++ +n_(22) += 1.05*10^14 += 10^5 * n_(text(w)) * n_(text(w)) +++++ + +Where stem:[n_(22)] is the number of words in level 22, stem:[10^5] is the number of possible 4-digit numbers (0000-9999), and stem:[n_(text(w))] is the number of words in the wordlist. +Therefore, the number of words required in a wordlist to support this would be + +[stem] +++++ +1.05*10^14 = 10^5 * n_(text(w)) * n_(text(w)) += 10^5 * n_(text(w))^2 +++++ + +[stem] +++++ +n_(text(w)) = sqrt(1.05*10^14 / 10^5) += 1.025*10^5 +++++ + +I would need a wordlist of 102,500 to support an algorithm like this. +I compare the wordlist sizes for different formats below. + +The general formula is + +[stem] +++++ +n_(text(w)) = (text(total_combinations)/text(num_prefix))^(1/text(num_words)) +++++ + +Where stem:[text(num_prefix)] is the number of number/letter combinations in the prefix and stem:text(total_combinations) is the total numer of results stem:[n_(22)] or stem:[n_(23)]. + +.Comparison of approximate wordlist size for different formats, sorted by wordlist size +[%header,cols="m,,,"] +|=== +|Format |n~23~ (thousand) |n~22~ (thousand) |Consider? + +|999 WORD WORD +|649.62 +|324.04 +|No, wordlist too big + +|(0-999)(A-Z0-9) WORD WORD +|108.27 +|54.01 +|No, wordlist too big + +|(0-999)(A-Z0-9)(A-Z0-9) WORD WORD +|18.04 +|9.00 +|No, wordlist too big + +|(1-128) WORD WORD WORD +|14.88 +|9.36 +|No, restricting numbers to 128 is not worth it + +|999 WORD WORD WORD +|7.50 +|4.72 +|Maybe + +|(1-1024) WORD WORD WORD +|7.44 +|4.68 +|Maybe + +|WORD WORD WORD WORD +|4.53 +|3.20 +|No, this does not look like an address + +|9999 WORD WORD WORD +|3.48 +|2.19 +|Maybe + +|=== + +NOTE: This project will use the `(1-1024) WORD1 WORD2 WORD3` variation (1 number component, and 3 word component). + +It is longer than Xaddress and what3words, but with the tradeoff of having a significantly smaller dictionary than both. +It requires a larger wordlist than the `9999 WORD WORD WORD` variation, but it allows versioning. + +=== Reversibility [[reversibility]] + +Xaddress allows addresses to be encoded as either `WORD1 WORD2 0000` or `0000 WORD2 WORD1`. +This might make more sense in loactions where numbers might come before word portions of addresses. +TODO: I need better reasoning here with examples. + +NOTE: This algorithm will allow exactly two encoding types. +Both `0000 WORD1 WORD2 WORD3` and `WORD3 WORD2 WORD1 0000` formats are equivalent. + +=== Versioning [[versioning]] + +If there is ever any version update, the protocol should be able to support it in some fashion. +Old addresses should be decodable by new decoders and should also be able to report that they cannot decode new versions. + +Therefore, some version identifier should be embedded within the code. + +I believe 2 bits for version information is sufficient. +These versions allow for adding different languages, adding different processing techniques to words, or any other generic change since it is read first. + +NOTE: Least significant bits 11-12 in the number component will be used for versioning when the number component is parsed as a 32-bit unsigned integer. + +For this version, version 0, all three bits will be 0. +For example, the bits responsible for determining the algorithm version of this project for the address `382 WORD WORD WORD` are: + +[source] +---- +# 382 parsed as a 32-bit unsigned integer yields: +0000 0000 0000 0000 0000 0001 0111 1110 +# Version bits are: ^^ +# Data bits are: ^^ ^^^^ ^^^^ + +# Therefore, this address is using version 0 +---- + +=== Locality [[locality]] + +Due to the use of a Hilbert curve, points on the CellID mapping (immediate step before encoding as `999 WORD WORD WORD`), it is posible that nearby addresses can have similiar addresses. +This is similar to the real world where `123 Random Road, Washington D.C.` is close to `222 Random Road, Washington D.C.`. + +This is not always a good idea. +For example, imagine if the wordlist did not have distinct enuogh words. +The address `111 word word word` will have a similar location to `111 words word word`, which may cause confusion, whereas if they were in significantly distant locations, there would be less confusion. + +There are a few options + +[cols=',a,a,a'] +|=== +|Option |Example |Pros |Cons + +|Intentionally scramble addresses to avoid locality +|Knowing that CellID-encoded addresses have locality, Intentionally randomize bit order or word order so that nearby locations intentionally have significantly different addresses. + +`1234 APPLE GRAPE ORANGE` and `1234 SPONGE GREEN FACE` may be close together or may be far apart +|* Users will be used to drastically different addresses, so there will be no confusion for close addresses to be dissimiliar or distant addresses being similar +|* Loses ability for humans to see nearby locations from just looking at the address alone + +|Preserve locality in some components +|`1234 APPLE GRAPE ORANGE` and `1234 SPONGE GREEN ORANGE` are relatively close together because `ORANGE` is equivalent and `GRAPE` and `GREEN` are similar +For example, words 2 and 3 could be analogous to country and state. +|* Allows for some form of at-a-glance distance comparison +|* Might lead to less confusion if close addresses are not always given the similar names + +|Similarity implies locality in all components. +|`1234 APPLE GRAPE ORANGE` and `1234 SPONGE GREEN ORANGE` are somewhat close together because `ORANGE` is equivalent and `GRAPE` and `GREEN` are similar +For example, the digits could be the smallest resolution on a per-adjacent cell basis and word1, word2, and word3 can be analogous to a local city, state, and country respectively +|* Simple implementation - just alphabetize the wordlits +* Allows for rough estimations of closeness +* It might be easier to memorize multiple locations if only some components change for nearby areas +|* (TODO: Confirm) Locality is broken at the prime meridian, so close locations to the prime meridian will have significantly different addresses +* Confusing property of similar addressess indicating closeness, but differing addresses not necessarily indicating distance + +|Sameness implies locality in all components + scramble addresses +|`1234 APPLE GRAPE ORANGE` and `1234 SPONGE GREEN ORANGE` are somewhat close together because `ORANGE` is equivalent, but that is the only equivalent component, so nothing else can be inferred +|* May reduce confusion when trying to memorize close locations (as it may be hard to remember many addresses with very similar, but not the same, words) +* Simple implementation - just randomize the wordlist +* Behaves similarly to addresses in United States where city, state, zip code, and country are all included +* No confusing property of dissimilar addresses not representing nearby locations +|* ? + +|=== + +The domain of each component of the address `0000 WORD1 WORD2 WORD3` is as follows: + +. `0000` - Responsible for the least significant bits in the encoded layout (smallest area) +. `WORD1` +. `WORD2` +. `WORD3` - Responsible for the most significant bits in the encoded layout (largest area) + +NOTE: This algorithm will preserve locality in all components by requiring that sameness implies locality in every component. + +See <> for how this algorithm will implement locality specifically. + +=== Encoded Layout [[encoded-layout]] + +The layout of the encoded address determines what bits map to which parts of the decoded string. + +The CellID is a 64-bit unsigned integer and is the representation directly adjacent to the final address-like encoding. +CellIDs are represented as: + +[source] +---- +Example: Face 2, level 23 + +# Most significant 3 bits are for the face +face_number = 0b010 + +# This algorithm is always level 23 +data_bits = level * 2 = 23 * 2 = 46 + +# The bit after the data bits is always 1 +# All subsequent bits are always 0 + +Bit : 64 48 32 16 1 + : | | | | | + : 01001011101010001011100010010011 1001001100100l001100000000000000 +Face number : ^^^ +Data bits : ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ +Bit after data bits (1) : ^ +All remaining bits (0) : ^^^^^^^^^^^^^^ +---- + +There are 6 faces at the top level encoding, which takes 3 bits to represent. +There are 2 divisions (1 horizontal and 1 vertical division) per level, which take up 2 bits per level + +The number of bits that encode the actual address is therefore + +[stem] +++++ +n_text(total_bits_required) += n_text(face_bits) + n_text(subdivision_bits) += 3 + 2*l +++++ + +Where stem:[l] is the subdivision level, such as 22 or 23. + +Therefore, there are stem:[3+23(2)=49] bits required to represent level 23 and stem:[3+22(2)=47] bits required to represent level 22. + +NOTE: Level 23 will be used for this project, which requires 49 bits to fully represent. +This does not include the <> bits. + +Since this algorithm will only ever use level 23, we know that bit 15 will always be 1 and bits 1-14 will always be 0, so these can be excluded from our encoding/decoding process. + +The only 4 components in this address that can be used to represent a position are the number component and three word components. + +The number component will be parsed as a 32-bit unsigned integer. +For version 0, least significant bits 1-10 will be used for data. +Therefore, stem:[b_text(number)=10] + +[stem] +++++ +49 +=b_text(number) + 3 * b_text(word) +=10 + 3 * b_text(word) +++++ + +[stem] +++++ +b_text(word) +=13 +++++ + +Therefore, each word component needs to represent 13 bits of information, or stem:[2^13=8192] words. + +Using the responsibilities of each component we set in <>, the final layout can be determined. + +NOTE: The layout of our encoding will be: + +(From the example above) + +[source] +---- +All remaining bits (0) : vvvvvvvvvvvvvv +Bit after data bits (1) : v +Data bits : vvvvvvvvvvvvvvvvvvvvvvvvvvvvv vvvvvvvvvvvvvvvvv +Face number : vvv +Bit : 64 48 32 16 1 + : | | | | | + : 01001011101010001011100010010011 1001001100100l001100000000000000 +Not represented : ^^^^^^^^^^^^^^^ +0000 (10 bits) : ^^^^^^^^^^ +WORD1 (13 bits) : ^^^^^^ ^^^^^^^ +WORD2 (13 bits) : ^^^^^^^^^^^^^ +WORD3 (13 bits) : ^^^^^^^^^^^^^ +---- + +Note that this is just what each component is responsible for encoding, but does not specify exactly how to encode the selected bits. + +=== Wordlist Selection [[wordlist-selection]] + +Considerations when designing a wordlist: + +. Word complexity +. Plural vs singular +. Homonyms +. Different language +. Repetition + +=== Implementation [[implementation]] + +The link:https://s2geometry.io/[S2 Geometry^] project addressing scheme is exactly the format we want. +However, I couldn't find a concrete description of the math behind the projections without looking at the source code. +The implementation used in this algorithm cannot change because addresses might not map to the same location if they do. + +Therefore, I will define the algorithm below, so it is independent from S2's link:https://github.com/google/s2geometry/blob/master/src/s2/s2point.h[Point^] and link:https://github.com/google/s2geometry/blob/master/src/s2/s2cell_id.h[CellID^] source code in case S2 ever changes their design, but it will be almost the exact same code as the current implementations. +All credit for the projections should go to the S2 team. + +.TODO +[%header,cols="m,a,"] +|=== +|Name |Format |Description + +|(number, word1, word2, word3) +|number ∈ [1, 9999] + +word1, word2, word3 ∈ wordlist + +len(wordlist) ≅ 2000 +| + +|(cellid) +|cellid ∈ [0, TODO] ∩ ℤ +|Cell id: A 64-bit encoding of a face and a Hilbert curve parameter on that face, as discussed above. +The Hilbert curve parameter implicitly encodes both the position of a cell and its subdivision level. + +|(face, i, j) +|face ∈ [0, 5] ∩ ℤ + +i, j ∈ [0, 2^30^-1] ∩ ℤ + +|Leaf-cell coordinates: The leaf cells are the subsquares that result after 30 levels of Hilbert curve subdivision, consisting of a 2^30^ × 2^30^ array on each face. +stem:[i] and stem:[j] are integers in the range [0, 2^30^-1] that identify a particular leaf cell. +The (i, j) coordinate system is right-handed on every face, and the faces are oriented such that Hilbert curves connect continuously from one face to the next. + +|(face, s, t) +|face ∈ [0, 5] ∩ ℤ + +s, t ∈ [0, 1] ∩ ℝ + +|Cell-space coordinates: stem:[s] and stem:[t] are real numbers in the range [0,1] that identify a point on the given face. +For example, the point stem:[(s, t) = (0.5, 0.5)] corresponds to the center of the cell at level 0. +Cells in (s, t)-coordinates are perfectly square and subdivided around their center point, just like the Hilbert curve construction. + +|(face, u, v) +|face ∈ [0, 5] ∩ ℤ + +u, v ∈ [0, 1] ∩ ℝ + +|Cube-space coordinates: To make the cells at each level more uniform in size after they are projected onto the sphere, we apply a nonlinear transformation of the form stem:[u=f(s)], stem:[v=f(t)] before projecting points onto the sphere. +This function also scales the stem:[(u,v)]-coordinates so that each face covers the biunit square [-1,1]×[-1,1]. +Cells in stem:[(u,v)]-coordinates are rectangular, and are not necessarily subdivided around their center point (because of the nonlinear transformation stem:[f]). + +|(x, y, z) +|x, y, z ∈ [0, 1] ∩ ℝ +|Spherical point: The final S2Point is obtained by projecting the (face, u, v) coordinates onto the unit sphere. +Cells in stem:[(x,y,z)]-coordinates are quadrilaterals bounded by four spherical geodesic edges. + +|(lat, lon) +|lat ∈ [-90, 90] + +lon ∈ [-180, 180] +| + +|=== + +The encoding and decoding code comes from a modified link:https://docs.rs/s2/latest/s2/[S2 Rust^] and link:https://github.com/golang/geo/blob/master/s2/cellid.go[S2 Go^]. +It might seem like duplication, but separating the math from the code allows this algorithm to be replicaed in any language. + +.Encoding process +[%header,cols="2m,5a"] +|=== +|Step |Code + +|(lat, lon) +|Given + +|(x, y, z)/Point +| [source,rust] +---- +fn lat_lon_to_xyz(lat: f64, lon: f64) -> (f64, f64, f64) { + let x = cos(lon) * cos(lat); + let y = sin(lon) * cos(lat); + let z = sin(lat); + + (x, y, z) +} +---- + +|(face, u, v) +| [source,rust] +---- +fn face(x: f64, y: f64, z: f64) -> u8 { + let (x_abs, y_abs, z_abs) = (x.abs(), y.abs(), z.abs()); + let mut id = 0; + let mut value = x; + if y_abs > x_abs { + id = 1; + value = y; + } + if z_abs > value.abs() { + id = 2; + value = z; + } + if value < 0. { + id += 3; + } + id +} + +fn xyz_to_fuv(x: f64, y: f64, z: f64) -> (u8, f64, f64) { + let f: u8 = face(x, y, z); + let (u, v) = match face { + 0 => (y / x, z / x), + 1 => (-x / y, z / y), + 2 => (-x / z, -y / z), + 3 => (z / x, y / x), + 4 => (z / y, -x / y), + 5 => (-y / z, -x / z), + _ => panic!("Face {f} out of bounds"), + }; + + (f, u, v) +} +---- + +|(face, s, t) +| [source,rust] +---- +pub fn u_or_v_to_s_or_t(u_or_v: f64) -> f64 { + if u_or_v >= 0.0 { + 0.5 * (1.0 + 3.0 * u_or_v).sqrt() + } else { + 1.0 - 0.5 * (1.0 - 3.0 * u_or_v).sqrt() + } +} + +fn fuv_to_fst(f: u8, u: u64, v: u64) -> (u8, f64, f64) { + let s = u_or_v_to_s_or_t(u); + let t = u_or_v_to_s_or_t(v); + + (f, s, t) +} + +---- + +|(face, i, j) +| [source,rust] +---- +fn st_to_ij(s: f64) -> u32 { + clamp((MAX_SIZE as f64 * s).floor() as u32, 0, MAX_SIZE_I32 - 1) +} + +fn fst_to_fij(f: u8, s: u64, t: u64) -> (u8, u32, u32) { + let i = st_to_ij(s); + let j = st_to_ij(t); + + (f, i, j) +} +---- + +|(cellid) +| [source,go] +---- +func cellIDFromFaceIJ(f, i, j int) CellID { + // Note that this value gets shifted one bit to the left at the end + // of the function. + n := uint64(f) << (posBits - 1) + // Alternating faces have opposite Hilbert curve orientations; this + // is necessary in order for all faces to have a right-handed + // coordinate system. + bits := f & swapMask + // Each iteration maps 4 bits of "i" and "j" into 8 bits of the Hilbert + // curve position. The lookup table transforms a 10-bit key of the form + // "iiiijjjjoo" to a 10-bit value of the form "ppppppppoo", where the + // letters [ijpo] denote bits of "i", "j", Hilbert curve position, and + // Hilbert curve orientation respectively. + for k := 7; k >= 0; k-- { + mask := (1 << lookupBits) - 1 + bits += ((i >> uint(k*lookupBits)) & mask) << (lookupBits + 2) + bits += ((j >> uint(k*lookupBits)) & mask) << 2 + bits = lookupPos[bits] + n \|= uint64(bits>>2) << (uint(k) * 2 * lookupBits) + bits &= (swapMask \| invertMask) + } + return CellID(n*2 + 1) +} +---- +[source,rust] +---- +fn fij_to_cellid(f: u8, s: u32, t: u32) -> u64 { + let mut n = u64::from(f) << (POS_BITS - 1); + let mut bits = u32::from(f & SWAP_MASK); + + let mut k = 7; + let mask = (1 << LOOKUP_BITS) - 1; + loop { + bits += ((i >> (k * LOOKUP_BITS)) & mask) << (LOOKUP_BITS + 2); + bits += ((j >> (k * LOOKUP_BITS)) & mask) << 2; + bits = LOOKUP_POS[bits as usize] as u32; + n \|= ((bits >> 2) as u64) << ((k * 2 * LOOKUP_BITS) as u64); + bits &= u32::from(SWAP_MASK \| INVERT_MASK); + + if k == 0 { + break; + } + k -= 1; + } + n * 2 + 1 +} +---- + +|(number, word1, word2, word3) +| + +|=== + +.Decoding process +[%header,cols="m,a,"] +|=== +|Step |Formula |Description + +|(number, word1, word2, word3) +|Given +| + +|(cellid) +| +| + +|(face, i, j) +| +| + +|(face, s, t) +| +| + +|(face, u, v) +| +| + +|(x, y, z)/Point +| +| + +|(lat, lon) +| +| + +|=== + + +Sample source code: + +[source,rust] +---- +// Translating lat, lon to this_algorithm + +impl<'a> From<&'a Point> for CellID { + fn from(p: &'a Point) -> Self { + let (f, u, v) = xyz_to_face_uv(&p.0); + let i = st_to_ij(uv_to_st(u)); + let j = st_to_ij(uv_to_st(v)); + CellID::from_face_ij(f, i, j) // Important + } +} +impl<'a> From<&'a LatLng> for CellID { + fn from(ll: &'a LatLng) -> Self { + let p: Point = ll.into(); + Self::from(p) + } +} +impl<'a> From<&'a CellID> for LatLng { + fn from(id: &'a CellID) -> Self { + LatLng::from(Point::from(id)) + } +} +impl<'a> From<&'a LatLng> for Point { + fn from(ll: &'a LatLng) -> Self { + let phi = ll.lat.rad(); + let theta = ll.lng.rad(); + let cosphi = phi.cos(); + Point(Vector { + x: theta.cos() * cosphi, + y: theta.sin() * cosphi, + z: phi.sin(), + }) + } +} +impl<'a> From<&'a CellID> for Point { + fn from(id: &'a CellID) -> Self { + Point(id.raw_point().normalize()) // Important + } +} +struct CellID { + pub fn raw_point(&self) -> Vector { + let (face, si, ti) = self.face_siti(); + face_uv_to_xyz( + face, + st_to_uv(siti_to_st(si as u64)), + st_to_uv(siti_to_st(ti as u64)), + ) + } + fn face_siti(&self) -> (u8, u32, u32) { + let (face, i, j, _) = self.face_ij_orientation(); // <= Important + let delta = if self.is_leaf() { + 1 + } else if (i ^ (self.0 as u32 >> 2)) & 1 != 0 { + 2 + } else { + 0 + }; + (face, 2 * i + delta, 2 * j + delta) + } + pub fn is_leaf(&self) -> bool { + self.0 & 1 != 0 + } +} +---- + +.Helper functions +[source,rust] +---- +pub fn siti_to_st(si: u64) -> f64 { + if si > MAX_SITI { + 1f64 + } else { + (si as f64) / (MAX_SITI as f64) + } +} + +pub fn face_uv_to_xyz(face: u8, u: f64, v: f64) -> Vector { + match face { + 0 => Vector::new(1., u, v), + 1 => Vector::new(-u, 1., v), + 2 => Vector::new(-u, -v, 1.), + 3 => Vector::new(-1., -v, -u), + 4 => Vector::new(v, -1., -u), + 5 => Vector::new(v, u, -1.), + _ => unimplemented!(), + } +} +pub fn st_to_uv(s: f64) -> f64 { + if s >= 0.5 { + (1. / 3.) * (4. * s * s - 1.) + } else { + (1. / 3.) * (1. - 4. * (1. - s) * (1. - s)) + } +} + +pub fn uv_to_st(u: f64) -> f64 { + if u >= 0. { + 0.5 * (1. + 3. * u).sqrt() + } else { + 1. - 0.5 * (1. - 3. * u).sqrt() + } +} + +pub fn xyz_to_face_uv(r: &Vector) -> (u8, f64, f64) { + let f = face(r); + let (u, v) = valid_face_xyz_to_uv(f, r); + (f, u, v) +} + +pub fn valid_face_xyz_to_uv(face: u8, r: &Vector) -> (f64, f64) { +} + +fn st_to_ij(s: f64) -> u32 { + clamp((MAX_SIZE as f64 * s).floor() as u32, 0, MAX_SIZE_I32 - 1) +} +---- + +== Interfaces [[interfaces]] + +Goal 2 of this project is to provide many interfaces that are easy to use. + +All interfaces *must* use minimum resources (network, CPU, RAM), so they can run on virtually any device. + +.Some Ideas for Interfaces +. Command line +** `this_algorithm -e -90,180` \=> `\...` +** Useful for developers, test data generation, etc. +** Easiest to write + +. HTTP API +** Simple HTTP endpoint for JSON/XML encoding/decoding +** Will not require accounts and will not be resource intensive + +. JavaScript/HTML File +** Downloadable `.html` file with embedded CSS and JavaScript that can encode/decode offline + +. Offline PWA +** Useful for smartphones +** Should work offline if possible, but also interface with Google Maps/JAWG/OSM if there is internet connectivity +** Allows users to translate any link (Google Maps/OSM/Apple Maps) to this_algorithm as a share target + +. OSMAnd/Other existing mapping applications +* Requires input from these applications + +++++ + +++++