17 Nov 2013 by Sergey Alexandrovich Kryukov
You certainly need to use double buffering. The only one method to accelerate things is to calculate some subset of the points of your window area, only those really touched by your most recent change in data, and call InvalidateRect or InvalidateRegion. You can combine any number of different...