c# - 如何使用 C# 中给定顶点的高度找到三角形中点的高度?
问题描述
正如标题所示,我试图在给定三角形顶点高度的情况下找到三角形中任意点的高度。三角形将是高度图中的多边形,而我需要找到的点将是我需要分配给玩家的高度。
我已经搜索了重心坐标和双线性插值等方法,但我似乎无法找到如何使用 C# 实际实现它们。
这是我要查找的内容的视觉效果:
我正在尝试使用顶点的高度来查找红点的高度,在本例中为 4、5 和 2
解决方案
我将从一个通用的三角射线相交算法开始。假设您的点位于 x,y 坐标中,您将使用 origin = x,y,0 和方向 0,0,1。然后,您可以简化一堆操作,因为您会知道某些参数始终为零。
可能有一些聪明的数学可以用来让它更快,但这是我会采用的方法,性能可能更多地取决于将三角形放在一些快速搜索结构中,而不是优化交叉测试。
推荐阅读
- c# - 如何使用适用于 Windows、Linux 和 macOS 的 .NET Core 3.1 测量进程的 CPU 使用率和内存?
- java - HashSet 重新排序信息,我该怎么做才能不被重新排序?
- python-3.x - Git 子模块:git@github.com:权限被拒绝(公钥)。致命:无法从远程存储库中读取
- c++ - C++ - 当 x = 1.4 和 y = 5.8 时,算法检查 (x * y + x + y) / (xy) 的值
- android - 你能依赖从多行插入返回的 Android 房间 ID 的顺序吗
- c# - C# 编译 .net-core 3.1 可移植
- vba - 从一批 MS-Access 数据库中读取表元数据
- oracle - 如何在 ODI 12c 的映射中使用 Oracle 查询
- quarkus - 如何在 Quarkus 中配置多个外部 «application.properties»?
- sql - 正确处理 Microsoft SQL Server 上的循环级联/设置 null 功能