旋转长方形后,如何计算其相对于画布左上角的轴距?

旋转长方形后,如何计算其相对于画布左上角的轴距?

绘制长方形并旋转,计算旋转后轴距

在拥有 1920×1080 画布中,放置一个宽高为 200×20 的长方形,其坐标位于 (100, 100)。当以任意角度旋转长方形时,如何计算它相对于画布左上角的 x、y 轴距?

以下代码提供了一个计算旋转后长方形轴距的解决方案:

const x = 200;
const y = 90;
const w = 200;
const h = 20;
const r = 80;

const x1 = x + ((w / 2) - (w / 2) * math.cos(r * math.pi / 180));
const y1 = (y + (h / 2)) - (w / 2) * math.sin(r * math.pi / 180);

其中:

  • x 和 y 为长方形旋转前相对于画布左上角的 x、y 坐标。
  • w 和 h 为长方形的宽高。
  • r 为旋转角度,单位为度数。
  • x1 和 y1 为旋转后的长方形相对于画布左上角的 x、y 坐标。

旋转长方形后,计算其轴距的代码如下:

const dx = x1 - x;
const dy = y1 - y;

以上就是旋转长方形后,如何计算其相对于画布左上角的轴距?的详细内容,更多请关注其它相关文章!