koo*_*koo 1 macos performance cocoa bezier objective-c
我的代码如下 -
[[NSColor whiteColor] set];
// `path' is a bezier path with more than 1000 points in it
[path setLineWidth:2];
[path setLineJoinStyle:NSRoundLineJoinStyle];
[path stroke];
// some other stuff...
Run Code Online (Sandbox Code Playgroud)
在Instruments中运行时间分析工具,它告诉我我的应用程序花费93.5%的时间在最后一行[path stroke],而Quartz Debugger告诉我我的应用程序仅以低于10 fps的速度运行(另一个视图更改位置始终在它上面导致更新).
我正在寻找提高抚摸bezier路径性能的方法,有时超过1000点的路径以> 60fps非常快速地绘制,但是在某些极端情况下即使具有相同的点数,也许如果这些点太远彼此(或太密集?)的表现变得非常迟钝.
我不知道我能做些什么.我认为将视图缓存为位图代表是有帮助的,但它对实时调整大小无能为力.
编辑:注释掉线[path setLineWidth:2];肯定有帮助,但路径看起来真的太'瘦'.
| 归档时间: |
|
| 查看次数: |
867 次 |
| 最近记录: |