Skip to content

Epicycle visualization that draws arbitrary SVG paths using Fourier series

Notifications You must be signed in to change notification settings

Kam1k4dze/FourierCircles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fourier Circles

Epicycle visualization that draws arbitrary SVG paths using Fourier series.

Overview

This project converts any SVG path into rotating circles (epicycles) that reconstruct the shape. Runs natively and in browser via WebAssembly.

Requirements

  • C++23 compiler
  • CMake 3.25+
  • Emscripten 4.0+ (web build only)

Build

Native:

cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel $(nproc)
./build/FourierCircles

WebAssembly:

emcmake cmake -S . -B build-web -DCMAKE_BUILD_TYPE=Release
cmake --build build-web --parallel $(nproc)
# Open build-web/FourierCircles.html