NS_INLINE NSPoint NSMakePoint(CGFloat x, CGFloat y) { //生成NSPoint
NSPoint p;
p.x = x;
p.y = y;
return p;
}
NS_INLINE NSSize NSMakeSize(CGFloat w, CGFloat h) {//生成NSSize
NSSize s;
s.width = w;
s.height = h;
return s;
}
NS_INLINE NSRect NSMakeRect(CGFloat x, CGFloat y, CGFloat w, CGFloat h) {//生成NSRect
NSRect r;
r.origin.x = x;
r.origin.y = y;
r.size.width = w;
r.size.height = h;
return r;
}
NS_INLINE CGFloat NSMaxX(NSRect aRect) {//x点+宽度,返回的就是此rect里x的最大值
return (aRect.origin.x + aRect.size.width);
}
NS_INLINE CGFloat NSMaxY(NSRect aRect) {//y点+高度,返回的就是此rect里y的最大值
return (aRect.origin.y + aRect.size.height);
}
NS_INLINE CGFloat NSMidX(NSRect aRect) {//x+宽度/2, 反回的是此rect里x的中间值
return (aRect.origin.x + aRect.size.width * (CGFloat)0.5);
}
NS_INLINE CGFloat NSMidY(NSRect aRect) {//y+高度/2,返回的是此rect里y的中间值
return (aRect.origin.y + aRect.size.height * (CGFloat)0.5);
}
NS_INLINE CGFloat NSMinX(NSRect aRect) {//返回x
return (aRect.origin.x);
}
NS_INLINE CGFloat NSMinY(NSRect aRect) {//返回y
return (aRect.origin.y);
}
NS_INLINE CGFloat NSWidth(NSRect aRect) {//返回宽度
return (aRect.size.width);
}
NS_INLINE CGFloat NSHeight(NSRect aRect) {//返回高度
return (aRect.size.height);
}
NS_INLINE NSRect NSRectFromCGRect(CGRect cgrect) {//CGRect to NSRect
union _ {NSRect ns; CGRect cg;};
return ((union _ *)&cgrect)->ns;
}
NS_INLINE CGRect NSRectToCGRect(NSRect nsrect) {//NSRect to CGRect
union _ {NSRect ns; CGRect cg;};
return ((union _ *)&nsrect)->cg;
}
NS_INLINE NSPoint NSPointFromCGPoint(CGPoint cgpoint) {// CGPoint to NSPoint
union _ {NSPoint ns; CGPoint cg;};
return ((union _ *)&cgpoint)->ns;
}
NS_INLINE CGPoint NSPointToCGPoint(NSPoint nspoint) {//NSPoint to CGPoint
union _ {NSPoint ns; CGPoint cg;};
return ((union _ *)&nspoint)->cg;
}
NS_INLINE NSSize NSSizeFromCGSize(CGSize cgsize) {//CGSize to NSSize
union _ {NSSize ns; CGSize cg;};
return ((union _ *)&cgsize)->ns;
}
NS_INLINE CGSize NSSizeToCGSize(NSSize nssize) {//NSSize to CGSize
union _ {NSSize ns; CGSize cg;};
return ((union _ *)&nssize)->cg;
}