affineTransform issue
Posted: Wed Feb 15, 2012 11:08 am
Thanks for the quick response and the insight re performance and UIKit. I will keep this in mind as I go.
However, I'm hitting another problem that I've not seen before. Below is the actual code section revealing the issue:
[yes, i could use this in an override of the init method, but does that explain the problem described here?]
As the above comment states the assignment of the body's affine transform makes the UIImage disappear. What would make this happen?
However, I'm hitting another problem that I've not seen before. Below is the actual code section revealing the issue:
[yes, i could use this in an override of the init method, but does that explain the problem described here?]
Code: Select all
static UIImageView *graphic;
-(id)initWithImage:(UIImageView *)image
{
if(self = [super init]) {
cpFloat mass = 1.0;
cpFloat moment = cpMomentForBox(mass,bounds.frame.size.width,image.bounds.size.height);
// create a chipmunk body
body = [[ChipmunkBody alloc] initWithMass:mass andMoment:moment];
// and relate it's position to the image placement in the NIB
body.pos = cpv(image.bounds.origin.x,image.bounds.origin.y);
// create the associated shape
shape = [ChipmunkPolyShape boxWithBody:body width:image.bounds.size.width height:image.bounds.size.height];
chipmunkObjects = [[NSArray alloc] initWithObjects:body,shape,nil];
// save the reference to the UIImageView for the affine transform update
graphic = image;
}
return self;
}
-(void)updatePosition
{
// comment the assignment and the image stays on the screen; uncomment the assignment and the UIImageView disappears. Why?
graphic.transform = body.affineTransform;
}