找到二维三角形的中心

(是的,不幸的是,这是一个家庭作业问题)

我已经获得了一个带有x和y坐标的二维三角形结构,一个旋转变量,等等。 从那些x和y坐标创建的点,我应该在点周围绘制一个三角形并使用旋转变量适当地旋转它。

我熟悉使用GL_TRIANGLES在OpenGl中绘制三角形。 我的问题是以某种方式提取三角形的中间并在其周围绘制顶点。

我希望我已经措辞得当,因为我有点困惑。

谢谢。

编辑:是的,我要找的是质心。

三角形的中心有不同的“类型”。 详细信息: 三角中心 。 找到三角形中心的快速方法是平均所有点的坐标。 例如:

GLfloat centerX = (tri[0].x + tri[1].x + tri[2].x) / 3; GLfloat centerY = (tri[0].y + tri[1].y + tri[2].y) / 3; 

找到中心后,您需要围绕中心旋转三角形。 要执行此操作,请翻译以使中心位于(0,0)。 执行轮换。 现在反转您之前执行的翻译。

我想你的意思是三角形的质心!?
这可以通过1/3(A + B + C)容易地计算,其中A,B和C是三角形的各个点。 如果你有分数,你可以像往常一样将它们乘以旋转矩阵。 希望我帮到你。

三角形中有几个点可以被认为是它的中心(正中心,质心等)。 维基百科关于三角形的文章的这一部分有更多信息。 只需查看图片即可快速浏览。

“中间”是指“质心”,如果它是一个厚度和密度恒定的三维物体,又称重心?

如果是这样,那么选择两个点,找到它们之间的中点。 然后取这个中点和第三个点,找到它们之间的距离的1/3(更接近中点)。 那是你的质心。 我不是在为你做数学。