29 xMin_.reserve(capacity);
30 xMax_.reserve(capacity);
31 yMin_.reserve(capacity);
32 yMax_.reserve(capacity);
53 return QPointF(point.
x_, point.
y_);
57 double maxDistance)
const {
58 QVector<size_t> indexes;
60 XCoordinateRefMinHeap::ordered_iterator it = std::lower_bound(
61 xMin_.ordered_begin(),
xMin_.ordered_end(), x-maxDistance);
63 while (it !=
xMin_.ordered_end()) {
64 if (fabs(x-it->x_) <= maxDistance) {
65 size_t index = it->index_;
67 if (
points_.array_two().second) {
68 index = (index <
points_.array_two().second) ?
69 index+
points_.array_one().second :
70 index-
points_.array_two().second;
73 indexes.push_back(index);
110 size_t index =
points_.size()-1;
112 if (
points_.array_two().second)
void appendPoint(const QPointF &point)
CoordinateMinHeap::handle_type yMinHandle_
size_t getNumPoints() const
QPointF getPoint(size_t index) const
CoordinateMaxHeap::handle_type xMaxHandle_
QVector< size_t > getPointsInDistance(double x, double maxDistance) const
~CurveDataCircularBuffer()
BoundingRectangle getBounds() const
CurveDataCircularBuffer(size_t capacity=0)
CoordinateMaxHeap::handle_type yMaxHandle_
size_t getCapacity() const
XCoordinateRefMinHeap::handle_type xMinHandle_
XCoordinateRefMinHeap xMin_