【问题标题】:Approaches for filling the volume of arbitrary 3D geometry with points用点填充任意 3D 几何体的方法
【发布时间】:2017-05-02 10:30:39
【问题描述】:

我希望用点填充任意网格的体积,以便生成的点形成原始几何图形的粗略形状。

我在网格采样方面遇到了this article,这看起来很有希望,但想看看是否有替代方法。请注意,尽管我希望实时执行此操作,但速度仍然优于准确性。

【问题讨论】:

    标签: opengl 3d geometry


    【解决方案1】:

    一种典型的方法是拒绝抽样。在对象周围放置一个边界框。在框中生成随机点。对于每个点 p,沿随机方向发射一条射线并计算与对象网格的交叉点。如果交叉数为奇数,则 p 在里面。

    这种方法有两个挑战。首先,如果您的对象仅填充了边界框体积的一小部分,那么您的大部分样本将被拒绝。其次,您需要强大的代码来计算光线交叉点。后者已经非常彻底地解决了。幼稚的方法很容易失败。

    更复杂的方法使用对象内部的随机游走,最终到达内部的随机位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-10
      • 1970-01-01
      • 1970-01-01
      • 2014-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多