-
Notifications
You must be signed in to change notification settings - Fork 99
Expand file tree
/
Copy pathfilters.h
More file actions
49 lines (40 loc) · 1.48 KB
/
filters.h
File metadata and controls
49 lines (40 loc) · 1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/* GNUPLOT - filters.h */
#ifndef GNUPLOT_FILTERS_H
# define GNUPLOT_FILTERS_H
#include "syscfg.h"
#include "graphics.h"
#include "graph3d.h"
/* Type definitions */
/* If gnuplot ever gets a subsystem to do clustering, this would belong there.
* As of now, however, the only clustering operations are outlier detection
* and finding a convex or concave hull, for which the code is in filters.c.
*/
typedef struct cluster {
int npoints;
double xmin;
double xmax;
double ymin;
double ymax;
double cx; /* x coordinate of center-of-mass */
double cy; /* y coordinate of center-of-mass */
int pin; /* index of point with minimum x */
} t_cluster;
/* Exported functions */
void mcs_interp(struct curve_points *plot);
void make_bins(struct curve_points *plot,
int nbins, double binlow, double binhigh, double binwidth, int binopt);
void gen_3d_splines(struct surface_points *plot);
void gen_2d_path_splines(struct curve_points *plot);
void convex_hull(struct curve_points *plot);
void expand_hull(struct curve_points *plot);
void sharpen(struct curve_points *plot);
#ifdef WITH_CHI_SHAPES
void delaunay_triangulation( struct curve_points *plot );
void save_delaunay_triangles( struct curve_points *plot );
void concave_hull( struct curve_points *plot );
void reset_hulls( TBOOLEAN reset );
extern double chi_shape_default_fraction; /* This is fraction of longest edge */
#else
#define reset_hulls(foo) /* NOOP */
#endif /* WITH_CHI_SHAPES */
#endif /* GNUPLOT_FILTERS_H */