在 QLine 周围绘制 QRect

问题描述

这个问题更多的是关于代数而不是编程,但也许我会在这里找到一些帮助:) 我正在尝试在给定偏移量的 QLine 周围创建一个 QRect(见下图)。有了线段AB和偏移量,如何找到所有缺失的点来创建QRect?

enter image description here

解决方法

假设您没有轮换,那么您可以观察到:

您的线是在两个二维点上绘制的: 让我们命名那些 Pa 和 Pb

更具体地说

Pa is defined as Pa_x,Pa_y
Pb is defined as Pb_x,Pb_y

现在:

the point F is located at Pa_x-X;Pa_y-X
the point D is located at Pb_x+X;Pb_y+X

在qt中你可以用这2个点绘制一个矩形

如果包括旋转,那么您可以做一点三角学并使用 cos(theta) sin(theta) 来获得真实 x;y 平面中的那些投影