C# 从一个角度和长度得到一个向量?

C# 从一个角度和长度得到一个向量?,c#,vector,xna,C#,Vector,Xna,我正在研究一个怪物的视力(锥形),需要一种方法来画它。我从角度/距离得到的向量将围绕一个位置(怪物的位置)居中 使用C#/Xna,如果我有一个角度和距离(距离位置的长度),如何获得向量? 这个答案帮助我朝着正确的方向前进。代码现在看起来像: Vector2 vector = new Vector2((float)Math.Cos(angle) * distance + position.X, (float)Math.Sin(angle) * distance + position.Y);

我正在研究一个怪物的视力(锥形),需要一种方法来画它。我从角度/距离得到的向量将围绕一个位置(怪物的位置)居中

  • 使用C#/Xna,如果我有一个角度和距离(距离位置的长度),如何获得向量?
这个答案帮助我朝着正确的方向前进。代码现在看起来像:

Vector2 vector = new Vector2((float)Math.Cos(angle) * distance + position.X, (float)Math.Sin(angle) * distance + position.Y);

你会用到一些三角学

同样,假设
角度
是您的角度,以弧度为单位:

new Vector2((float)Math.Cos(angle), (float)Math.Sin(angle));
但是,如果需要以度为单位的角度,则可以使用
MathHelper.ToRadians
,如下所示:

float angleInRadians = MathHelper.ToRadians(angle);
new Vector2((float)Math.Cos(angleInRadians), (float)Math.Sin(angleInRadians));