iphone-common-codes-ccteam源代码 CCSize.m

CCSize类实现解析
本文详细介绍了CCSize类的实现细节,包括初始化方法、尺寸转换、比较操作等,并提供了具体的代码示例。对于理解Cocos2d-x中尺寸管理机制有重要作用。
//  
// CCSize.m
// CCFC
//
// Created by xichen on 11-12-28.
// Copyright 2011 ccteam. All rights reserved.
//


#import "CCSize.h"
#import "CCCommon.h"
#import "CCNSNumber.h"


@implementation CCSize




- (id)initWithWidth:(CGFloat)aWidth withHeight:(CGFloat)aHeight
{
COMMON_INIT_BEGIN

self->width = aWidth;
self->height = aHeight;

COMMON_INIT_END
}


+ (id)sizeWithCCSize:(CCSize *)size
{
CCSize *newSize = [[CCSize alloc]
initWithWidth:size->width withHeight:size->height];
return [newSize autorelease];
}


- (id)initWithCGSize:(CGSize)size
{
COMMON_INIT_BEGIN

width = size.width;
height = size.height;

COMMON_INIT_END
}


+ (id)sizeWithCGSize:(CGSize)size
{
CCSize *newSize = [[CCSize alloc] initWithCGSize:size];
return [newSize autorelease];
}


- (void)dealloc
{
[super dealloc];
}


- (BOOL)isEqualTo:(CCSize *)anotherSize
{
return (FLOAT_EQUAL_TO_FLOAT(width, anotherSize->width)
&& FLOAT_EQUAL_TO_FLOAT(height, anotherSize->height));
}


- (BOOL)isEqualToCGSize:(CGSize)size
{
return (FLOAT_EQUAL_TO_FLOAT(width, size.width)
&& FLOAT_EQUAL_TO_FLOAT(height, size.height));
}


- (BOOL)isZero
{
return (FLOAT_EQUAL_TO_ZERO(width)
&& FLOAT_EQUAL_TO_ZERO(height));
}


- (void)setWidth:(CGFloat)newWidth withHeight:(CGFloat)newHeight
{
self->width = newWidth;
self->height = newHeight;
}


- (CGSize)toCGSize
{
return CGSizeMake(width, height);
}


@end

 

可能有更新:

googlecode链接地址:http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCSize.m

github地址: https://github.com/cxsjabc/iphone-common-codes-ccteam/tree/master/CCFC/files/CCSize.m

 

转载于:https://www.cnblogs.com/ccteam/archive/2012/01/05/2313095.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值