Qt中位置和角度的二维图

2D plot of position and angle in Qt

我已经为汽车制作了一个控制器,目前正在尝试在 Qt 中为该控制器制作一个 GUI。 我现在唯一缺少的是汽车相对于起点的位置和角度的可视化。

我想做这样的东西:

圆圈代表汽车,圆圈代表汽车heading/angle。

一个额外的奖励功能是在它移动时对其路径有淡淡的痕迹,但如果我掌握了基础知识,我应该能够自己解决这个问题。

我已尝试查看一些情节示例,但无法推断出解决问题所需的条件。

你建议如何实施这样的事情?

:

I have all the measurements

所以让我们假设您有 Euler angles 这样您就可以过滤掉 roll 的变化而只考虑 φ 的变化。

为此,您需要扩展一个 QWidget 添加一个成员 φ,我们将其命名为:m_phi。我们还需要将您的 QPixMap 添加为成员,我们将其称为 m_px。你将覆盖 QWidget::paintEvent.

paintEvent(qPaintEvent* /*event*/) {        
    if(!m_px.isNull()) {
        QPainter* p;

        p.setRenderHint(QPainter::Antialiasing);
        p.translate(width() / 2.0, height() / 2.0);
        p.save();
        p.rotate(m_phi);

        QRect r = m_px.rect();

        r.moveCenter(QPoint());
        p.drawPixmap(r, m_px);
        p.restore();
    }        
}