首页 > 解决方案 > 只有3个唯一顶点的r rgl quads3d不显示颜色

问题描述

R 3.5.1 rgl 0.99.16 Windows 10 版本 1809 内部版本 17763.195

在某些情况下(我认为如果是两个内部点),如果提供给 a 的四个点中quads3d()有两个相同,则生成的形状不会显示其指定的颜色,而是黑色。在以下示例中,请注意第二点和第三点是相同的:

q1 <- matrix(c(-0.35, 0, -0.5,
                0.35, -0.5, 0,
                0.35, -0.5, 0,
               -0.35, 0, 0.5),
             byrow=TRUE,
             ncol=3,
             dimnames=list(c("C0", "Cl", "Dl", "D0"), c("x", "y", "z")))

quads3d(x=q1[,"x"], y=q1[,"y"], z=q1[,"z"], color="blue", alpha=1)

此代码生成一个三角形(应该如此,请参见屏幕截图),但它始终是黑色的。对象应该是蓝色的。仅更改坐标会产生蓝色形状。

我可以解决这个问题,但我会称之为错误。我认为 quads3d 应该在传递给它的四个点中只有三个是唯一的情况下正常工作 - 这不违反文档(它全部在一个平面和凸面)。我在这里报告它,以防任何人有关于它的有用信息,以及未来的搜索者。

谢谢。

标签: rcolorsrgl

解决方案


推荐阅读