generate-shapes/src/util/geo/CircularSegment.h
Patrick Brosi 4c29892658 * speed up hop-to-hop calculations
* better and faster trip clustering: trip tries
* add --write-colors to extract line colors from OSM data
* refactor config parameter names, update default pfaedle.cfg
* add --stats for writing a stats.json file
* add --no-fast-hops, --no-a-star, --no-trie for debugging
* general refactoring
2022-01-04 17:19:27 +01:00

41 lines
815 B
C++

// Copyright 2016, University of Freiburg,
// Chair of Algorithms and Data Structures.
// Authors: Patrick Brosi <brosi@informatik.uni-freiburg.de>
#ifndef UTIL_GEO_CIRCULARSEGMENT_H_
#define UTIL_GEO_CIRCULARSEGMENT_H_
#include <vector>
#include "util/geo/Geo.h"
#include "util/geo/PolyLine.h"
namespace util {
namespace geo {
/**
* Circular segment
*/
template <typename T>
class CircularSegment {
public:
CircularSegment(const Point<T>& a, double ang, const Point<T>& c);
const PolyLine<T>& render(double d);
private:
// store the rendered polyline for quicker access
PolyLine<T> _rendered;
const Point<T>& _a, _c;
double _renderD;
double _ang, _rad, _s, _initAng;
Point<T> valueAt(double t) const;
};
#include "util/geo/CircularSegment.tpp"
}
}
#endif // UTIL_GEO_BEZIERCURVE_H_