A much faster and simpler approach to do exactly what you have here is 
CAShapeLayer. That will draw the path via OpenGL on your behalf without you 
having to study OpenGL.

That said, copying and pasting from stack overflow or cocoa-dev list is never a 
good solution in the long run. You might not be looking to do that, but the 
question formulation below suggest that is your goal.

> CGLayerRef

only makes things better because you're not redrawing the shape.

Much better IMO for you to spend the 56 minutes to watch a WWDC video on your 
fav subject, or better yet trick iTunes into thinking its a podcast so you can 
set the speed to 2x then you could watch 2 in the same hour.

Good luck,

-bd

On Aug 10, 2012, at 4:09 AM, Fulbert Boussaton <4...@flubb.net> wrote:

> Hi everyone,
> 
> on iOS, I was using the following "immediate CG code" to display hundreds 
> procedural sprites :
> 
> CGContextSetShadow(Ctx, CGSizeMake(3, 4), 3.0f);
> CGMutablePathRef      ShapePath = CGPathCreateMutable();
> CGPathAddArc(ShapePath, &CGAffineTransformIdentity, radius+3, radius+3, 
> radius, 0, deg2rad(360), YES);
> CGContextSetStrokeColorWithColor(Ctx, [strokeColor CGColor]);
> CGContextSetFillColorWithColor(Ctx, [fillColor CGColor]);
> CGContextSetLineWidth(Ctx, strokeWidth);
> CGContextAddPath(Ctx, ShapePath);
> CGContextDrawPath(Ctx, kCGPathFillStroke);
> CGPathRelease(ShapePath);
> 
> Ctx is the current context and the sprite is a filled circle with a shadow.
> 
> Of course, an iPad was *really* slow to draw all of these, even if each one 
> represents 32px * 32px. So I optimized it using CGLayerRef stored in a 
> NSdictionary and, yes, it was a lot faster.
> 
> But still, it's not really satisfying, and I'm sure something better can be 
> done. Do any of you got any idea ? I'm kind of stuck in the CG documentation. 
> Is there a book specifically dedicated to CG optimisation ? (I know a WWDC 12 
> presentation talks about CG optimisation but haven't had time to spare yet).
> 
> My goal is to display and animate a thousand of these drawings without using 
> OpenGL. Do you think it's possible ?
> 
> 
> Thanks.
> 
> Fulbert.
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/cocoa-dev/bdudney%40mac.com
> 
> This email sent to bdud...@mac.com

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to