【发布时间】:2022-10-16 16:47:14
【问题描述】:
我想创建一个while循环翻译一些实体十字路口彼此。但是Entity.Intersects() 方法是受保护的。有没有其他解决方案可以找到与 Eyeshot 方法的交叉点?
我的实体是 XY 平面中的 Region。
(我还通过将我的区域转换为网格来尝试UtilityEx.DoOverlap(Mesh, Mesh),但它不起作用,因为我可以在我的 Eyeshot 模型中看到我的实体的重叠区域。)
public static void MoveIntersectedEntity(List<Mesh> mainList, ref Mesh movingMesh, bool moveUp = false)
{
for (int i = 0; i < mainList.Count; i++)
{
while (UtilityEx.DoOverlap(mainList[i],movingMesh))
{
if (moveUp)
movingMesh.Translate(0,2,0);
else
movingMesh.Translate(0,-2,0);
}
}
}
【问题讨论】:
标签: c# intersection eyeshot