Я хочу реализовать идеальный детектор столкновения пикселя между двумя или более QGraphicsItem
. Класс QGraphicsItem
предоставляет детектор столкновения с использованием объектов QPainterPath
, поэтому теперь я хочу загрузить изображение из файла в QPainterPath
только с непрозрачными пикселями (сделать точную форму непрозрачных пикселей), таким образом, я могу использовать QGraphicsItem
' собственный детектор столкновения для создания идеального детектора столкновений. Я хотел знать, есть ли способ сделать этот трюк?QGraphicsItem Pixel Perfect Collision Detector
1
A
ответ
1
Вы можете использовать QGraphicsPixmapItem при использовании изображений с альфа-каналом. Использовать
QGraphicsPixmapItem::shapeMode(QGraphicsPixmapitem::MaskShape)
Это извлекает маску на основе альфа-канала для создания фигуры.