Old school D3 from simpler times

This block experiments a way to make transitions between erratic pathes easier to understand/follow. **The idea is to use simplified versions of the paths in order to ease the human comprehension of the transition**. Simplified versions of paths are computed thanks to some models.

Hence, the transition from an intial path to a final path takes 3 stages:

*simplification*: transition from the initial path to its simplified version*simple morphing*: transition from the simplified version of the initial path to a simplified version of the final path; this step eases human comprehension*complexification*: transition from the simplified version of the final path to the final path

This block uses two models to compute the simplified versions of paths:

- a
**Fast Fourier Transform (FFT)**and**inverse Fast Fourier Transform (iFFT)**algorithms - a
**Moving Average**algorithm

- D3.js (v4)
- blockbuilder.org
- complex fast fourier transform and inverse from https://rosettacode.org/wiki/Fast_Fourier_transform#JavaScript

forked from Kcnarf's block: model-based transition on timelines

https://d3js.org/d3.v4.min.js