• 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
confused about floats
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

confused about floats


  • Subject: confused about floats
  • From: Amy Heavey <email@hidden>
  • Date: Tue, 5 Oct 2010 10:07:50 +0100

I've got two float values (x and y) that I'm using to change the coordinates of a drawing action that is being looped through. I can add a value to x and it draws the next image along, but I want to test the value of x and if it is out of bounds I want to reset it to zero and increase y, so I get a grid of images drawn.

For some reason, even though I can do
x = x+128;
and it moves the image accross, x seems to be null so I can't test against it, my if statement ' if (x > 300){' always fails.


This must be something really simple I just can't see it this morning? I'd appreciate any help.

Many Thanks

Amy

Full code being used:
- (IBAction)generateKitImages:(id)sender;
{
NSObject *kit;
kit = [[kits selectedObjects] objectAtIndex:0];

NSString* fileName = [[kit valueForKey:@"kitName"] stringByAppendingString:@".jpg"];
NSString* kitimagePath = [[[[self applicationSupportFolder] stringByAppendingPathComponent:@"images"] stringByAppendingPathComponent:@"kit"] stringByAppendingPathComponent:fileName];
//NSLog(@"Kit Image Path: %@", kitimagePath);
//create new image 300px square
NSImage *targetImage;
NSSize targetSize = NSMakeSize (300, 300);
targetImage = [[NSImage alloc] initWithSize:targetSize];


//select all images for kit
NSArray* kitImages = [kit valueForKeyPath:@"kitItems.kitItemProduct.productImage"];

//set coordinates to x,y -> 0,0 to start
float x = 0;
float y = 0;
//for each image
NSEnumerator *imageLoop = [kitImages objectEnumerator];
NSString *imgPath;
while ((imgPath = [imageLoop nextObject])) {
NSImage *img = [[NSImage alloc]initWithContentsOfFile:imgPath];
//NSLog(@"Image: %@",img);
//resize to 100px high
//get original size
//NSSize *origSize;
//origSize = [img size];
//calculate scale factor
//[img setScalesWhenResized: YES];
//[img setSize: NSMakeSize (100., 100.)];

//apply image to view
[targetImage lockFocus];
[img drawInRect:NSMakeRect(x,y,100,100)
fromRect:NSMakeRect(x,y,100,100)
operation:NSCompositeCopy
fraction:1];


		[targetImage unlockFocus];

//set new coordinates
x = x+100;

//if coordinates are too wide, start new row - if x>300, reset x to 0 and add 100 to y
if(x > 300){
x = 0;
y = y+100;
}

}
//apply kit logo to view
//apply kit date (text) to view
//save files out
//create a NSBitmapImageRep
NSBitmapImageRep *bmpImageRep = [[NSBitmapImageRep alloc]initWithData: [targetImage TIFFRepresentation]];
//add the NSBitmapImage to the representation list of the target
[targetImage addRepresentation:bmpImageRep];

//get the data from the representation
NSData *data = [bmpImageRep representationUsingType: NSJPEGFileType
properties: nil];

//write the data to a file
[data writeToFile: kitimagePath
atomically: NO];
//link images to kit
[kit setValue:kitimagePath forKey:@"kitImage"];
}


_______________________________________________

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: confused about floats
      • From: Ariel Feinerman <email@hidden>
    • Re: confused about floats
      • From: Kyle Sluder <email@hidden>
    • Re: confused about floats
      • From: Murat Konar <email@hidden>
  • Prev by Date: Re: [iPhone] Changing iPhone Application Language Programatically.
  • Next by Date: Not understanding NSString's compare:options:range:locale: method
  • Previous by thread: Re: Confused about floats
  • Next by thread: Re: confused about floats
  • Index(es):
    • Date
    • Thread