All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Macros | Functions
pathresize.cpp File Reference

Implementation for PixPath specializations that resize paths. More...

#include <l/l_def.h>
#include <qd_cpp/pathresize.h>
#include <vector>
#include <deque>
#include <algorithm>
#include <boost/shared_ptr.hpp>


 Classes and functions for dealing with trajectory files.
 support for the path algorithm I call the quasi-Dijkstra method.


#define ASSERTO(x)


PixPath kjb::qd::rightsize (const PixPath &base_path, size_t goal_size, float distance_too_close)
 compute polyline approximation of base_path of the "right size." More...
float kjb::qd::sosq_error (const PixPath &path, size_t iii, size_t jjj)
 this is an error metric for a path bridging from index iii to jjj More...
PixPath kjb::qd::polyline_approx (const PixPath &base_path, size_t goal_size, float *error=00)
 compute polyline approximation to base_path with dynamic programming More...
PixPath kjb::qd::reduce_pixels_pv (const PixPath &pixelpath)
 Remove "unnecessary" pixels, using the Perez-Vidal algorithm. More...
PixPath kjb::qd::reduce_pixels_bfs (const PixPath &pixelpath)
 another heuristic to reduce pixels, using previous two methods + BFS More...

Detailed Description

Implementation for PixPath specializations that resize paths.

Andrew Predoehl

Sadly there is a fair amount of drek in here, stuff left over from when I tried to reduce a path in a rather ad-hoc way. Function polyline_approx() is much better.

Macro Definition Documentation

#define ASSERTO (   x)

stub non-assertion when less paranoid


macro: 1=expensive paranoia