数学的奇异价值观

本文关键字:价值观 | 更新日期: 2023-09-27 18:00:29

大家好!我试图在c#中绘制sin函数7sin(3t)

PointF[] Points = new PointF[200];
int T = 20;   //t
Graphics gr;
private void calculatePoints()
        {
            gr = CreateGraphics();
            Brush brush = new SolidBrush(Color.Red);
            Pen pen = new Pen(brush, 3);
            float xk, yk;        
            //k for scaling
            yk = (float)((this.ClientRectangle.Height - 40)/2) / 7;  
            xk = (float)(this.ClientRectangle.Width - 40) / (Points.Length);
            for (int i = 0; i < Points.Length; i++)
            {    
                //here we go
                Points[i] = new PointF(20 + i * xk,
                                      this.ClientRectangle.Height/2 - (float) Math.Sin(3 * i * T) * 7 * yk);
            }
            gr.DrawCurve(pen, Points);
        }

所以我的曲线是这样的:https://i.stack.imgur.com/ucpOV.png

但是,例如,如果我把罪的论点乘以180,我会得到一个很好的情节。https://i.stack.imgur.com/K26KE.png

你能帮我吗?

数学的奇异价值观

Math.Sin取Radians。您可以使用yourNumber * Math.PI / 180转换为Radians。

数学新方法

Math.Sin参数需要以弧度为单位,而不是以度为单位。