本文整理汇总了C++中CCRect::equals方法的典型用法代码示例。如果您正苦于以下问题:C++ CCRect::equals方法的具体用法?C++ CCRect::equals怎么用?C++ CCRect::equals使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CCRect
的用法示例。
在下文中一共展示了CCRect::equals方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: isFrameDisplayed
bool CAImageView::isFrameDisplayed(CCSpriteFrame *pFrame)
{
CCRect r = pFrame->getRect();
return (r.equals(m_obRect) &&
pFrame->getImage()->getName() == m_pobTexture->getName() &&
pFrame->getOffset().equals(m_obUnflippedOffsetPositionFromCenter));
}
示例2: initWithTarget
bool CCFollow::initWithTarget(CCNode *pFollowedNode, const CCRect& rect/* = CCRectZero*/)
{
CCAssert(pFollowedNode != NULL, "");
pFollowedNode->retain();
m_pobFollowedNode = pFollowedNode;
if (rect.equals(CCRectZero))
{
m_bBoundarySet = false;
}
else
{
m_bBoundarySet = true;
}
m_bBoundaryFullyCovered = false;
CCSize winSize = CCDirector::sharedDirector()->getWinSize();
m_obFullScreenSize = CCPointMake(winSize.width, winSize.height);
m_obHalfScreenSize = ccpMult(m_obFullScreenSize, 0.5f);
if (m_bBoundarySet)
{
m_fLeftBoundary = -((rect.origin.x+rect.size.width) - m_obFullScreenSize.x);
m_fRightBoundary = -rect.origin.x ;
m_fTopBoundary = -rect.origin.y;
m_fBottomBoundary = -((rect.origin.y+rect.size.height) - m_obFullScreenSize.y);
if(m_fRightBoundary < m_fLeftBoundary)
{
// screen width is larger than world's boundary width
//set both in the middle of the world
m_fRightBoundary = m_fLeftBoundary = (m_fLeftBoundary + m_fRightBoundary) / 2;
}
if(m_fTopBoundary < m_fBottomBoundary)
{
// screen width is larger than world's boundary width
//set both in the middle of the world
m_fTopBoundary = m_fBottomBoundary = (m_fTopBoundary + m_fBottomBoundary) / 2;
}
if( (m_fTopBoundary == m_fBottomBoundary) && (m_fLeftBoundary == m_fRightBoundary) )
{
m_bBoundaryFullyCovered = true;
}
}
return true;
}
示例3:
/**
* Return the bounding rectangle of the 2D node held in the CC3Billboard node.
* If its not valid, return a zero rectangle.
*/
CCRect CC3BillboardBoundingBoxArea::getBillboardBoundingRect()
{
CCRect bRect = ((CC3Billboard*)m_pNode)->getBillboardBoundingRect();
//LogTrace(@"%@ bounding rect: %@", _node, NSStringFromCGRect(bRect));
return bRect.equals(CCRectZero) ? CCRectZero : bRect;
}
示例4: getOpacity
bool CCScale9Sprite::updateWithBatchNode(CCSpriteBatchNode* batchnode, CCRect rect, bool rotated, CCRect capInsets)
{
GLubyte opacity = getOpacity();
ccColor3B color = getColor();
// Release old sprites
this->removeAllChildrenWithCleanup(true);
CC_SAFE_RELEASE(this->_centre);
CC_SAFE_RELEASE(this->_top);
CC_SAFE_RELEASE(this->_topLeft);
CC_SAFE_RELEASE(this->_topRight);
CC_SAFE_RELEASE(this->_left);
CC_SAFE_RELEASE(this->_right);
CC_SAFE_RELEASE(this->_bottomLeft);
CC_SAFE_RELEASE(this->_bottom);
CC_SAFE_RELEASE(this->_bottomRight);
if(this->_scale9Image != batchnode)
{
CC_SAFE_RELEASE(this->_scale9Image);
_scale9Image = batchnode;
CC_SAFE_RETAIN(_scale9Image);
}
_scale9Image->removeAllChildrenWithCleanup(true);
m_capInsets = capInsets;
// If there is no given rect
if ( rect.equals(CCRectZero) )
{
// Get the texture size as original
CCSize textureSize = _scale9Image->getTextureAtlas()->getTexture()->getContentSize();
rect = CCRectMake(0, 0, textureSize.width, textureSize.height);
}
// Set the given rect's size as original size
m_spriteRect = rect;
m_originalSize = rect.size;
m_preferredSize = m_originalSize;
m_capInsetsInternal = capInsets;
float w = rect.size.width;
float h = rect.size.height;
// If there is no specified center region
if ( m_capInsetsInternal.equals(CCRectZero) )
{
// CCLog("... cap insets not specified : using default cap insets ...");
m_capInsetsInternal = CCRectMake(w/3, h/3, w/3, h/3);
}
float left_w = m_capInsetsInternal.origin.x;
float center_w = m_capInsetsInternal.size.width;
float right_w = rect.size.width - (left_w + center_w);
float top_h = m_capInsetsInternal.origin.y;
float center_h = m_capInsetsInternal.size.height;
float bottom_h = rect.size.height - (top_h + center_h);
// calculate rects
// ... top row
float x = 0.0;
float y = 0.0;
// top left
CCRect lefttopbounds = CCRectMake(x, y,
left_w, top_h);
// top center
TRANSLATE_X(x, y, left_w);
CCRect centertopbounds = CCRectMake(x, y,
center_w, top_h);
// top right
TRANSLATE_X(x, y, center_w);
CCRect righttopbounds = CCRectMake(x, y,
right_w, top_h);
// ... center row
x = 0.0;
y = 0.0;
TRANSLATE_Y(x, y, top_h);
// center left
CCRect leftcenterbounds = CCRectMake(x, y,
left_w, center_h);
// center center
TRANSLATE_X(x, y, left_w);
CCRect centerbounds = CCRectMake(x, y,
center_w, center_h);
// center right
TRANSLATE_X(x, y, center_w);
CCRect rightcenterbounds = CCRectMake(x, y,
//.........这里部分代码省略.........
示例5: getOpacity
bool CCScale9Sprite::updateWithImage(CAImage* image, CCRect rect, CCRect capInsets)
{
GLubyte opacity = getOpacity();
ccColor3B color = getColor();
// Release old sprites
this->removeAllSubviews();
CC_SAFE_RELEASE(this->_centre);
CC_SAFE_RELEASE(this->_top);
CC_SAFE_RELEASE(this->_topLeft);
CC_SAFE_RELEASE(this->_topRight);
CC_SAFE_RELEASE(this->_left);
CC_SAFE_RELEASE(this->_right);
CC_SAFE_RELEASE(this->_bottomLeft);
CC_SAFE_RELEASE(this->_bottom);
CC_SAFE_RELEASE(this->_bottomRight);
this->setImage(image);
this->removeAllSubviews();
m_capInsets = capInsets;
// If there is no given rect
if ( rect.equals(CCRectZero) )
{
// Get the Image size as original
CCSize textureSize = image->getContentSize();
rect = CCRectMake(0, 0, textureSize.width, textureSize.height);
}
this->setContentSize(rect.size);
// Set the given rect's size as original size
m_spriteRect = rect;
m_originalSize = rect.size;
m_preferredSize = m_originalSize;
m_capInsetsInternal = capInsets;
float w = rect.size.width;
float h = rect.size.height;
// If there is no specified center region
if ( m_capInsetsInternal.equals(CCRectZero) )
{
// CCLog("... cap insets not specified : using default cap insets ...");
m_capInsetsInternal = CCRectMake(w/3, h/3, w/3, h/3);
}
float left_w = m_capInsetsInternal.origin.x;
float center_w = m_capInsetsInternal.size.width;
float right_w = rect.size.width - (left_w + center_w);
float top_h = m_capInsetsInternal.origin.y;
float center_h = m_capInsetsInternal.size.height;
float bottom_h = rect.size.height - (top_h + center_h);
// calculate rects
// ... top row
float x = 0.0;
float y = 0.0;
// top left
CCRect leftbottombounds = CCRectMake(x, y,
left_w, top_h);
// top center
TRANSLATE_X(x, y, left_w);
CCRect centerbottombounds = CCRectMake(x, y,
center_w, top_h);
// top right
TRANSLATE_X(x, y, center_w);
CCRect rightbottombounds = CCRectMake(x, y,
right_w, top_h);
// ... center row
x = 0.0;
y = 0.0;
TRANSLATE_Y(x, y, bottom_h);
// center left
CCRect leftcenterbounds = CCRectMake(x, y,
left_w, center_h);
// center center
TRANSLATE_X(x, y, left_w);
CCRect centerbounds = CCRectMake(x, y,
center_w, center_h);
// center right
TRANSLATE_X(x, y, center_w);
CCRect rightcenterbounds = CCRectMake(x, y,
right_w, center_h);
// ... bottom row
x = 0.0;
y = 0.0;
TRANSLATE_Y(x, y, bottom_h);
//.........这里部分代码省略.........