cbviz_util.H File Reference

#include "data_type.H"
#include "milkshapeModel.H"
#include "cb_time.H"
#include <cstring>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  cajun::color_node_t
 Represents a single color. More...
class  cajun::chart_color_t
 Used for predefined sets of colors. More...

Namespaces

namespace  cajun

Defines

#define REAL2SIM_DIST_RATIO   1
#define SIM2REAL_DIST_RATIO   1/REAL2SIM_DIST_RATIO
#define POSX   0
#define POSY   1
#define POSZ   2
#define ANGLEX   0
#define ANGLEY   1
#define ANGLEZ   2
#define REAL2SIM_DIST_RATIO   1
#define SIM2REAL_DIST_RATIO   1/REAL2SIM_DIST_RATIO
#define POSX   0
#define POSY   1
#define POSZ   2
#define ANGLEX   0
#define ANGLEY   1
#define ANGLEZ   2

Functions

void cajun::draw_axes (double length)
 Draw coordinate axes at current location.
void cajun::color_contour (double value, double max_value, double &r, double &g, double &b)
 Draw color contour based on current value and max value.
void cajun::color_contour (double value, double max_value, unsigned char &r, unsigned char &g, unsigned char &b)
 Draw color contour based on current value and max value.
void cajun::color_gradient (double value, double max_value, double &r, double &g, double &b)
 Draw color gradient based on current value and max value.
void cajun::color_gradient (double value, double max_value, unsigned char &r, unsigned char &g, unsigned char &b)
 Draw color gradient based on current value and max value.
void cajun::color_gradient (double value, double max_value, unsigned short &r, unsigned short &g, unsigned short &b)
 Draw color gradient based on current value and max value.
void cajun::color_gradient (double value, double interval, double ref_r, unsigned short &r, unsigned short &g, unsigned short &b)
 Draw color gradient based on current value and max value.
void cajun::split_filename (const char *filename, char *dirname, unsigned dirsize, char *filepart, unsigned fpartsize)
 Split a filename. Roughly equivalent to basename and dirname.
bool cajun::loadMilkshapeModelData (Model *pModel, const char *filename)
 Handle loading of milkshape model data by providing the filename to the model.
void cajun::load_ppm_p6 (char *fname, unsigned int *w, unsigned int *h, unsigned char **data, int mallocflag)
 Loads a PPM image (P6 format).
void cajun::load_ppm_p3 (char *fname, unsigned int *w, unsigned int *h, unsigned char **data, int mallocflag)
 Loads a PPM image (P3 format).
bool cajun::read_ppm_texture (const char *fname, unsigned char *&image_data_, unsigned &width_, unsigned &height_)
 Loads a PPM image (P3 or P6 format).
GLuint cajun::setup_ppm_texture (const unsigned char *image_data_, unsigned width_, unsigned height_)
 Bind PPM image to a texture.
GLuint cajun::setup_ppm_texture (const char *fname)
void cajun::Normal_Plane (float v[3], float x[3], float y[3], float z[3])
 Calculate the unit normal to a plane.
void cajun::Render_Polygon (float v[4][3], float color[3], int texon, char *ppmname)
 Render a polygon or a plane.
void cajun::Render_Quadric (int type, float radius, float outerradius, float length, chart_color_t color, int texon, char *ppmname)
 Render a Quadric (Sphere, Cylinder, Disk, Circle).
void cajun::draw_cylinder (double radius, double height)
 Draw a cylinder.
void cajun::draw_sphere (double radius)
 Draw a sphere.
void cajun::Render_box (float dimensions[3], float color[3], int texon, char *ppmname)
 Render a Three Dimensional Box.
void cajun::Render_Ground (float size, float color[3], int texon, char *ppmname)
 Render the ground.
void cajun::Render_Sky (float size, float color[3], int texon, char *ppmname)
 Render the sky.
void cajun::get_rotation_matrix (double rot[16], double heading, double pitch, double roll)
 Get a rotation matrix given heading, pitch, and roll.
void cajun::output_text (int posx, int posy, int posz, char const *str)
 Output text string using glRasterPos3i.
void cajun::output_text (int posx, int posy, char const *str)
 Output text string using glRasterPos2i.
void cajun::output_text (double posx, double posy, double posz, char const *str)
 Output text string using glRasterPos3f.
void cajun::output_string_number (int posx, int posy, std::string num)
 Output string containing numbers using glRasterPos2i.
void cajun::output_string_number (double posx, double posy, double posz, std::string num)
 Output string containing numbers using glRasterPos3i.
void cajun::output_int_number (int posx, int posy, int posz, int num)
 Output int number using glRasterPos3i.
void cajun::output_float_number (int posx, int posy, double num)
 Output floating number using glRasterPos2i.
void cajun::output_float_number (double posx, double posy, double posz, double num)
 Output floating number using glRasterPos3i.
void cajun::output_int_number (double posx, double posy, double posz, int num)
 Output integer number using glRasterPos3f.
void cajun::draw_cube (double dimensions[3])
 Draw filled cube specified by dimensions.
void cajun::draw_square (double x, double y, double square_length)
 Draw 2D square in x-z plane.
void cajun::draw_line (double x1, double y1, double z1, double x2, double y2, double z2)
 Draw line from one point to another in 3D space.
void cajun::draw_rectangle (double x1, double y1, double x2, double y2, double height, cajun::chart_color_t color)
 Draw a colored rectangle of the specified height.
void cajun::draw_filled_rectangle (double x1, double y1, double x2, double y2, double height, cajun::chart_color_t color)
 Draw a filled in colored rectangle of the specified height.
void cajun::draw_circle (double x, double y, double height, double radius, chart_color_t color)
 Draw a cicle.
void cajun::draw_leg (float a1, float b1, float a2, float b2, float w)
 Describe me.
void cajun::draw_flag (double x, double y, double bot_z)
 Draw a flag in front of the bot.
bool cajun::IsGLExtensionSupported (const char *szTargetExtension)
 Test if the specified OpenGL extension is supported by the graphics card.
void cajun::calculate_normal (tri_ver_t &tri_ver_, float &x_, float &y_, float &z_)
 Calculate the normal to a triangle vertex.

Variables

char const * cajun::progname
 Program name.

Define Documentation

#define ANGLEX   0
#define ANGLEX   0
#define ANGLEY   1
#define ANGLEY   1
#define ANGLEZ   2
#define ANGLEZ   2
#define POSX   0
#define POSX   0

Referenced by cajun::draw_triangles_t::change_to_viz_coord(), cajun::draw_radar_gp_t::change_to_viz_coord(), cajun::draw_scan_lane_gp_t::display(), cajun::draw_obstacles_t::display(), cajun::draw_obstacle_points_t::display(), cajun::draw_mesh_cell_t::display(), cajun::monovision_visualization_t::display(), cajun::draw_iteris_gp_t::display(), cajun::draw_blocked_lanes_t::display_blk_lane(), cajun::simulation_draw_t::display_guide(), cajun::draw_rndf_lane_t::display_lb(), cajun::draw_blocked_lanes_t::draw_blocked_lanes_t(), cajun::draw_cbln_dtm_t::draw_cbln_dtm_t(), cajun::draw_cbln_wp_t::draw_cbln_wp_t(), cajun::draw_iteris_t::draw_curved_lane(), cajun::draw_grid_tile_t::draw_grid_tile_t(), cajun::draw_iteris_gp_t::draw_iteris_gp_t(), cajun::draw_iteris_t::draw_iteris_t(), cajun::draw_ldtm_t::draw_ldtm_t(), cajun::draw_mesh_cell_t::draw_mesh_cell_t(), cajun::draw_obstacle_points_t::draw_obstacle_points_t(), cajun::draw_obstacles_t::draw_obstacles_t(), cajun::draw_path_exploration_t::draw_path_exploration_t(), cajun::draw_path_wp_t::draw_path_wp_t(), cajun::draw_radar_gp_t::draw_radar_gp_t(), cajun::draw_rndf_file_t::draw_rndf_file_t(), cajun::draw_rndf_lane_t::draw_rndf_lane_t(), cajun::draw_rndf_t::draw_rndf_t(), cajun::draw_robot_t::draw_robot_t(), cajun::draw_scan_gp_t::draw_scan_gp_t(), cajun::draw_scan_lane_gp_t::draw_scan_lane_gp_t(), cajun::draw_survey_gp_t::draw_survey_gp_t(), cajun::draw_triangles_t::draw_triangles_t(), cajun::draw_vpath_t::draw_vpath_t(), cajun::draw_ldtm_t::dtm_x_to_sim_x(), cajun::draw_cbln_dtm_t::dtm_x_to_sim_x(), cajun::draw_map_t::find_tile(), cajun::draw_robot_t::get_bumper_position(), get_cbviz_origin(), cajun::laser_data_t::get_laser_beam_position(), cajun::draw_robot_t::get_robot_position(), cajun::laser_data_t::laser_data_t(), cajun::monovision_visualization_t::monovision_visualization_t(), cajun::robot_trace_t::note_robot_position(), cajun::robot_trace_t::push_entry(), cajun::draw_cbln_wp_t::read_cbln_wp(), cajun::draw_rndf_file_t::read_file(), cajun::draw_path_exploration_t::read_from_file(), cajun::draw_grid_tile_t::read_grid_path(), cajun::draw_grid_tile_t::read_grid_tile(), cajun::draw_path_wp_t::read_path_wp(), cajun::draw_path_exploration_t::read_path_wp(), cajun::draw_vpath_t::read_vpath(), cajun::robot_trace_t::robot_trace_t(), cajun::simview_t::set_view(), cajun::simulation_draw_t::simulation_draw_t(), cajun::draw_rndf_t::trans_x(), cajun::draw_survey_gp_t::translate_pts(), and cajun::draw_scan_gp_t::translate_pts().

#define POSY   1
#define POSY   1

Referenced by cajun::draw_triangles_t::change_to_viz_coord(), cajun::draw_radar_gp_t::change_to_viz_coord(), cajun::draw_scan_lane_gp_t::display(), cajun::draw_obstacles_t::display(), cajun::draw_obstacle_points_t::display(), cajun::draw_mesh_cell_t::display(), cajun::monovision_visualization_t::display(), cajun::draw_iteris_gp_t::display(), cajun::draw_blocked_lanes_t::display_blk_lane(), cajun::simulation_draw_t::display_guide(), cajun::draw_rndf_lane_t::display_lb(), cajun::draw_blocked_lanes_t::draw_blocked_lanes_t(), cajun::draw_cbln_dtm_t::draw_cbln_dtm_t(), cajun::draw_cbln_wp_t::draw_cbln_wp_t(), cajun::draw_iteris_t::draw_curved_lane(), cajun::draw_grid_tile_t::draw_grid_tile_t(), cajun::draw_iteris_gp_t::draw_iteris_gp_t(), cajun::draw_iteris_t::draw_iteris_t(), cajun::draw_ldtm_t::draw_ldtm_t(), cajun::draw_mesh_cell_t::draw_mesh_cell_t(), cajun::draw_obstacle_points_t::draw_obstacle_points_t(), cajun::draw_obstacles_t::draw_obstacles_t(), cajun::draw_path_exploration_t::draw_path_exploration_t(), cajun::draw_path_wp_t::draw_path_wp_t(), cajun::draw_radar_gp_t::draw_radar_gp_t(), cajun::draw_rndf_file_t::draw_rndf_file_t(), cajun::draw_rndf_lane_t::draw_rndf_lane_t(), cajun::draw_rndf_t::draw_rndf_t(), cajun::draw_robot_t::draw_robot_t(), cajun::draw_scan_gp_t::draw_scan_gp_t(), cajun::draw_scan_lane_gp_t::draw_scan_lane_gp_t(), cajun::draw_survey_gp_t::draw_survey_gp_t(), cajun::draw_triangles_t::draw_triangles_t(), cajun::draw_vpath_t::draw_vpath_t(), cajun::draw_ldtm_t::dtm_y_to_sim_y(), cajun::draw_cbln_dtm_t::dtm_y_to_sim_y(), cajun::draw_map_t::find_tile(), cajun::draw_robot_t::get_bumper_position(), get_cbviz_origin(), cajun::laser_data_t::get_laser_beam_position(), cajun::draw_robot_t::get_robot_position(), cajun::laser_data_t::laser_data_t(), cajun::monovision_visualization_t::monovision_visualization_t(), cajun::robot_trace_t::note_robot_position(), cajun::robot_trace_t::push_entry(), cajun::draw_cbln_wp_t::read_cbln_wp(), cajun::draw_rndf_file_t::read_file(), cajun::draw_path_exploration_t::read_from_file(), cajun::draw_grid_tile_t::read_grid_path(), cajun::draw_grid_tile_t::read_grid_tile(), cajun::draw_path_wp_t::read_path_wp(), cajun::draw_path_exploration_t::read_path_wp(), cajun::draw_vpath_t::read_vpath(), cajun::robot_trace_t::robot_trace_t(), cajun::simview_t::set_view(), cajun::simulation_draw_t::simulation_draw_t(), cajun::draw_rndf_t::trans_y(), cajun::draw_survey_gp_t::translate_pts(), and cajun::draw_scan_gp_t::translate_pts().

#define POSZ   2
#define POSZ   2

Referenced by cajun::draw_triangles_t::change_to_viz_coord(), cajun::draw_radar_gp_t::change_to_viz_coord(), cajun::draw_vpath_t::display(), cajun::draw_scan_lane_gp_t::display(), cajun::draw_path_wp_t::display(), cajun::draw_path_exploration_t::display(), cajun::draw_obstacles_t::display(), cajun::draw_obstacle_points_t::display(), cajun::draw_mesh_cell_t::display(), cajun::draw_ldtm_t::display(), cajun::monovision_visualization_t::display(), cajun::draw_iteris_gp_t::display(), cajun::draw_grid_tile_t::display(), cajun::draw_cbln_wp_t::display(), cajun::draw_blocked_lanes_t::display_blk_lane(), cajun::draw_blocked_lanes_t::draw_blocked_lanes_t(), cajun::draw_cbln_dtm_t::draw_cbln_dtm_t(), cajun::draw_cbln_wp_t::draw_cbln_wp_t(), cajun::draw_iteris_t::draw_curved_lane(), cajun::draw_grid_tile_t::draw_grid_tile_t(), cajun::draw_iteris_gp_t::draw_iteris_gp_t(), cajun::draw_iteris_t::draw_iteris_t(), cajun::draw_ldtm_t::draw_ldtm_t(), cajun::draw_mesh_cell_t::draw_mesh_cell_t(), cajun::draw_obstacle_points_t::draw_obstacle_points_t(), cajun::draw_obstacles_t::draw_obstacles_t(), cajun::draw_path_exploration_t::draw_path_exploration_t(), cajun::draw_path_wp_t::draw_path_wp_t(), cajun::draw_radar_gp_t::draw_radar_gp_t(), cajun::draw_rndf_file_t::draw_rndf_file_t(), cajun::draw_rndf_lane_t::draw_rndf_lane_t(), cajun::draw_rndf_t::draw_rndf_t(), cajun::draw_robot_t::draw_robot_t(), cajun::draw_scan_gp_t::draw_scan_gp_t(), cajun::draw_scan_lane_gp_t::draw_scan_lane_gp_t(), cajun::draw_survey_gp_t::draw_survey_gp_t(), cajun::draw_triangles_t::draw_triangles_t(), cajun::draw_vpath_t::draw_vpath_t(), cajun::draw_robot_t::get_bumper_position(), get_cbviz_origin(), cajun::laser_data_t::get_laser_beam_position(), cajun::draw_robot_t::get_robot_position(), cajun::laser_data_t::laser_data_t(), cajun::monovision_visualization_t::monovision_visualization_t(), cajun::robot_trace_t::robot_trace_t(), cajun::simview_t::set_view(), cajun::simulation_draw_t::simulation_draw_t(), cajun::draw_survey_gp_t::translate_pts(), and cajun::draw_scan_gp_t::translate_pts().

#define REAL2SIM_DIST_RATIO   1
#define REAL2SIM_DIST_RATIO   1
#define SIM2REAL_DIST_RATIO   1/REAL2SIM_DIST_RATIO
#define SIM2REAL_DIST_RATIO   1/REAL2SIM_DIST_RATIO

Generated on Fri Apr 9 10:45:17 2010 for Visualizer by  doxygen 1.6.1