qt qgraphicsitem用来实现 ----碰撞检测的功能,如小游戏等等

qt qgraphicsitem用来实现 ----碰撞检测的功能,如小游戏等等,第1张

三个碰撞检测函数

该图形项是否与指定的图形项碰撞

bool QGraphicsItem::collidesWithItem(const QGraphicsItem *other, Qt::ItemSelectionMode mode = Qt::IntersectsItemShape) const

该图形项是否与指定的路径碰撞

bool QGraphicsItem::collidesWithPath(const QPainterPath &path, Qt::ItemSelectionMode mode = Qt::IntersectsItemShape) const

返回所有与该图形项碰撞的图形项的列表

QList<QGraphicsItem *> QGraphicsItem::collidingItems(Qt::ItemSelectionMode mode = Qt::IntersectsItemShape) const

其中,参数 Qt::ItemSelectionMode 有4个值

Qt::ContainsItemShape :只有图形项的shape被完全包含时;
Qt::IntersectsItemShape :当图形项的shape被完全包含时,或者图形项与其边界相交;
Qt::ContainsItemBoundingRect : 只有图形项的bounding rectangle被完全包含时;
Qt::IntersectsItemBoundingRect :图形项的bounding rectangle被完全包含时,或者图形项与其边界相交。


(常用)

可以用来实现游戏等功能,但一般人还是喜欢自定义碰撞检测函数,如果要做简单的小游戏用这些qt自实现的函数还是很方便的

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/578930.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-11
下一篇 2022-04-11

发表评论

登录后才能评论

评论列表(0条)

保存