【发布时间】:2022-02-12 19:35:03
【问题描述】:
我在 Unity3D 上工作,我有一个 Vector3 数组,这个数组是多边形的顶点。 现在我尝试在多边形内生成一个随机点,但我不知道我有多少个顶点。
例如:
polygonBorders = new Vector3[3];
polygonBorders[0] = new Vector3(35.3f, 1.3f, -20.1f);
polygonBorders[1] = new Vector3(35.3f, 1.3f, -3.42f);
polygonBorders[2] = new Vector3(52.11f, 1.3f, -3.42f);
这是我的多边形,我想要这样的方法:
Vector3 GeneratePointInsidePolygon(Vector3[] polyogn, Vector3 point)
我尝试在整个互联网上寻找解决方案,但没有解决方案或库
【问题讨论】:
-
stackoverflow.com/questions/19481514/… ?它适用于 Java,但概念保持不变 => 将多边形分解为三角形 -> 在三角形区域上选择随机三角形 weighted -> select random point within triangle(同样是 java example,但他的概念保持不变)