我目前正在学习libGDX,并在做网格物体。我需要给视频卡一些三角形以进行渲染。
我当前的任务是这样。在“盒子”的某些点上有几个矩形(每个矩形都有起点,宽度和高度),将矩形的外部分成矩形本身。在拥有这些小矩形之后,我可以将它们分成三角形并轻松渲染。像这样。
具有蓝色矩形信息。我需要这样的东西。在用橙色勾勒出这些矩形后,我可以将它们划分为三角形并轻松渲染。
我的方法是这样。从每个矩形的顶部和底部“绘制”水平线,直到到达框的墙或其他矩形的墙。这样做,字段将被分隔成这样的矩形 基本上这就是我所需要的。 当前无法想象编程方法。任何帮助将不胜感激。谢谢。 我将用Java实现它。
答案 0 :(得分:1)
您绘制的内容分为两个步骤。
第1步通常称为“梯形分解”,您可以在Google上搜索很多深度信息。进行梯形分解:
只需在每个梯形的相对角上增加一个切削刃,就可以将水平梯形的水平条轻松地转换为三角形条,但是要获得所需的绘制,则需要第二步。
在步骤2中,您将经过成对的相邻条带,并在可能的情况下组合它们的梯形。这样可以将每个矩形的所有部分合并在一起,并消除大矩形的任一侧上的细条,从而完全保留您绘制的条分解。