is an option for Plot3D and related functions that specifies a function to apply to determine the effective surface normals at every point.
NormalsFunction
is an option for Plot3D and related functions that specifies a function to apply to determine the effective surface normals at every point.
Details
- The following settings can be given:
-
None determine normals from explicit polygon vertices Automatic determine normals from overall surface properties f determine normals by applying a function f - With NormalsFunction->f, the arguments supplied to f are as follows:
-
Plot3D x, y, z ParametricPlot3D x, y, z, u, v ContourPlot3D x, y, z, w RegionPlot3D x, y, z - The function f must return a vector of the form {vx,vy,vz}. Only the direction of this vector matters; the vector is in effect automatically normalized to unit length.
Examples
Basic Examples (3)
Use automatic methods to compute surface normals:
Plot3D[Sin[x + y ^ 2], {x, -3, 3}, {y, -2, 2}, NormalsFunction -> Automatic, Mesh -> None]Make the effective normals to the surface vary locally:
Plot3D[Sin[x + y ^ 2], {x, -3, 3}, {y, -2, 2}, NormalsFunction -> ({Sin[3#1], Cos[5#2], 1}&), Mesh -> None]Use flat shading for all polygons:
Plot3D[Sin[x + y ^ 2], {x, -3, 3}, {y, -2, 2}, NormalsFunction -> None, Mesh -> None]See Also
Related Guides
History
Text
Wolfram Research (2007), NormalsFunction, Wolfram Language function, https://reference.wolfram.com/language/ref/NormalsFunction.html.
CMS
Wolfram Language. 2007. "NormalsFunction." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/NormalsFunction.html.
APA
Wolfram Language. (2007). NormalsFunction. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NormalsFunction.html
BibTeX
@misc{reference.wolfram_2026_normalsfunction, author="Wolfram Research", title="{NormalsFunction}", year="2007", howpublished="\url{https://reference.wolfram.com/language/ref/NormalsFunction.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_normalsfunction, organization={Wolfram Research}, title={NormalsFunction}, year={2007}, url={https://reference.wolfram.com/language/ref/NormalsFunction.html}, note=[Accessed: 12-June-2026]}