Для моей программы нужно создать класс, представляющий собой замкнутую полилинию. Причём эта полилиния разбита на участки, имеющие разные цвета. Как-то так: http://rghost.ru/3353697/image.png
Нужно уметь давать какой-то цвет некоторому участку этой полилинии (при этом оно перераспределяется при необходимости): http://rghost.ru/3353832/image.png
Но совсем запутался в логике всей этой фигни.
Полилинию хранить как упорядоченный набор точек (QList<QPointF>)? Как набор линий (QList<QLineF>)? Как полигон (QPolygonF)?
Что вообще хранить в памяти? Набор полилиний? Одну полилинию и точки разбиения? Просто точки, каждая из которых может или быть углом участка, или разделом участка?
Если мы выделяем участок большой полилинии от точки до точки, то как определить направление? Ведь линия замкнутая и идти можно в 2 стороны.
Пугает то, что очень много всяких вариантов в голову лезет, несколько путей решения, но все на поверку оказываются сложными в реализации.
Возможно, я заработался, может вы что-то придумаете?
Эта фигура будет класться в QGraphicsScene, но вопрос напрямую Qt не касается.
upd: ещё нужно уметь получать для произвольной точки, лежащей на этой полилинии, цвет.