laser_data_cairo.h
Go to the documentation of this file.
1 #ifndef H_LASER_DATA_CAIRO
2 #define H_LASER_DATA_CAIRO
3 
4 #include <cairo.h>
5 #include <options/options.h>
6 #include "../csm/csm_all.h"
7 #include "../csm/laser_data_drawing.h"
8 
9 typedef struct {
10  /* should we draw it? */
11  int draw;
12 
13  double width;
14  const char* color;
15 
16 } line_style ;
17 
18 typedef struct {
19  line_style rays, countour;
21  double points_radius;
22 
25 
26  /* A circle at the pose */
28  double pose_radius;
29 
30 
33 
35  double horizon;
36 } ld_style;
37 
39 void lds_set_defaults(ld_style*lds);
40 
41 void ls_add_options(line_style*ls, struct option*ops,
42  const char*prefix, const char*desc_prefix);
43 
44 void lds_add_options(ld_style*lds, struct option*ops,
45  const char*prefix, const char*desc_prefix);
46 
47 void cr_set_color(cairo_t *cr, const char* color);
48 void cr_set_style(cairo_t*cr, line_style*);
49 void cr_ld_draw(cairo_t* cr, LDP ld, ld_style *p);
50 void cr_ld_draw_corr(cairo_t*cr, LDP laser_ref, LDP laser_sens);
51 void cr_ld_draw_sigma(cairo_t*cr, LDP ld, double multiplier);
52 void cr_set_reference(cairo_t*cr,double*pose);
53 
54 void cr_lda_draw_pose_path(cairo_t*cr, LDP*lda, int nscans, ld_reference use_reference);
55 
56 int create_pdf_surface(const char*file, int max_width_points, int max_height_points,
57  double bb_min[2], double bb_max[2], cairo_surface_t**surface_p, cairo_t **cr);
58 
59 int create_image_surface(int width, int height,
60  double bb_min[2], double bb_max[2], cairo_surface_t**surface_p, cairo_t **cr);
61 
62 
63 
64 #endif
65 
ld_style::normals
line_style normals
Definition: laser_data_cairo.h:23
create_image_surface
int create_image_surface(int width, int height, double bb_min[2], double bb_max[2], cairo_surface_t **surface_p, cairo_t **cr)
Definition: laser_data_cairo.c:362
cr_ld_draw_corr
void cr_ld_draw_corr(cairo_t *cr, LDP laser_ref, LDP laser_sens)
Definition: laser_data_cairo.c:20
line_style::width
double width
Definition: laser_data_cairo.h:13
p
struct @0 p
cr_set_style
void cr_set_style(cairo_t *cr, line_style *)
Definition: laser_data_cairo.c:138
ld_style::sigma
line_style sigma
Definition: laser_data_cairo.h:31
ls_add_options
void ls_add_options(line_style *ls, struct option *ops, const char *prefix, const char *desc_prefix)
Definition: laser_data_cairo.c:55
ld_style::normals_length
double normals_length
Definition: laser_data_cairo.h:24
options.h
cr_lda_draw_pose_path
void cr_lda_draw_pose_path(cairo_t *cr, LDP *lda, int nscans, ld_reference use_reference)
Definition: laser_data_cairo.c:143
prefix
const char * prefix
Definition: hsm_test00.c:17
cr_ld_draw
void cr_ld_draw(cairo_t *cr, LDP ld, ld_style *p)
Definition: laser_data_cairo.c:256
cr_set_reference
void cr_set_reference(cairo_t *cr, double *pose)
Definition: laser_data_cairo.c:290
create_pdf_surface
int create_pdf_surface(const char *file, int max_width_points, int max_height_points, double bb_min[2], double bb_max[2], cairo_surface_t **surface_p, cairo_t **cr)
Definition: laser_data_cairo.c:326
ld_style::points
line_style points
Definition: laser_data_cairo.h:20
ld_style::pose
line_style pose
Definition: laser_data_cairo.h:27
ld_style::pose_radius
double pose_radius
Definition: laser_data_cairo.h:28
ld_style::connect_threshold
double connect_threshold
Definition: laser_data_cairo.h:34
ls_set_defaults
void ls_set_defaults(line_style *ls)
Definition: laser_data_cairo.c:295
lds_add_options
void lds_add_options(ld_style *lds, struct option *ops, const char *prefix, const char *desc_prefix)
Definition: laser_data_cairo.c:70
line_style
Definition: laser_data_cairo.h:9
ops
struct option * ops
Definition: rb_sm.c:31
ld_style
Definition: laser_data_cairo.h:18
ld_style::points_radius
double points_radius
Definition: laser_data_cairo.h:21
option
Definition: options.h:49
ld_style::sigma_multiplier
double sigma_multiplier
Definition: laser_data_cairo.h:32
ld_style::horizon
double horizon
Definition: laser_data_cairo.h:35
ld_reference
ld_reference
Definition: laser_data_drawing.h:6
laser_data
Definition: laser_data.h:16
ld_style::rays
line_style rays
Definition: laser_data_cairo.h:19
line_style::color
const char * color
Definition: laser_data_cairo.h:14
cr_ld_draw_sigma
void cr_ld_draw_sigma(cairo_t *cr, LDP ld, double multiplier)
Definition: laser_data_cairo.c:235
lds_set_defaults
void lds_set_defaults(ld_style *lds)
Definition: laser_data_cairo.c:301
line_style::draw
int draw
Definition: laser_data_cairo.h:11
cr_set_color
void cr_set_color(cairo_t *cr, const char *color)
Definition: laser_data_cairo.c:103


csm
Author(s): Andrea Censi
autogenerated on Wed Aug 17 2022 02:50:33