ElevationGrid 的色域

color field of ElevationGrid

我正在尝试将 3d 点云转换为 ElevationGrid 节点。

云的每个点都有一种颜色,所以我想我可以使用 ElevationGrid 的 color 和 colorPerVertex 字段,但我不认为 Webots 会渲染这些颜色。

我错过了什么?

我测试的实体节点是:

Solid {
  children [
    Shape {
      geometry DEF BB ElevationGrid {
        color Color {
          color [
            1 1 1
            0 0 0
            1 1 1
            0 0 0
            1 1 1
            0 0 0
          ]
        }
        height [
          0, 0.1, 0, 0.1, 0, 0.1
        ]
        colorPerVertex FALSE
        xDimension 3
        zDimension 2
      }
    }
  ]
}

这似乎是 Webots R2019a 中的一个错误。根据 documentation,它应该按您预期的那样工作。但是色域似乎被忽略了。我建议您采用以下解决方法:生成一个包含您需要的颜色的纹理并将该纹理映射到 ElevationGrid 节点(您需要将一个 Appearance 节点添加到 Shape 节点才能实现)。