izzi
SVG SUBSET C++ API
Loading...
Searching...
No Matches
a60-svg-curves-damped-harmonograph.h File Reference
#include <iostream>
#include <string>
#include <format>
#include <cmath>
#include <numbers>
#include <tuple>
#include <vector>
Include dependency graph for a60-svg-curves-damped-harmonograph.h:

Go to the source code of this file.

Typedefs

using point_2t = std::tuple<double, double>

Functions

std::string generate_damped_harmonograph (point_2t pt, double r, double n, double d, double cycles=10.0)
std::string generate_triple_harmonograph (point_2t origin, double r, double n1, double n2, double p2, double d, double cycles)

Typedef Documentation

◆ point_2t

using point_2t = std::tuple<double, double>

Definition at line 27 of file a60-svg-curves-damped-harmonograph.h.

Function Documentation

◆ generate_damped_harmonograph()

std::string generate_damped_harmonograph ( point_2t pt,
double r,
double n,
double d,
double cycles = 10.0 )

Generates a Damped Harmonograph SVG path.

Parameters
ptOrigin tuple {x, y}
rInitial Radius (scale)
nFrequency ratio (number of waves)
dDamping coefficient (0.01 to 0.1)
cyclesTotal rotations (2 * pi * cycles)

Definition at line 38 of file a60-svg-curves-damped-harmonograph.h.

◆ generate_triple_harmonograph()

std::string generate_triple_harmonograph ( point_2t origin,
double r,
double n1,
double n2,
double p2,
double d,
double cycles )

Generates a Triple-Frequency Damped Harmonograph.

Parameters
n1Primary Vertical Frequency
n2Secondary Vertical Frequency
p2Phase shift for the second frequency

Definition at line 98 of file a60-svg-curves-damped-harmonograph.h.