Inkscape
Vector Graphics Editor
|
C implementation of third-order polynomial spirals. More...
Go to the source code of this file.
Namespaces | |
namespace | Spiro |
Functions | |
void | Spiro::spiro_run (const spiro_cp *src, int src_len, SPCurve &curve) |
void | Spiro::spiro_run (const spiro_cp *src, int src_len, Geom::Path &path) |
static void | Spiro::integrate_spiro (const double ks[4], double xy[2]) |
static double | Spiro::compute_ends (const double ks[4], double ends[2][4], double seg_ch) |
static void | Spiro::compute_pderivs (const spiro_seg *s, double ends[2][4], double derivs[4][2][4], int jinc) |
static double | Spiro::mod_2pi (double th) |
static spiro_seg * | Spiro::setup_path (const spiro_cp *src, int n) |
static void | Spiro::bandec11 (bandmat *m, int *perm, int n) |
static void | Spiro::banbks11 (const bandmat *m, const int *perm, double *v, int n) |
static int | Spiro::compute_jinc (char ty0, char ty1) |
static int | Spiro::count_vec (const spiro_seg *s, int nseg) |
static void | Spiro::add_mat_line (bandmat *m, double *v, double derivs[4], double x, double y, int j, int jj, int jinc, int nmat) |
static double | Spiro::spiro_iter (spiro_seg *s, bandmat *m, int *perm, double *v, const int n) |
static int | Spiro::solve_spiro (spiro_seg *s, const int nseg) |
static void | Spiro::spiro_seg_to_otherpath (const double ks[4], double x0, double y0, double x1, double y1, ConverterBase &bc, int depth, bool close_last) |
spiro_seg * | Spiro::run_spiro (const spiro_cp *src, int n) |
void | Spiro::free_spiro (spiro_seg *s) |
void | Spiro::spiro_to_otherpath (const spiro_seg *s, int n, ConverterBase &bc) |
double | Spiro::get_knot_th (const spiro_seg *s, int i) |
static double | get_time (void) |
int | test_integ (void) |
void | print_seg (const double ks[4], double x0, double y0, double x1, double y1) |
void | print_segs (const spiro_seg *segs, int nsegs) |
int | test_curve (void) |
int | main (int argc, char **argv) |
Variables | |
int | Spiro::n = 4 |
C implementation of third-order polynomial spirals.
Definition in file spiro.cpp.
|
static |
Definition at line 959 of file spiro.cpp.
Referenced by test_integ().
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 1118 of file spiro.cpp.
References test_curve().
void print_seg | ( | const double | ks[4], |
double | x0, | ||
double | y0, | ||
double | x1, | ||
double | y1 | ||
) |
Definition at line 1005 of file spiro.cpp.
References bend(), Spiro::integrate_spiro(), print_seg(), and scale.
Referenced by print_seg(), and print_segs().
void print_segs | ( | const spiro_seg * | segs, |
int | nsegs | ||
) |
int test_curve | ( | void | ) |
Definition at line 1085 of file spiro.cpp.
References Spiro::n, print_segs(), Spiro::setup_path(), and Spiro::solve_spiro().
Referenced by SPHatchPath::bounds(), main(), TEST(), TEST_F(), and TEST_F().
int test_integ | ( | void | ) |
Definition at line 970 of file spiro.cpp.
References get_time(), Spiro::integrate_spiro(), Spiro::n, and ORDER.