Ластик QGraphicsPathItem / Разделение QGraphicsPathItem на два новых

Я работаю над приложением, использующим Qt5, в котором вы можете от руки рисовать произвольные фигуры в векторной графике, перемещать их и частично удалять части (как ластик в краске Microsoft).

Я рисую фигуры в QGraphicsScene , добавляя QGraphicsPathItem и перемещаю их с помощью флага QGraphicsItem :: ItemIsMovable . Остается вопрос о ластике.

Кто-нибудь сталкивался с задачей частичного удаления QGraphicsPathItem ? Особенно в ситуации, когда мы разделяем фигуру на две (или более) части с помощью ластика, и они должны стать отдельными новыми QGraphicsPathItem ? Возможно ли это реализовать?

Спасибо за любую помощь!

1 ответ

По совпадению я делаю аналогичное приложение. В моем приложении используется только рисование d0freehand. Я использую события мыши для добавления или стирания. Я начал с этого и много изменил. Я использую буфер выбора для выбора объекта и использую матрицы для их перемещения.

Чтобы ответить на ваш вопрос, для частичного стирания:

  • Разделить предыдущий элемент на два элемента
  • Удалить предыдущий элемент.
  • Перерисуйте новинки.
Другие вопросы по тегам