|Dec 21, 2009, 02:15 PM||#1|
UIView animation: really bad result.
I set up a small view, placed three concentric circles in it, and then applied the CGAffineTransformMakeScale function to it. This was meant to achieve the effect of expanding ripples, but unfortunately, the circles become very pixelated as they expand.
I would have thought that these transforms take advantage of the fact that Coregraphics draw routines create vector graphics, but my expanded image looks like an enlarged bitmap with no smoothing at all.
I guess I could create expanding circles by some sort of exotic timer dance, but is there a way to get good results just using the CGAffineTransforms?
Thanks for any insights on this.
|Dec 21, 2009, 02:35 PM||#2|
When you say that you "placed" three circles in it, what do you mean? Did you insert three UIImageViews with circle bitmaps?
If you don't want pixelation, you will need to create a UIView subclass with custom drawing code. I assume this is what you did.
When you animate with Core Animation, it's usually animating a cached bitmap of your view (which is why it looks so smooth). This is why it starts to pixelate. There is a command that makes your animation redraw with every frame; this is probably what you want -- you will probably take a performance hit, though.
You might also want to take a look at OpenGLES for this kind of functionality.
North Bronson Software
|Dec 21, 2009, 04:05 PM||#3|
Click Here For iPhone Development Tutorials And Programming Tips
|Thread Tools||Search this Thread|
|thread||Thread Starter||Forum||Replies||Last Post|
|No bad result?||kieMac||Digital Audio||0||Jul 23, 2009 05:17 PM|
|Really.... really bad news||Firefly2002||MacBook Pro||96||Aug 15, 2008 08:20 PM|
|I tried booting my ibook w/ MBP startup disks...bad results.||cinecal||PowerPC Macs||5||Sep 8, 2007 07:54 PM|
|Really, really bad news :(||njmac||Community Discussion||58||Dec 5, 2006 01:54 PM|
|Bad Results with Bootcamp 1.1 Drivers and Parallels||DVNIEL||Mac Pro||1||Aug 21, 2006 01:49 PM|
All times are GMT -5. The time now is 11:09 PM.