52 void moveTo(
const QPointF&
p);
54 void lineTo(
const QPointF&
p);
56 void curveTo(
const QPointF& c1,
const QPointF& c2,
const QPointF&
p);
63 return (m_parametricCoords[type] + m_parametricCoords[(type + 1) % Size]) * 0.5;
67 QPointF segmentPointAt(Type type, qreal t)
const;
70 QPair<std::array<QPointF, 4>, std::array<QPointF, 4>> segmentSplitAt(Type type, qreal t)
const;
73 std::array<QPointF, 4> getSegment(Type type)
const;
76 QPainterPath getPath()
const;
81 QRectF boundingRect()
const;
84 std::array<QPointF, 4> getMidCurve(
bool isVertical)
const;
95 bool isDivisibleVertically()
const;
96 bool isDivisibleHorizontally()
const;
98 int countPoints()
const;
104 void addStop(
const QString& pathStr, QColor color, Type edge,
bool pathIncomplete =
false, QPointF lastPoint = QPointF());
107 void addStop(
const std::array<QPointF, 4>& pathPoints, QColor color, Type edge);
110 void addStopLinear(
const std::array<QPointF, 2>& pathPoints, QColor color, Type edge);
117 void setTransform(
const QTransform& matrix);
123 QPointF parseMeshPath(
const QString& path,
bool pathIncomplete =
false,
const QPointF lastPoint = QPointF());
124 const char* getCoord(
const char* ptr, qreal& number);