({{, (RefLink[NormalsFunction, paclet:ref/NormalsFunction]) 
is an option for (RefLink[Plot3D, paclet:ref/Plot3D]) and related functions that specifies a function to apply to determine the effective surface normals at every point.}})

OpenersNotesSection(Spacer1)Details

The following settings can be given:

With (RefLink[NormalsFunction, paclet:ref/NormalsFunction])->f, the arguments supplied to f are as follows:

The function f must return a vector of the form {(Subscript[v, x]),(Subscript[v, y]),(Subscript[v, z])}. Only the direction of this vector matters; the vector is in effect automatically normalized to unit length.

OpenersPrimaryExamplesSection(Spacer1)Examples  (3)

OpenersExampleSection0(Spacer1)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]

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[VertexNormals, paclet:ref/VertexNormals])  ▪  (RefLink[ColorFunction, paclet:ref/ColorFunction])  ▪  (RefLink[VertexColors, paclet:ref/VertexColors])  ▪  (RefLink[Lighting, paclet:ref/Lighting])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Plotting Options, paclet:guide/PlottingOptions])}})}})