Question: How to specify multiple lights in plot3d?

This is from the documentation of ?plot3d,light:

 

light=[phi, theta, r, g, b]

    This option adds [my emphasis] a directed light source

    from the direction phi, theta in spherical coordinates.

 

The "adds" in that sentence seems to imply that

multiple light sources are possible, but it does not seem

to work that way.  Each subsequent light option overrides

the previous one as we see in the following illustration

where we render a ball three times by illuminating it

(a) from the north, (b) from the south, and (c) from

both the north and south.  In (c) Maple accounts for only

the south light.

restart;

with(plots): with(plottools):

ball := sphere(1, style=surface, color=gold):

display(<
    display(ball,light=[0,0,1,1,1])   |
    display(ball,light=[180,0,1,1,1]) |
    display(ball,light=[0,0,1,1,1], light=[180,0,1,1,1])
 >);

 

Download light.mw

 

Please Wait...