Created
December 19, 2012 19:30
-
-
Save kreeger/4339712 to your computer and use it in GitHub Desktop.
Some additional CGGeometry love.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CGRect CGRectAdjustSize(CGRect rect, CGSize size) { | |
rect.size = size; | |
return rect; | |
} | |
CGRect CGRectAdjustOrigin(CGRect rect, CGPoint origin) { | |
rect.origin = origin; | |
return rect; | |
} | |
CGRect CGRectAdjustWidth(CGRect rect, CGFloat width) { | |
rect.size.width = width; | |
return rect; | |
} | |
CGRect CGRectAdjustHeight(CGRect rect, CGFloat height) { | |
rect.size.height = height; | |
return rect; | |
} | |
CGRect CGRectAdjustYOrigin(CGRect rect, CGFloat yOrigin) { | |
rect.origin.y = yOrigin; | |
return rect; | |
} | |
CGRect CGRectAdjustXOrigin(CGRect rect, CGFloat xOrigin) { | |
rect.origin.x = xOrigin; | |
return rect; | |
} | |
CGRect CGRectCenterRectInRect(CGRect subRect, CGRect masterRect) { | |
CGPoint origin = CGPointMake((masterRect.size.width - subRect.size.width) / 2.0f, | |
(masterRect.size.height - subRect.size.height) / 2.0f); | |
return CGRectIntegral(CGRectAdjustOrigin(subRect, origin)); | |
} | |
CGRect CGRectCenterRectInRectHorizontally(CGRect subRect, CGRect masterRect) { | |
CGFloat xOrigin = (masterRect.size.width - subRect.size.width) / 2.0f; | |
CGPoint origin = CGPointMake(xOrigin, subRect.origin.y); | |
return CGRectAdjustOrigin(subRect, origin); | |
} | |
CGRect CGRectCenterRectInRectVertically(CGRect subRect, CGRect masterRect) { | |
CGFloat yOrigin = (masterRect.size.height - subRect.size.height) / 2.0f; | |
CGPoint origin = CGPointMake(subRect.origin.x, yOrigin); | |
return CGRectAdjustOrigin(subRect, origin); | |
} | |
void CGRectIntegralSizeToFit(UIView *view) { | |
[view sizeToFit]; | |
view.frame = CGRectIntegral(view.frame); | |
} | |
CGSize CGSizeByDoubling(CGSize size) { | |
return CGSizeMake(size.width * 2.0f, size.height * 2.0f); | |
} | |
CGRect CGRectByDoublingSize(CGRect rect) { | |
return CGRectAdjustSize(rect, CGSizeByDoubling(rect.size)); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment