Message Boards Message Boards

0
|
5595 Views
|
5 Replies
|
0 Total Likes
View groups...
Share
Share this post:

Increase brightness of surfaces on Plot3D, ListPlot3D?

I want to do something very simple, namely to just increase the brightness of the surfaces on a 3D plot. I don't want to get into lighting angles, etc. I just want to turn up the brightness. This seems nearly impossible to do with any of the commands I have found.

POSTED BY: David Snoke
5 Replies

I already tried that. It is not bright enough-- I need something with an actual control over brightness, not just guessing at different built-in colors or lighting schemes.

POSTED BY: David Snoke

Well, that's exactly what NeutralLighting gives you. You can simply control the overall brightness with the brightness argument or a combination of the brightness argument and the ambient argument.

The quick answer is to use the Lighting option "Neutral". This gives a brighter surface than the standard lighting. The standard lighting also mixes in the lighting colors with the surface color to give an unpleasant effect.

Plot3D[Sin[x y], {x, 0, \[Pi]}, {y, 0, \[Pi]},
 Mesh -> None,
 PlotStyle -> Orange]

enter image description here

With "Neutral" lighting:

Plot3D[Sin[x y], {x, 0, \[Pi]}, {y, 0, \[Pi]},
 Mesh -> None,
 PlotStyle -> Orange,
 Lighting -> "Neutral"]

enter image description here

The trouble with "Neutral" lighting is that you can't really adjust the brightness. With "Ambient" lighting you can adjust the brightness but there is no shading.

Plot3D[Sin[x y], {x, 0, \[Pi]}, {y, 0, \[Pi]},
 Mesh -> None,
 PlotStyle -> Orange,
 Lighting -> {{"Ambient", GrayLevel[0.8]}}]

enter image description here

So, that is one of my complaints against regular WRI graphics. It is often not easy to do precisely what you want in producing custom graphics. The Presentations application has an alternative NeutralLighting routine that generates Lighting options in a more convenient manner. Its basic form is:

NeutralLighting[saturation, brightness, ambient]

Setting saturation to 0 gives White lights, setting it to 1 gives full colored lights, The brightness argument uniformly adjust the brightness of all lights from 0 to 1. The ambient argument adds ambient lighting from 0 to 1. There are also optional arguments to rotate all the lights and to set ImageScaled lighting. Here is just one example that uses a little shading and mostly ambient light. To me this is much easier than having to adjust all of the lights individually and generally does what one would want.

<< Presentations`
Plot3D[Sin[x y], {x, 0, \[Pi]}, {y, 0, \[Pi]},
Mesh -> None,
PlotStyle -> Orange,
Evaluate@NeutralLighting[0, 0.2, 0.6]]

enter image description here

I sell the Presentations application for $50 - it is quite large with many other features. Anyone interested would have to contact me for more information.

I don't know how to set a brighter color using PlotStyle, that is my problem. The Lighting commands seem really complex, involving pointing, etc. I just want overall brighter surfaces!

POSTED BY: David Snoke

Try setting a custom brighter color for the surface (using PlotStyle), play around with Glow, or set the lights...

POSTED BY: Sander Huisman
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract