2012-06-06 66 views
-1

是否有这样的代码公式?我使用C#和XNA,并且在我的类中,我有一个由三个向量组成的数组(代表三角形的顶点)以及一个单独的向量坐标。基于半径和中心坐标指定三角形的顶点

我打算更新这些在循环中的位置,因为它进一步升级到屏幕的顶部。

我想问maths.stackexchange.com,但看到这是如何适用于编程(我个人更擅长阅读代码而不是数学本身 - 我仍然在学校代数),我认为它对我来说在这里提出这个问题会更有意义。

编辑 是的,我正在寻找一个等边三角形。或者任何三角形,就此而言。它并不重要。我所寻找的只是一个公式;难以要求吗?

德问题

基本上,我试图解决的问题是要拍一个三角形了我的球员(认为太空侵略者;即,三角形作为从光线枪射线) 。我需要的是一个代码公式,它将允许三角形根据其中心位置和半径进行渲染,因为三角形会在其坐标上向上移动。我有绘制调用,他们的工作,但问题是,当放在一个for循环绘制迭代(其中中心向量位置 - 在Y坐标 - 增加N)简单地坐在旁边的玩家绘制时的位置。

+0

你在问等边三角形吗?否则很难说,除非你至少可以更多地了解两个边的尺寸,加上其中一个点的起始角度(假设顶部为0),可能要用弧度跟踪边,以便缩放随着半径的增长而变得自动。如果你有2弧度,那么你就可以从中计算出点数。你可能会考虑在学校问一位数学老师,因为你现在已经走过了代数学。我相信他们很乐意提供帮助。 –

+0

除非您已决定并制定解决数学问题,否则不能编写数学问题的代码。很明显,你甚至没有走过那么远。通常,能够清楚描述你想要做什么的简单行为将帮助你编写你需要的代码。但是直到你理解你想解决的问题,你才能做到这一点。 – 2012-06-06 09:34:33

+0

这个问题和它的标题很混乱。如果有三个向量表示三角形的顶点,为什么你必须从三角形的外接圆的中心和半径(我认为是)指定它们? –

回答

1

我认为这是你在找什么... 角度是三角形的方向...... 此建立一个三角形....

void BuildTriangle(Vector2 Center, float Radius, float Angle, Vector2[] tri) 
{ 
    for (int i=0; i<3; i++) 
    { 
     t[i].X = Center.X + Radius * (float) Math.Cos(Angle + i * 2 * MathHelper.PI/3); 
     t[i].Y = Center.Y + Radius * (float) Math.Sin(Angle + i * 2 * MathHelper.PI/3); 
    } 
} 

,如果你想将它移到,向中心添加一个速度矢量并重建它...

相关问题