6 double distance (
double x1,
double y1,
double x2,
double y2);
7 static int _grid_index_as_1d(
int x,
int y,
int grid_width);
15 FlowField(
double** flow_field,
int field_width);
36 std::vector<double>
_x;
37 std::vector<double>
_y;
42 Curve(
int id,
int n_steps);
43 void insert_step(
double x_coord,
double y_coord,
int direction_id);
48 std::vector<double>
x;
49 std::vector<double>
y;
57 std::vector<DensityCell> _grid;
63 DensityGrid(
int flow_field_width,
int flow_field_height,
double d_sep,
int cell_capacity);
109 int min_steps_allowed,
119 int min_steps_allowed,
std::vector< double > _x
Definition: lefer.hpp:36
std::vector< int > _step_id
Definition: lefer.hpp:39
int _steps_taken
Definition: lefer.hpp:40
int _curve_id
Definition: lefer.hpp:35
std::vector< int > _direction
Definition: lefer.hpp:38
std::vector< double > _y
Definition: lefer.hpp:37
void insert_step(double x_coord, double y_coord, int direction_id)
Definition: main.cpp:402
Curve(int id, int n_steps)
Definition: main.cpp:393
int get_density_index(double x, double y)
Definition: main.cpp:468
void insert_curve_coords(Curve *curve)
Definition: main.cpp:505
bool is_valid_next_step(double x, double y)
Definition: main.cpp:512
int get_density_row(double y)
Definition: main.cpp:463
bool off_boundaries(double x, double y)
Definition: main.cpp:478
DensityGrid(int flow_field_width, int flow_field_height, double d_sep, int cell_capacity)
Definition: main.cpp:441
int get_density_col(double x)
Definition: main.cpp:458
void insert_coord(double x, double y)
Definition: main.cpp:489
double get_angle(double x, double y)
Definition: main.cpp:364
int get_flow_field_col(double x)
Definition: main.cpp:346
int get_flow_field_row(double y)
Definition: main.cpp:350
bool off_boundaries(double x, double y)
Definition: main.cpp:354
int get_field_width()
Definition: main.cpp:341
FlowField(double **flow_field, int field_width)
Definition: main.cpp:335
int _space_used
Definition: lefer.hpp:80
SeedPointsQueue(int n_steps)
Definition: main.cpp:568
bool is_empty()
Definition: main.cpp:574
void insert_coord(double x, double y)
Definition: main.cpp:578
void insert_point(Point p)
Definition: main.cpp:584
int _capacity
Definition: lefer.hpp:79
std::vector< Point > _points
Definition: lefer.hpp:78
double distance(double x1, double y1, double x2, double y2)
Definition: main.cpp:293
SeedPointsQueue collect_seedpoints(Curve *curve, double d_sep)
Definition: main.cpp:591
Curve draw_curve(int curve_id, double x_start, double y_start, int n_steps, double step_length, double d_sep, FlowField *flow_field, DensityGrid *density_grid)
Definition: main.cpp:35
std::vector< Curve > non_overlapping_curves(std::vector< Point > starting_points, int n_steps, int min_steps_allowed, double step_length, double d_sep, FlowField *flow_field, DensityGrid *density_grid)
Definition: main.cpp:221
std::vector< Curve > even_spaced_curves(double x_start, double y_start, int n_curves, int n_steps, int min_steps_allowed, double step_length, double d_sep, FlowField *flow_field, DensityGrid *density_grid)
Definition: main.cpp:120
std::vector< double > y
Definition: lefer.hpp:49
std::vector< double > x
Definition: lefer.hpp:48
int capacity
Definition: lefer.hpp:50
int space_used
Definition: lefer.hpp:51
double y
Definition: lefer.hpp:25
double x
Definition: lefer.hpp:24