laser_data_cairo.h
Go to the documentation of this file.
00001 #ifndef H_LASER_DATA_CAIRO
00002 #define H_LASER_DATA_CAIRO
00003 
00004 #include <cairo.h>
00005 #include <options/options.h>
00006 #include "../csm/csm_all.h"
00007 #include "../csm/laser_data_drawing.h"
00008 
00009 typedef struct {
00010         /* should we draw it? */
00011         int draw;
00012         
00013         double width;
00014         const char* color;
00015         
00016 } line_style ;
00017 
00018 typedef struct { 
00019         line_style rays, countour;
00020         line_style points;
00021         double points_radius; 
00022 
00023         line_style normals;
00024         double normals_length;
00025         
00026         /* A circle at the pose */
00027         line_style pose;
00028         double pose_radius;
00029 
00030 
00031         line_style sigma;
00032         double sigma_multiplier;
00033         
00034         double connect_threshold;
00035         double horizon;
00036 } ld_style;
00037 
00038 void ls_set_defaults(line_style*ls);
00039 void lds_set_defaults(ld_style*lds);
00040 
00041 void ls_add_options(line_style*ls, struct option*ops, 
00042         const char*prefix, const char*desc_prefix);
00043 
00044 void lds_add_options(ld_style*lds, struct option*ops, 
00045         const char*prefix, const char*desc_prefix);
00046 
00047 void cr_set_color(cairo_t *cr, const char* color);
00048 void cr_set_style(cairo_t*cr, line_style*);
00049 void cr_ld_draw(cairo_t* cr, LDP ld, ld_style *p);
00050 void cr_ld_draw_corr(cairo_t*cr, LDP laser_ref, LDP laser_sens);
00051 void cr_ld_draw_sigma(cairo_t*cr, LDP ld, double multiplier);
00052 void cr_set_reference(cairo_t*cr,double*pose);
00053 
00054 void cr_lda_draw_pose_path(cairo_t*cr, LDP*lda, int nscans, ld_reference use_reference);
00055 
00056 int create_pdf_surface(const char*file, int max_width_points, int max_height_points,
00057         double bb_min[2], double bb_max[2], cairo_surface_t**surface_p, cairo_t **cr);
00058 
00059 int create_image_surface(int width, int height,
00060         double bb_min[2], double bb_max[2], cairo_surface_t**surface_p, cairo_t **cr);
00061 
00062 
00063 
00064 #endif
00065 


csm
Author(s): Andrea Censi
autogenerated on Fri May 17 2019 02:28:33