我正在尝试用 C++ 构建一个程序,该程序将按程序生成城市。 目前,城市由四边形 block 或三角形 block 的阵列表示。
我找不到将一个三角形(TBlock) segmentation 为一个矩形(QBlock)和三个三角形的有效方法。
想象一个三角形 ABC。我们有两个点 T 和 T',它们是线段 BC 的第一层和第二层。 现在我需要找到分别在 AB 和 AC 线段上的 P 和 P'。 P是AB与BC通过T的法线的交点。 P'是AB与BC通过T'的法线的交点。
我知道如何找到 T 和 T' 以及 vector BC 的向内法线,但我找不到计算通过 T 或 T' 的法线的方法。
谢谢!
最佳答案
鉴于您的 (BC) vector 是 (x, y),BC 的法 vector 是 (-y, x)。现在将法 vector 偏移T'的坐标,您将得到BC通过T'的法线。
关于c++ - 三角形中的矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16883593/