Interesting Pixel-Plotting Efficiency Test Results
I recently ran a little experiment to see which would be the fastest way to plot a bunch of single pixels using the methods available in the System.Drawing namespace. It turns out, for those who haven't looked, that there is no set-pixel type method because everything is built to work with various unit scales -- some of which have no use for single-pixel work.
I tested DrawRectangle, FillRectangle, DrawEllipse, FillEllipse, DrawLine, DrawImage (using a 1x1 rectangle from a memory bitmap that had been pre-built to have a bunch of randomly colored pixels), and even DrawString (at the right point size, the period is essentially a single pixel). I ran each one through 100,000 pixels and stopwatch timed each one ... turns out that they were all within a couple tenths of a second of one another (less than 1% difference), except for DrawString -- that one was a couple seconds slower across 100,000 dots than the others.
So, I guess that means it really doesn't matter how you go about doing it ... just pick the method that fits the best into the code and gives the best on screen results.
(btw, I am still working on the "It's All About the Cameras" post that I promised last time ...)