• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Group CGAffineTransform Animations?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Group CGAffineTransform Animations?


  • Subject: Re: Group CGAffineTransform Animations?
  • From: Chunk 1978 <email@hidden>
  • Date: Wed, 17 Jun 2009 06:45:20 -0400

i see how you write looks cleaner, is easier to follow.  but i now
have first hand experience with the matrix multiplications with
unexpected results as your code has different results than mine.
CGAffineTransformTranslate lands in a different space.  interesting :)

On Wed, Jun 17, 2009 at 6:26 AM, Jean-Daniel
Dupas<email@hidden> wrote:
> Concatenation is just a matrix multiplication:
>
> http://developer.apple.com/documentation/graphicsimaging/Conceptual/drawingwithquartz2d/dq_affine/dq_affine.html#//apple_ref/doc/uid/TP30001066-CH204-CJBECIAD
>
> So yes, you can do that.
>
> It's just a matter of taste, but I would write it like that instead:
>
> CGAffineTransform transform = CGAffineTransformMakeScale(1.5, 1.5);
> transform = CGAffineTransformRotate(transform, 3.14);
> transform = CGAffineTransformTranslate(transform, 100, 50);
>
> square.transform = transform;
>
>
> Le 17 juin 09 à 11:37, Chunk 1978 a écrit :
>
>> CGAffineTransformConcat() only allow for 2 arguments.  so in the case
>> where i have 3 transforms, i had to concatenate the first 2 to make
>> "Group1", and then concatenate that with the final transform:
>>
>> -=-=-=-
>>        //Animation Block
>>        [UIView beginAnimations:nil context:NULL];
>>        [UIView setAnimationDuration:.5];
>>        [UIView setAnimationDelegate:self];
>>        [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
>>
>>        CGAffineTransform enlarge = CGAffineTransformMakeScale(1.5, 1.5);
>>        CGAffineTransform rotate = CGAffineTransformMakeRotation(3.14);
>>
>>        CGAffineTransform group1 = CGAffineTransformConcat(enlarge,
>> rotate);
>>        CGAffineTransform move = CGAffineTransformMakeTranslation(100, 50);
>>
>>        square.transform = CGAffineTransformConcat(group1, move);
>>
>>        [UIView commitAnimations];
>> -=-=-=-
>>
>> it seems to work find, but is this the most ideal way of doing this?
>>
>>
>>
>>
>> On Wed, Jun 17, 2009 at 5:21 AM, Chunk 1978<email@hidden> wrote:
>>>
>>> thanks!  :)
>>>
>>> On Wed, Jun 17, 2009 at 5:05 AM, Jean-Daniel
>>> Dupas<email@hidden> wrote:
>>>>
>>>> Le 17 juin 09 à 10:53, Chunk 1978 a écrit :
>>>>
>>>>> is have this animation block with both Enlarge and Rotate, but only
>>>>> one work properly (the last one listed).  what is the proper way to
>>>>> group the two transforms together:
>>>>>
>>>>> -=-=-=-
>>>>>       //Animation Block
>>>>>       [UIView beginAnimations:nil context:NULL];
>>>>>       [UIView setAnimationDuration:1.0];
>>>>>       [UIView setAnimationDelegate:self];
>>>>>       [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
>>>>>
>>>>>       CGAffineTransform enlarge = CGAffineTransformMakeScale(1.5, 1.5);
>>>>>       CGAffineTransform rotate = CGAffineTransformMakeRotation(3.14 /
>>>>> 2);
>>>>>
>>>>>       square.transform = enlarge;
>>>>>       square.transform = rotate;
>>>>>
>>>>>       [UIView commitAnimations];
>>>>> -=-=-=-
>>>>
>>>>
>>>> You should concat your transformations, not make two.
>>>>
>>>>       CGAffineTransform trans = CGAffineTransformMakeScale(1.5, 1.5);
>>>>       trans = CGAffineTransformRotate(trans, 3.14 / 2);
>>>>
>>>> or in your sample above:
>>>>       square.transform  = CGAffineTransformConcat(enlarge, rotate);
>>>>
>>>>
>>>
>> _______________________________________________
>>
>> Cocoa-dev mailing list (email@hidden)
>>
>> 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:
>>
>> This email sent to email@hidden
>>
>
>
_______________________________________________

Cocoa-dev mailing list (email@hidden)

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:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Group CGAffineTransform Animations?
      • From: Chunk 1978 <email@hidden>
References: 
 >Group CGAffineTransform Animations? (From: Chunk 1978 <email@hidden>)
 >Re: Group CGAffineTransform Animations? (From: Jean-Daniel Dupas <email@hidden>)
 >Re: Group CGAffineTransform Animations? (From: Chunk 1978 <email@hidden>)
 >Re: Group CGAffineTransform Animations? (From: Chunk 1978 <email@hidden>)
 >Re: Group CGAffineTransform Animations? (From: Jean-Daniel Dupas <email@hidden>)

  • Prev by Date: [iPhone] Strange behavior with modal view controllers
  • Next by Date: Re: I want my app to crash!
  • Previous by thread: Re: Group CGAffineTransform Animations?
  • Next by thread: Re: Group CGAffineTransform Animations?
  • Index(es):
    • Date
    • Thread