Как повысить производительность рисования большого многоугольника с помощью SkiaSharp? - PullRequest
0 голосов
/ 07 мая 2020

У меня есть контур с примерно 20 000 точек, который я рисую, используя SkiSharp. Это немного вяло sh (200 мс), и мне интересно, есть ли какие-либо улучшения производительности, которые я мог бы внести в свой код:

var path = new SKPath();
path.AddPoly(contour.Select(p => p.ToSKPoint()).ToArray());  // contour is Point[]
canvas.DrawPath(path, paint);

Когда мой вид уменьшен, это, вероятно, даже не Можно увидеть такое количество точек, поэтому я подумал об одной из возможных оптимизаций - это равномерно отфильтровать точки (например, оставлять только одну каждые 10 или 100 точек).

...