Question about Collections and ScalarMappables

Hello all,

I am trying to track down an odd bug I found in mplot3d and I need some help in understanding some core parts of matplotlib. The issue is that when one colors scatterpoints in mplot3d with a colormap, then the points looses the colors after any sort of interaction. I traced the problem down to the Patch3DCollection object assuming that all color data will be stored as part of facecolors and edgecolors. However, this does not appear to be the case when using a colormap.

Because Patch3DCollection wants to modify the alpha value of the scatter points based on the distance the points are from the “camera”, I need/want a consistent spot for modifying the alpha values on each draw. Is there some sort of standard way to make the colormap data end up in the facecolor/edgecolor members? Or am I going to have to code for each case? If the latter, what is the appropriate test to know which situation is going on?

Ben Root