首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >3D绘图中两个线段之间的填充区域{rgl}

3D绘图中两个线段之间的填充区域{rgl}
EN

Stack Overflow用户
提问于 2017-03-17 01:44:05
回答 1查看 408关注 0票数 1

我已经使用包{rgl}中的函数plot3d()创建了一个使用顶点坐标和线段的四面体。下面的代码使mentioned plot

代码语言:javascript
复制
library("rgl")
CCl4=c(5,5,5,10)
Luminol=c(0.01,0.001,0.005,0.005)
Na2CO3=c(0.01,0.01,0.1,0.05)

plot3d( Luminol, Na2CO3, CCl4, type = "s")

for(i in 1:4){
    for(k in 1:4){
                 segments3d(x=Luminol[c(i,k)],y=Na2CO3[c(i,k)],z=CCl4[c(i,k)])
                 }
        }

现在,我想要填充点之间的区域(最好使用RGB颜色,这样我就可以使用alpha值定义透明度),但我在rgl中没有找到类似polygon()的函数。有没有办法填满这个区域?

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-17 06:11:42

这就是你要找的东西吗?我并不完全清楚这个请求。我给每样东西都添加了颜色,以帮助弄清楚。

代码语言:javascript
复制
library("rgl")
CCl4=c(5,5,5,10)
Luminol=c(0.01,0.001,0.005,0.005)
Na2CO3=c(0.01,0.01,0.1,0.05)

clrs <- c("red","blue","green","darkgrey")

plot3d( Luminol, Na2CO3, CCl4, type = "s",col=clrs)

for(i in 1:4){
  clr <- clrs[i]
  for(k in (i+1):4){
      v <- c(i,k)
      segments3d(Luminol[v],Na2CO3[v],CCl4[v],color=clr)
  }
}

for (i in 1:4){
  clr <- clrs[i]
  v <- setdiff(1:4,i)
  triangles3d(Luminol[v],Na2CO3[v],CCl4[v],alpha=0.5,col=clr)
}

让步:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42841274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档