代码之家  ›  专栏  ›  技术社区  ›  knuckfubuck Marty

将线条的绘制限制为45度角

  •  0
  • knuckfubuck Marty  · 技术社区  · 15 年前

    我有起点(x1,y1)和所需的直线长度和角度。

    如果角度是方向,0度是w,90度是n,180度是e,270度是s。如果需要,我可以修改这个。

    如何使用起点、长度和角度确定终点(x2、y2)?

    2 回复  |  直到 15 年前
        1
  •  4
  •   Mark Byers    15 年前

    屏幕:

    对于w=0,n=90,e=180,s=270:

    x2 = x1 - length * cos(angle)
    y2 = y1 - length * sin(angle)
    

    对于e=0,n=90,w=180,s=270:

    x2 = x1 + length * cos(angle)
    y2 = y1 - length * sin(angle)
    

    注意,您需要确保cos的实现是以度数而不是弧度工作的,否则您将得到奇怪角度的线。

        2
  •  7
  •   abc    15 年前

    x2=x1+长度 cos(角度)
    y2=y1+长度
    罪(角)

    在这种情况下,角度逆时针增大,0指向正x。x轴向右增大,y轴向上。