【问题标题】:forwarding (drawing) line in 3d grid3d 网格中的转发(绘图)线
【发布时间】:2014-07-29 13:31:33
【问题描述】:

我需要类似 Bresenham 算法的东西,但是 不完全是 3d 网格空间。

我需要 3d 单元格网格(边缘尺寸 1.0) 从 S 点开始并前进到 K 点“接触” 线接触的所有单元格(即使只有边缘 点被触摸我需要触摸所有 8 个单元格)。

需要使用它来遍历写入值到 单元格或从单元格中读取值并需要 它尽可能快地管理(它将是巨大的 使用每帧绘制数百万条这样的 3d 网格线)。

有人能说说它的样子吗?

【问题讨论】:

  • 什么都没想到,我可以使用小步迭代的肮脏方法,但它会很慢并且可以跳过一些单元格
  • 你说得对。tnx.. 虽然如果有人想打广告,但有一些解决方案可以随意在这里打广告,因为提到的代码看起来很复杂,没有比这更简单的了吗?
  • 3D Bresenham 并不是一个简单的算法...
  • (想为您的链接投票(因为这也很有用)但意外撤消,不能在这里投票),regz

标签: c algorithm graphics 3d


【解决方案1】:

考虑使用 Woo 和 Amanatides 网格遍历算法:文章"Fast Voxel Traversal Algorithm..."

实际实现在grid traversal section here

二维案例说明:

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2020-03-12
  • 2021-10-28
  • 1970-01-01
  • 1970-01-01
  • 2021-07-30
  • 1970-01-01
  • 2017-11-30
  • 1970-01-01
相关资源
最近更新 更多