libmorton
libmorton copied to clipboard
C++ header-only library with methods to efficiently encode/decode Morton codes in/from 2D/3D coordinates
Hi, is there a benchmark comparing libmorton with this Golang optimizations? https://mmcloughlin.com/posts/geohash-assembly ([soruce](https://github.com/mmcloughlin/deconstructedgeohash/blob/master/geohash.go)).
The function `findFirstSetBitZeroIdx()` does not work correctly for small (
My configuration: MacOS Mojave 10.14.6Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/include/c++/4.2.1 Apple LLVM version 10.0.1 (clang-1001.0.46.4) Target: x86_64-apple-darwin18.7.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin Errors I am seeing: template ^ /Users/kiran/libmorton/libmorton/test/libmorton_test.h:98:107: error: expected expression...
Is there a way to compare which of two floats/doubles lies further along the Morton curse? Is there a direct way to do this besides rescaling, converting to integer and...
It is possible to quickly (that is, without going through a decode-modify-encode pipeline) compute neighbours of a Morton-encoded coordinate. The technique is mentioned on [wikipedia](https://en.wikipedia.org/wiki/Z-order_curve#Coordinate_values). That could be useful to...
Hi, You mentioned in TODO that a better naming system is required. I solved the issue by using a combination of tag dispatch, function overloading, and partial specialization of template...
Hi, Sorry for opening such and issue. However, I was interested if its possible to generate Morton code for n-dimesnsions using the precomputed tables. That is, generating such tables for...
Hello everyone! I am working on implementing a tool to assess the complexity of CPU architecture porting. It primarily focuses on RISC-V architecture porting. In fact, the tool may have...
Somewhat related to https://github.com/Forceflow/libmorton/issues/41 Having to manage both `uint_fast32_t ` / `uint_fast16_t` or `uint_fast64_t ` / `uint_fast32_t ` is not easy, especially with templated code: The following overload: `inline void...
``` /build/_deps/libmorton-src/include\libmorton/morton3D.h:149:71: error: expected unqualified-id C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared\minwindef.h:193:29: note: expanded from macro 'max' 193 | #define max(a,b) (((a) > (b)) ? (a) : (b)) | ^ ``` undef 'min'...