INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

skeletonpathplanner.h

00001 /*
00002  * Orca-Robotics Project: Components for robotics 
00003  *               http://orca-robotics.sf.net/
00004  * Copyright (c) 2004-2009 Alex Brooks, Alexei Makarenko, Tobias Kaupp
00005  *
00006  * This copy of Orca is licensed to you under the terms described in
00007  * the LICENSE file included in this distribution.
00008  *
00009  */
00010 #ifndef SKELETONPATHPLANNER_H
00011 #define SKELETONPATHPLANNER_H
00012 
00013 #include <hydropathplan/ipathplanner2d.h>
00014 #include <hydropathplan/util.h>
00015 #include <hydroogmap/hydroogmap.h>
00016 
00017 namespace hydropathplan {
00018 
00022 class SkeletonPathPlanner : public IPathPlanner2d
00023 {
00024 
00025 public: 
00026 
00030     SkeletonPathPlanner( const hydroogmap::OgMap &ogMap,
00031                          double robotDiameterMetres,
00032                          double traversabilityThreshhold,
00033                          bool   doPathOptimization,
00034                          const CostEvaluator &costEvaluator=DefaultCostEvaluator() );
00035 
00039     virtual void computePath( int           startX,
00040                               int           startY,
00041                               int           endX,
00042                               int           endY,
00043                               Cell2DVector &path ) const;
00044 
00045     // Useful for debugging.
00046     const Cell2DVector &skeleton()   const { return skel_; }
00047     const FloatMap     &distGrid()   const { return distGrid_; }
00048 
00049 private: 
00050 
00051     void checkInputs( int           startX,
00052                       int           startY,
00053                       int           endX,
00054                       int           endY ) const;
00055 
00056     const hydroogmap::OgMap &ogMap_;
00057 
00058     FloatMap     costMap_;
00059     Cell2DVector skel_;
00060     FloatMap     distGrid_;
00061 
00062     const double robotDiameterMetres_;
00063     const double traversabilityThreshhold_;
00064     const bool   doPathOptimization_;
00065 };
00066 
00067 }
00068 
00069 #endif
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5