License: GPL-3.0-or-later
Cartosphere is a C++17 library that performs cartoglobe transformations natively on the unit sphere.
Based on [Li2018],
this current version 0.0.1 incorporates fixes documented in [Li2023].
The library currently only offers benchmarks,
and useful interfaces are planned.
Changelog: see CHANGELOG.md
Dependencies: glog, fftw3, eigen3, omp, boost (macOS)
Binaries may be compiled for:
- Windows 10/11 with Visual Studio (
msvc19,msvc22) - macOS (macOS 13 Ventura) with
llvm
cartosphere benchmark
- Install the newest Community edition of Visual Studio
- Clone
vcpkginto a desired location and bootstrap
git clone https://github.com/microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat
- Add
vcpkgfolder to the%PATH%variable - Apply user-wide
vcpkgroot integration
vcpkg integrate all
- Clone this repository
git clone https://github.com/FYPetro/cartosphere.git
- Open .\msvc19\msvc19.sln
- Build
- Install command-line tools after every major macOS upgrade:
xcode-select --install
- Install Homebrew
- Install dependencies through brew
brew install fftw[core,threads]
brew install eigen
brew install boost
brew install glog
- Install C++
argparse
git clone https://github.com/p-ranav/argparse
cmake -DARGPARSE_BUILD_SAMPLES=on -DARGPARSE_BUILD_TESTS=on -DARGPARSE_INSTALL=on ..
- You may need to add the following to the beginning of
argparse'sCMakeLists.txt
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
- Install
llvmas our-fopenmp-supporting compiler
brew install llvm
- Clone this repository, compile, and install
git clone https://github.com/FYPetro/cartosphere.git
cd cartosphere
make all
make install