【问题标题】:Can QVariant be used with QMatrix4x4 and QVector3D etcQVariant 可以与 QMatrix4x4 和 QVector3D 等一起使用吗
【发布时间】:2020-06-14 11:28:05
【问题描述】:

tldr: 我注意到QMatrix4x4QVector3D(和QVector2D)都有这个功能:

QVariant QMatrix4x4::operator QVariant() const

有没有办法将QVariant 的值作为QMatrix4x4QVector2D 获取?

上下文:

我正在使用 Qt 和 OpenGL 制作一个“游戏引擎”(这更多是为了学习如何做到这一点)。而且我正在自动解析着色器以查找制服并创建一个 QObject 类以具有信号和插槽来以这种方式更新制服。由于无法混合模板和 Q_OBJECT,我认为我的统一绑定器类需要使用 QVariants

提前感谢您的宝贵帮助。

【问题讨论】:

    标签: c++ qt opengl


    【解决方案1】:

    假设 v 是从 QMatrix4x4 创建的 QVariant,那么 QMatrix4x4 matrix = v.value<QMatrix4x4>(); 就是您所需要的;使用v.value<QVector3D>();,同样的事情对QVector3D 有效。

    欲了解更多信息:QVariant#value

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-26
      • 1970-01-01
      • 2018-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多