util.H File Reference

#include <cstdio>
#include <string>
#include <vector>

Go to the source code of this file.

Namespaces

namespace  cajun

Defines

#define CLOSE_TO_ZERO   0.0001

Functions

double cajun::gettstamp (void)
 Returns time in seconds.
double cajun::parse_human_time (char const *str)
std::string cajun::human_time_str (double tstamp)
double cajun::clipangle (double angle)
 clips given angle to value between 0 to 2 * M_PI
double cajun::angular_deviation (double ref_angle, double angle)
 Returns the angular difference between ref_ang and angle and maps the value to -M_PI to +M_PI.
bool cajun::get_file_tstamp (char const *fname, unsigned &tstamp_)
bool cajun::within_rect_region (double x1, double y1, double x2, double y2, double width, double x, double y)
 returns true if (x, y) is within lane segment (x1, y1)-> (x2, y2) within 'width' distance away
double cajun::atrack_distance (double x1, double y1, double x2, double y2, double x, double y)
 returns the atrack distance of point (x, y) to point (x2, y2) along the line (x1, y1) -> (x2, y2)
double cajun::xtrack_distance (double x1, double y1, double x2, double y2, double x, double y)
 returns the xtrack distance (perpendicular) of point (x, y) to line (x1, y1) -> (x2, y2)
bool cajun::inter_lane_seg (double x11_, double y11_, double x12_, double y12_, double x21_, double y21_, double x22_, double y22_)
bool cajun::are_same_points (double x1_, double y1_, double x2_, double y2_)
 Performs linear interpolation from (start_x, start_y) to (end_x, end_y) through inter_points_.
bool cajun::are_too_close_points (double x1_, double y1_, double x2_, double y2_, double dis_)
bool cajun::are_equal (double val1_, double val2_)
bool cajun::are_close (double val1_, double val2_, double max_diff_)
 Returns true if values val1_, and val2_ are off by atmost max_diff_.
double cajun::dist_to_track (double x_, double y_, double beg_x_, double beg_y_, double end_x_, double end_y_)
void cajun::multiply_4x4_4x4 (double a[4][4], double b[4][4], double results[4][4])
void cajun::multiply_4x4_4x1 (double a[4][4], double b[4], double results[4])
void cajun::compute_transformation_matrix (double roll, double heading, double pitch, double tx, double ty, double tz, double results[4][4])
void cajun::compute_global_velocity (double vel_x, double vel_y, double sog, double heading, double *velocity, double *velocity_angle)
double cajun::interpolate (double t, double t0, double v0, double t1, double v1)
double cajun::interpolate_angle (double t, double t0, double v0, double t1, double v1)
void cajun::tokenize (const std::string &str, std::vector< std::string > &tokens, const std::string &delims)
 Tokenize an input string into substrings based on a set of delimiters.

Define Documentation

#define CLOSE_TO_ZERO   0.0001

Generated on Fri Apr 9 10:45:11 2010 for cbutils by  doxygen 1.6.1