• 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
Reflecting image using NSAffineTransform
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Reflecting image using NSAffineTransform


  • Subject: Reflecting image using NSAffineTransform
  • From: Chris Lewis <email@hidden>
  • Date: Wed, 27 Jul 2005 21:04:28 +0100

Hello there,
I've been teaching myself Cocoa over the past few weeks, and have
found the archives of this mailing list invaluable, so I'd like to
start by thanking everyone for all their great answers! I've got
myself pretty stuck, so I was wondering if anyone could help me out?

I am feeding in images from my iSight using the Delicious
CocoaSequenceGrabber framework. It lets me deal with things frame by
frame, which is pretty neat. You may have noticed iChat does a
horizontal flip of the image, because it looks weird to the user to
move your hand left, but on screen it goes right. I'm trying to do
this too, but failing miserably. I've been using tips from the
archives, which told me to scale X by -1, but it's not playing ball.
Here it is:

    NSAffineTransform *flipper = [NSAffineTransform transform];
    NSSize dimensions = [cameraView frame].size;

    [aFrame lockFocus];
	[flipper scaleXBy:-1.0 yBy:1.0];
	[flipper set];
	[aFrame drawAtPoint:NSMakePoint(0,0) fromRect:NSMakeRect(0,0,
dimensions.width, dimensions.height) operation:NSCompositeCopy
fraction:1.0];
    [aFrame unlockFocus];

    [cameraView setImage:aFrame];

aFrame is the NSImage passed to the delegate function called whenever
a frame is going to be displayed. cameraView is an NSImageView where
the image is shown.

The transform just doesn't apply to the image (I grabbed the rectangle
drawing thing off the mailing list, I would never have worked out that
was what I needed to do). If I set both setXBy and yBy to a positive
same number, it does the scaling. If I set it to negative, or have
different positive numbers for x and y it doesn't scale or flip or
anything. I don't understand why scaling should work in that way,
surely scaling negatively is reducing the image?

Any help to flip this darn image would be very much appreciated, thank
you ever so much,
Chris Lewis
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Reflecting image using NSAffineTransform
      • From: "John C. Randolph" <email@hidden>
  • Prev by Date: Re: [Core Data - Newbie] Validation Error Message
  • Next by Date: Re: open problem
  • Previous by thread: Re: [Core Data - Newbie] Validation Error Message
  • Next by thread: Re: Reflecting image using NSAffineTransform
  • Index(es):
    • Date
    • Thread