申し訳ありませんが、私はUIView
を表示しています。これは幅がかなり広いCGPath
です。これは水平方向にUIScrollView
内でスクロールすることができます。今は、CATiledLayer
というビューを使用しています。なぜなら、それは1024ピクセル以上の幅だからです。大きなCGPathを描画する最も効率的な方法は何ですか?
私の質問です:これは効率的ですか?
- (void) drawRect:(CGRect)rect {
CGContextRef g = UIGraphicsGetCurrentContext();
CGContextAddPath(g,path);
CGContextSetStrokeColor(g,color);
CGContextDrawPath(g,kCGPathStroke);
}
基本的に、レイヤー内のタイルが描画されるたびに、全体のパスを描画しています。誰かがこれが悪い考えであるかどうかを知っていますか、クリッピング矩形内にあるパスの部分だけを描くことに関しては比較的スマートなCGContextですか?
パスの大部分は、サイズと形状がタイルと似ているブロックに分割することができるように設定されていますが、私の部分ではもっと多くの作業が必要になります。 (タイルの境界を横切る形状の場合)、描画するパスを見つけるために何らかの計算が必要になります。
この方向に移動する価値があるのですか、またはCGPathは既に比較的早く描画していますか?