Class DirectDistPathObj
Defined in File direct_dist_path_obj.h
Inheritance Relationships
Base Type
public f2c::obj::RPObjective
(Class RPObjective)
Class Documentation
-
class DirectDistPathObj : public f2c::obj::RPObjective
Path cost function as the straight distance between points in a route.
Public Functions
-
virtual double computeCost(const F2CPoint &p1, const F2CPoint &p2) override
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
p2 – End point
- Returns:
Cost value
-
double computeCost(const F2CPoint &p1, const F2CPoint &p2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
p2 – End point
- Returns:
Cost value
-
double computeCost(const F2CPoint &p1, double ang1, const F2CPoint &p2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
ang1 – Angle of the robot in p1
p2 – End point
- Returns:
Cost value
-
double computeCost(const F2CPoint &p1, double ang1, const F2CPoint &p2, double ang2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
ang1 – Angle of the robot in p1
p2 – End point
ang2 – Angle of the robot in p2
- Returns:
Cost value
-
double computeCost(const F2CPoint &p1, const F2CPoint &p2, double ang2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
p2 – End point
ang2 – Angle of the robot in p2
- Returns:
Cost value
-
double computeCost(const F2CSwath &s, const F2CPoint &p)
Return the cost of going from swath s to point p.
- Parameters:
s – Start point (end of the swath)
p – End point
- Returns:
Cost value
-
double computeCost(const F2CSwath &s1, const F2CSwath &s2)
Return the cost of going from swath s to point p.
- Parameters:
s1 – Start point (end of the swath)
s2 – End point (start of the swath)
- Returns:
Cost value
-
double computeCost(const F2CSwath &s, const F2CPoint &p, double ang)
Return the cost of going from swath s to point p.
- Parameters:
s – Start point (end of the swath)
p – End point
ang – Angle of the robot in p
- Returns:
Cost value
-
double computeCost(const F2CPoint &p, const F2CSwath &s)
Return the cost of going from point p to swath s.
- Parameters:
p – Start point
s – End point (start of the swath)
- Returns:
Cost value
-
double computeCost(const F2CPoint &p, double ang, const F2CSwath &s)
Return the cost of going from point p to swath s.
- Parameters:
p – Start point
ang – Angle of the robot in p
s – End point (start of the swath)
- Returns:
Cost value
-
double computeCost(const std::vector<F2CPoint> &ps)
Return the cost of covering all the points of ps.
- Parameters:
ps – vector of points
- Returns:
Cost value
-
double computeCost(const F2CMultiPoint &ps)
Return the cost of covering all the points of ps.
- Parameters:
ps – vector of points
- Returns:
Cost value
-
double computeCost(const F2CSwath &s, const F2CMultiPoint &ps)
Return the cost of going from swath s to the first point of ps.
- Parameters:
s – Start point (end of the swath)
ps – vector of points
- Returns:
Cost value
-
double computeCost(const F2CSwaths &s, const F2CMultiPoint &ps)
Return the cost of going from the last swath of s to the first point of ps.
- Parameters:
s – Start point (end of the last swath)
ps – vector of points (first point)
- Returns:
Cost value
-
double computeCost(const F2CMultiPoint &ps, const F2CSwath &s)
Return the cost of going from the last point of ps to the swath s.
- Parameters:
ps – vector of points (end point)
s – Start point (start of the swath)
- Returns:
Cost value
-
double computeCost(const F2CMultiPoint &ps, const F2CSwaths &s)
Return the cost of going from the last point of ps to the first swath of s.
- Parameters:
ps – vector of points (end point)
s – Start point (start of the first swath)
- Returns:
Cost value
-
double computeCost(const F2CSwath &s)
Return the cost of covering a swath.
- Parameters:
s – Swath
- Returns:
Cost value
-
double computeCost(const F2CSwaths &swaths)
Return the cost of covering a vector of swaths.
Costs of each swath + Cost of going from one to another. The order may affect the cost.
- Parameters:
s – Swaths
- Returns:
Cost value
-
double computeCost(const F2CRoute &r)
Return the cost of covering a Route.
Costs of each swath + Cost of going from one to another.
- Parameters:
r – Route
- Returns:
Cost value
-
virtual double computeCost(const F2CPoint &p1, double ang1, const F2CPoint &p2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
ang1 – Angle of the robot in p1
p2 – End point
- Returns:
Cost value
-
virtual double computeCost(const F2CPoint &p1, double ang1, const F2CPoint &p2, double ang2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
ang1 – Angle of the robot in p1
p2 – End point
ang2 – Angle of the robot in p2
- Returns:
Cost value
-
virtual double computeCost(const F2CPoint &p1, const F2CPoint &p2, double ang2)
Return the cost of going from point p1 to point p2.
- Parameters:
p1 – Start point
p2 – End point
ang2 – Angle of the robot in p2
- Returns:
Cost value
-
virtual double computeCost(const F2CSwath &s, const F2CPoint &p)
Return the cost of going from swath s to point p.
- Parameters:
s – Start point (end of the swath)
p – End point
- Returns:
Cost value
-
virtual double computeCost(const F2CSwath &s1, const F2CSwath &s2)
Return the cost of going from swath s to point p.
- Parameters:
s1 – Start point (end of the swath)
s2 – End point (start of the swath)
- Returns:
Cost value
-
virtual double computeCost(const F2CSwath &s, const F2CPoint &p, double ang)
Return the cost of going from swath s to point p.
- Parameters:
s – Start point (end of the swath)
p – End point
ang – Angle of the robot in p
- Returns:
Cost value
-
virtual double computeCost(const F2CPoint &p, const F2CSwath &s)
Return the cost of going from point p to swath s.
- Parameters:
p – Start point
s – End point (start of the swath)
- Returns:
Cost value
-
virtual double computeCost(const F2CPoint &p, double ang, const F2CSwath &s)
Return the cost of going from point p to swath s.
- Parameters:
p – Start point
ang – Angle of the robot in p
s – End point (start of the swath)
- Returns:
Cost value
-
virtual double computeCost(const std::vector<F2CPoint> &ps)
Return the cost of covering all the points of ps.
- Parameters:
ps – vector of points
- Returns:
Cost value
-
virtual double computeCost(const F2CMultiPoint &ps)
Return the cost of covering all the points of ps.
- Parameters:
ps – vector of points
- Returns:
Cost value
-
virtual double computeCost(const F2CSwath &s, const F2CMultiPoint &ps)
Return the cost of going from swath s to the first point of ps.
- Parameters:
s – Start point (end of the swath)
ps – vector of points
- Returns:
Cost value
-
virtual double computeCost(const F2CSwaths &s, const F2CMultiPoint &ps)
Return the cost of going from the last swath of s to the first point of ps.
- Parameters:
s – Start point (end of the last swath)
ps – vector of points (first point)
- Returns:
Cost value
-
virtual double computeCost(const F2CMultiPoint &ps, const F2CSwath &s)
Return the cost of going from the last point of ps to the swath s.
- Parameters:
ps – vector of points (end point)
s – Start point (start of the swath)
- Returns:
Cost value
-
virtual double computeCost(const F2CMultiPoint &ps, const F2CSwaths &s)
Return the cost of going from the last point of ps to the first swath of s.
- Parameters:
ps – vector of points (end point)
s – Start point (start of the first swath)
- Returns:
Cost value
-
virtual double computeCost(const F2CSwath &s)
Return the cost of covering a swath.
- Parameters:
s – Swath
- Returns:
Cost value
-
virtual double computeCost(const F2CSwaths &swaths)
Return the cost of covering a vector of swaths.
Costs of each swath + Cost of going from one to another. The order may affect the cost.
- Parameters:
s – Swaths
- Returns:
Cost value
-
virtual double computeCost(const F2CRoute &r)
Return the cost of covering a Route.
Costs of each swath + Cost of going from one to another.
- Parameters:
r – Route
- Returns:
Cost value
-
inline double computeCostWithMinimizingSign(const T1 &t1)
Compute the cost function with minimizing sign.
If the objective is to maximize the cost function, the cost is multiplied by -1.
-
inline double computeCostWithMinimizingSign(const T1 &t1, const T2 &t2)
-
inline double computeCostWithMinimizingSign(const T1 &t1, const T2 &t2, const T3 &t3)
-
inline double computeCostWithMinimizingSign(const T1 &t1, const T2 &t2, const T3 &t3, const T4 &t4)
-
inline virtual bool isMinimizing() const
Return true if the objective is to minimize the cost function.
-
inline virtual bool isMaximizing() const
Return true if the objective is to maximize the cost function.
-
virtual double computeCost(const F2CPoint &p1, const F2CPoint &p2) override