【问题标题】:Drawing a rectangle with a certain angle of degree画一个一定角度的矩形
【发布时间】:2016-03-19 19:52:02
【问题描述】:

我正在使用 Windows Visual Studio 2015 Winforms 在面板上绘制矩形。 我从对象(砖块)列表中获取我的信息。我只是检查每块砖的旋转:

我的积木包含以下信息:

    string ID;
    PointF MiddlePoint;
    float Length;
    float Height;
    float Rotation;

创建具有 90/270 度角的矩形。

if (a_BrickList[i].Rotation == 90 || a_BrickList[i].Rotation == 270)
{
      UpperLeftPoint.X = Xorigin + (a_BrickList[i].MiddlePoint.X - (a_BrickList[i].Length / 2) + panelOffset) * scale;
      UpperLeftPoint.Y = Yorigin - (a_BrickList[i].MiddlePoint.Y + (a_BrickList[i].Height / 2) + panelOffset) * scale;
      rect = new RectangleF(UpperLeftPoint.X, UpperLeftPoint.Y, Length, Height);
      GlueRectangles[i] = rect;
}

我添加了另一个 if 语句:

 if (a_BrickList[i].Rotation != 0 && a_BrickList[i].Rotation != 180 &&
     a_BrickList[i].Rotation != 90 && a_BrickList[i].Rotation != 270)

在这个我想画一个一定角度的矩形。但我真的找不到关于rectanglerotateangle 的任何信息。

那么有没有办法画出一定角度的矩形呢?

或者我只能通过计算矩形的 4 个点并在它们之间画线来解决这个问题吗?

【问题讨论】:

  • 你用的是哪个绘图框架?
  • 您在使用 GDI+ 吗?真的不清楚。
  • 我正在使用 Visual Studio 2015
  • 根据定义,矩形的所有角度都应为 90 度。因此,如果您需要它具有其他角度 - 它是平行四边形,请逐行绘制。
  • 含糊的问题,含糊的答案...您的意思是要以指定的角度旋转矩形吗? stackoverflow.com/questions/18402311/draw-rotated-rectangle

标签: c# winforms draw rectangles drawrectangle


【解决方案1】:

这取决于您使用的绘图环境。

例如,如果您使用 HTML5 画布,您可以旋转画布,绘制矩形,然后将画布返回到原始位置,得到“旋转”的矩形。

您应该查看您的环境文档以获取更多信息或在问题中提供更多信息,以便我们为您提供帮助。

【讨论】:

猜你喜欢
  • 2014-01-04
  • 2018-10-03
  • 2017-03-21
  • 2015-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-09
相关资源
最近更新 更多