SpotLight

SpotLight[col,pt,α]

是一个用于对 3D 曲面着色的三维图形指令,它指定位置 pt 处颜色为 col 的聚光灯,以半角 α 瞄准中心.

SpotLight[col,{pt1,pt2},α]

使用位置 pt1 处的聚光灯,以半角 α 瞄准 pt2.

SpotLight[col,{pt,tar},{α,s},att]

使用聚光指数为 s 和衰减为 att 的聚光灯.

更多信息

  • SpotLight 亦称为探照灯.
  • SpotLight 通常用于将以锥形向外扩散的光线投射到物体上来创建强烈的照明.
  • SpotLight[col,{pt1,pt2},α] 产生从点 pt1 发出,但被限制于锥形内的光线,方向从点 pt1 指向 pt2,半角为 ,单位为弧度.
  • 光源 col 的颜色可以由 RGBColorHue 或任何其他颜色规范定义.
  • SpotLight 的设置只影响与 3D 曲面上的漫反射和镜面反射相关的颜色.
  • 颜色指定形式为 {dcol,Specularity[scol]} 的光源在漫反射情况下实际上被视为颜色是 dcol 的光源,而在镜面反射情况下则被视为颜色是 scol 的光源.
  • 漫反射遵循朗伯定律,光实际上从曲面的各个方向均匀散射.
  • 镜面反射实际上认为光只在接近镜面反射的方向上散射,如 Specularity 的注释中所述.
  • 可用以下方式指定光源位置和瞄准点 pti
  • {x,y,z}随图形移动的显式坐标
    Scaled[{x,y,z}]随图形移动的缩放坐标
    ImageScaled[{x,y,z}]相对于最终显示的图像固定的坐标
  • ImageScaled[{x,y,z}] 中,在最终显示图像的边界框的宽度和高度上, 从 0 到 1. 坐标垂直于显示的平面,在 3D 区域的后面为 0,前面为 1.
  • ScaledImageScaled 中指定的坐标通常不在 0 和 1 之间.
  • SpotLight[col,{pt,tar},{α,s}] 给出按 从锥体中心衰减的光.
  • SpotLight[col,{pt,tar},{α,s},{a,b,c}}] 给出随距离 衰减的光.

范例

打开所有单元关闭所有单元

基本范例  (3)

照在曲面上的聚光灯:

设置绘图中曲面的样式:

从镜面曲面顶部照射的聚光灯:

范围  (7)

照明规范  (5)

用位置、目标位置和半角指定聚光灯:

不同颜色的聚光灯:

不同位置的聚光灯:

不同半角的聚光灯:

照射到镜面曲面上的聚光灯:

光的衰减  (2)

默认情况下,在圆锥外聚光灯的光照急剧下降:

聚光指数 不同的聚光灯的光照强度为

不衰减的聚光灯:

线性衰减的聚光灯:

二次衰减的聚光灯:

推广和延伸  (2)

指定每个物体的照明:

指定图形的照明:

应用  (3)

在平面上设置四个白色球体:

聚光灯:

拐角处的不同照明设置:

构建具有多个物体和光源的场景:

用动画显示聚光灯:

属性和关系  (1)

聚光灯向指定方向发射锥形光线:

可能存在的问题  (2)

默认的照明方案使用多种彩色光源:

Lighting 设为 None 关闭默认照明:

照射在球体上的聚光灯可能会显示锯齿状边界:

增大聚光指数可能改善效果:

巧妙范例  (1)

为圆环模型设置随机光照:

Wolfram Research (2021),SpotLight,Wolfram 语言函数,https://reference.wolfram.com/language/ref/SpotLight.html.

文本

Wolfram Research (2021),SpotLight,Wolfram 语言函数,https://reference.wolfram.com/language/ref/SpotLight.html.

CMS

Wolfram 语言. 2021. "SpotLight." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/SpotLight.html.

APA

Wolfram 语言. (2021). SpotLight. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/SpotLight.html 年

BibTeX

@misc{reference.wolfram_2024_spotlight, author="Wolfram Research", title="{SpotLight}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/SpotLight.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_spotlight, organization={Wolfram Research}, title={SpotLight}, year={2021}, url={https://reference.wolfram.com/language/ref/SpotLight.html}, note=[Accessed: 22-November-2024 ]}