我正在C#中製作一個Windows窗體程序,圖像以45度角在窗口中反彈。我需要幫助的部分是我必須製作程序,然後用戶可以調整圖像在0度和90度之間反彈的角度。我想不出一個簡單的方法來做到這一點,我真的需要幫助。C#彈跳球角度變化
這是我到目前爲止的計時器代碼。 intSideposition
是圖像的左側值。 intTopPosition
是圖像的最大值。 intLeftSpeed
是圖像的水平速度。 intTopSpeed
是圖像的垂直速度。 817和380是圖像將反彈的窗口的邊界。目前圖像將以45度角反彈。
//Moves the label by a factor of whatever intLeftSpeed is
intSidePosition = intSidePosition + intLeftSpeed;
intTopPosition = intTopPosition + intTopSpeed;
this.lblSprite.Left = intSidePosition;
this.lblSprite.Top = intTopPosition;
//Checks if the sprite has hit the boundaries of the window, causing it to bounce
if (this.lblSprite.Left <= 0)
{
intLeftSpeed = intLeftSpeed * -1;
}
else if (this.lblSprite.Left >= 817)
{
intLeftSpeed = intLeftSpeed * -1;
}
else if (this.lblSprite.Top >= 380)
{
intTopSpeed = intTopSpeed * -1;
}
else if (this.lblSprite.Top <= 0)
{
intTopSpeed = intTopSpeed * -1;
}
lblAngle.Text = intAngle.ToString();
向我們展示一些代碼總是有幫助 – vdbuilder
如果這是作業,請標記爲這樣。 – Aaron
不關閉它,那是我學習計算機圖形時最喜歡的一個... –