Hi Peter,
I don't think there'll be much of a difference in practice. Presently
the internal format for storing points is not the same as any of the
interface functions provide, so there is always an internal copy that
happens when you call the function to draw points. For s2pt, the
internal copy is a loop of copies. Even if I gave you a s2pnt with
color as an array, the return time of the function would be barely
different to a loop you write rather than me internally.
All that said, there will be no difference in *rendering* time as the
rendering is executed from the internally stored data for the points.
- David.