Drawing with Fourier Epicycles

GUI that computes the required epicycles to match a custom drawing by using DFTs
754 download
Aggiornato 5 ott 2020

An epicycle is an orbit revolving around a point on the deferent. This GUI computes the required epicycles (i.e., radii, frequency and phase of all of them) in order to match a previously drawn curve, depicting an animation to see the result. The function also allows for uploading the XY coordinates of a custom curve, if needed.

Example of use:
fourier_main;

--------------------------------------------------------------------------------------------------------
The main function is 'fourier_epicycles(curve_x, curve_y, no_circles)', the rest of them are required to plot the GUI. Thus, this function can be used separately. Basically, the function converts XY coordinates in a complex vector Z = X + iY. Afterwards, it computes the Discrete Fourier Transform of Z, which is used to derive the radii (abs(Z)), frequency (index) and initial phase (angle(Z)) of each circle.

Input parameters:
- curve_x: X coordinates of the curve.
- curve_y: Y coordinates of the curve.
- no_circles: (Optional) Maximum number of circles. The maximum drawing accuracy is reached if the no_circles is exactly the number of points of the curve.

Example of use:
load('heart.mat'); fourier_epicycles(curve_x, curve_y);

Cita come

Víctor Martínez-Cagigal (2025). Drawing with Fourier Epicycles (https://github.com/vicmarcag/Drawing-with-Fourier-Epicycles/releases/tag/1.1.0), GitHub. Recuperato .

Compatibilità della release di MATLAB
Creato con R2018a
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux
Categorie
Scopri di più su Detection, Range and Doppler Estimation in Help Center e MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Versione Pubblicato Note della release
1.1.0

See release notes for this release on GitHub: https://github.com/vicmarcag/Drawing-with-Fourier-Epicycles/releases/tag/1.1.0

1.0.1

Thumbnail changed

1.0.0

Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.
Per visualizzare o segnalare problemi su questo componente aggiuntivo di GitHub, visita GitHub Repository.