moes_leco wrote at 2014-03-31 16:12:
- prevented boxing of data and screen points
- added ability to decimate
- added ability to append without re-rendering each series via a safe INotifyCollectionChanged supporting bulk addition
- allows binding directly to data if using IList<IDataPoint>
- avoids reflection and accessor functions when iterating through source data points
- avoids unnecessary recalculation of max-mins
- avoids redundant calculations in valid values
- reuses intermediate memory for rendering (to avoid stressing 3rd generational memory)
- avoids recreating model upon each render for MVVM
- I'm sure there's more
Would you be interested in pulling some of this in?
objo wrote at 2014-03-31 18:32:
Have you checked if the following changes could have a performance improvement
- not performing the actual clipping, but depending on the rendering capability of the output device
- clipping in a parallel loop
moes_leco wrote at 2014-04-08 19:21:
I made the updates in https://hg.codeplex.com/forks/moes_leco/performance. I just ported my inheritance-based solution to one that would better fit into yours. I haven't tested the port. I do have unit tests for the Decimator, EnhancedObservableCollection, & EnhancedListCollectionView if you need, but did not add them. Really EnhancedObservableCollection & EnhancedListCollectionView may not belong in the project, but I added them so you could use to test appending without WPF misbehaving.
objo wrote at 2014-04-08 20:11:
moes_leco wrote at 2014-04-08 20:31:
objo wrote at 2014-04-11 07:28:
I still need some time to review the last changes, I am hesitant to adding the observable pattern to the whole model...
Сервис поддержки клиентов работает на платформе UserEcho