static inline void appendX1Values(const IntShapeIntervals& intervals, int minIntervalWidth, Vector<int>& result) { for (unsigned i = 0; i < intervals.size(); i++) { if (intervals[i].width() >= minIntervalWidth) result.append(intervals[i].x1()); } }
static inline bool shapeIntervalsContain(const IntShapeIntervals& intervals, const IntShapeInterval& interval) { for (unsigned i = 0; i < intervals.size(); i++) { if (intervals[i].x1() > interval.x2()) return false; if (intervals[i].contains(interval)) return true; } return false; }
static inline void appendLineSegments(const IntShapeIntervals& intervals, SegmentList& result) { for (unsigned i = 0; i < intervals.size(); i++) result.append(LineSegment(intervals[i].x1(), intervals[i].x2() + 1)); }