照明屬性#

控制渲染網格照明的各個方面,例如環境光、漫射光和鏡面反射光。這些選項僅在 add_meshlighting 參數為 True 時才有效(預設為 True)。

您可以透過傳遞 lighting=Falseadd_mesh 來關閉指定網格的所有照明。

# sphinx_gallery_thumbnail_number = 4
import pyvista as pv
from pyvista import examples

mesh = examples.download_st_helens().warp_by_scalar()

cpos = [
    (575848.0, 5128459.0, 22289.0),
    (562835.0, 5114981.5, 2294.5),
    (-0.5, -0.5, 0.7),
]

首先,讓我們看一下預設照明條件下的網格

mesh.plot(cpos=cpos, show_scalar_bar=False)
plot lighting

沒有照明會怎麼樣呢

mesh.plot(lighting=False, cpos=cpos, show_scalar_bar=False)
plot lighting

鏡面反射屬性的示範

p = pv.Plotter(shape=(1, 2), window_size=[1500, 500])

p.subplot(0, 0)
p.add_mesh(mesh, show_scalar_bar=False)
p.add_text("No Specular")

p.subplot(0, 1)
s = 1.0
p.add_mesh(mesh, specular=s, show_scalar_bar=False)
p.add_text(f"Specular of {s}")

p.link_views()
p.view_isometric()
p.show(cpos=cpos)
plot lighting

僅有鏡面反射

mesh.plot(specular=0.5, cpos=cpos, show_scalar_bar=False)
plot lighting

鏡面反射強度

mesh.plot(specular=0.5, specular_power=15, cpos=cpos, show_scalar_bar=False)
plot lighting

示範三者同時使用

mesh.plot(diffuse=0.5, specular=0.5, ambient=0.5, cpos=cpos, show_scalar_bar=False)
plot lighting

腳本總執行時間: (0 分鐘 10.601 秒)

預估記憶體使用量: 246 MB

由 Sphinx-Gallery 生成的範例展示