如何降低或消除R语言rgl包3D绘图中球体的高光光泽度
R语言rgl包消除3D球体高光的解决方案
rgl中3D物体的高光效果由specular材质参数控制,你之前仅调整shininess参数只能修改高光区域的大小,无法彻底消除高光。要完全去掉球体的光泽效果,直接将specular参数设置为黑色即可。
修改后的完整代码如下:
library(rgl) # 构建示例数据 df <- data.frame(x=c(1,3,-3,-2), y=c(2,5,2,1),z=c(1,7,4,1)) open3d() plot3d(df,col=3,type="p", radius=0.5) # 新增specular = "black"参数即可完全消除高光 plot3d(df,col=rgb(1,0,0.3),alpha=0.5, add=T,type="s",radius=1, specular = "black")
补充说明:
- 若不需要完全消除高光,只是要减弱光泽效果,可将
specular设置为不同亮度的灰色,例如specular = "gray20",可灵活调整高光强度 shininess参数控制的是高光区域的扩散程度,数值越大高光区域越小,和specular参数配合可以调出多种不同的材质质感
内容的提问来源于stack exchange,提问作者user3236841
相关产品推荐
相关产品推荐

