C# C随风旋转箭头

C# C随风旋转箭头,c#,C#,我试着旋转一个箭头,然后把它放在指南针图像中,以指示风向。一开始我用的是一个点,它在工作,但现在用箭头,它有时指向错误的方向。下面是我用来旋转图像并将其围绕一个圆放置的代码。问题在于图像旋转 问题是,背面图像是静态的,一个有刻度的圆,我过去只是在风的程度上放置一个点,但是现在我想把箭头放在圆的边缘上,表示我使用代码位图IMAGEMRODADA=RoTaTimeEngEnWesta,Wangl度+ 90的方向。但箭头并没有指向我想要的方向,在这个链接中有一个例子,我正试图做相同的风向 不管是谁投了

我试着旋转一个箭头,然后把它放在指南针图像中,以指示风向。一开始我用的是一个点,它在工作,但现在用箭头,它有时指向错误的方向。下面是我用来旋转图像并将其围绕一个圆放置的代码。问题在于图像旋转

问题是,背面图像是静态的,一个有刻度的圆,我过去只是在风的程度上放置一个点,但是现在我想把箭头放在圆的边缘上,表示我使用代码位图IMAGEMRODADA=RoTaTimeEngEnWesta,Wangl度+ 90的方向。但箭头并没有指向我想要的方向,在这个链接中有一个例子,我正试图做相同的风向


不管是谁投了反对票,请解释。这家伙提供了代码。你的代码没有注释来解释你在每一步都在做什么。如果有英文的变量名也很好。他没有清楚地解释什么不起作用。你提到过它曾经和一个点一起工作,你的代码看起来像是在计算那个点的位置。math.cos和math.sin函数是从角度+距离获取x和y坐标的众所周知的方法。但是,如果您正在绘制旋转的图像,则不需要任何这些!您需要围绕图像的中心旋转图像,并在罗盘的精确中心绘制图像。图像的x和y需要固定,只有图像的旋转受到风向的影响。如果您想获得问题的完整答案,请发布更多详细信息。为问题添加了更多信息
if (Convert.ToInt32(wind_kph) > 0)
{
    Image image1 = Image.FromFile(arquivo_display);
    Image image2 = Image.FromFile(@"C:\Users\red\Desktop\arrow-06.png");
    Bitmap newPonto = (Bitmap) new Bitmap(image1);
    Bitmap newSeta = (Bitmap) new Bitmap(image2);
    image1.Dispose();
    image1 = null;
    image2.Dispose();
    image2 = null;
    using (Graphics g = Graphics.FromImage(newPonto))
    {
        Double distanceFromCenter = 45;
        Bitmap imagemrodada = rotateImage(newSeta, wind_degrees + 90);
        Console.WriteLine(wind_degrees + 90);
        Double angleInDegrees = wind_degrees - 90;
        Double angleAsRadians = (angleInDegrees*Math.PI)/180.0;
        Double centerX = 95;
        Double centerY = 95;
        Double x = centerX + Math.Cos(angleAsRadians)*distanceFromCenter;
        Double y = centerY + Math.Sin(angleAsRadians)*distanceFromCenter;
        g.DrawImageUnscaled(imagemrodada, Convert.ToInt32(x), Convert.ToInt32(y));
        newPonto.Save(arquivo_display);
        newPonto.Dispose();
        newPonto = null;
        newSeta.Dispose();
        newSeta = null;
       }