• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ convertToNodeSpace函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中convertToNodeSpace函数的典型用法代码示例。如果您正苦于以下问题:C++ convertToNodeSpace函数的具体用法?C++ convertToNodeSpace怎么用?C++ convertToNodeSpace使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了convertToNodeSpace函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: convertToNodeSpace

bool UIBuyBuildingLayer::isTouchEdge(Touch* touch)
{
	Point local = convertToNodeSpace(touch->getLocation());
	auto rect = Rect(0,317 + 100,Director::getInstance()->getWinSize().width,Director::getInstance()->getWinSize().height - 417);
	if (rect.containsPoint(local))
	{   
		return true;
	}
	return false;
}
开发者ID:joyfish,项目名称:MyCocos2dx,代码行数:10,代码来源:UIBuyBuildingLayer.cpp


示例2: ccp

 void CCLayerPanZoom::setScaleY(float fScaleY)
 {
     fScaleY = (MIN(MAX(fScaleY, _minScale), _maxScale));
     
     CCPoint winOrigin = CCDirector::sharedDirector()->getVisibleOrigin();
     CCSize winSize = CCDirector::sharedDirector()->getVisibleSize();
     CCPoint screenCenter = ccp(winOrigin.x + winSize.width * 0.5f, winOrigin.y + winSize.height * 0.5f);
     
     CCPoint centerBefore = convertToNodeSpace(screenCenter);
     
     CCNode::setScaleY(fScaleY);
     
     CCPoint centerAfter = convertToNodeSpace(screenCenter);
     
     CCPoint centerPointDelta  = ccpSub(centerAfter,centerBefore);
     centerPointDelta = ccpMult(centerPointDelta, fScaleY);
     
     move(centerPointDelta);
 }
开发者ID:NStockwell,项目名称:SocialPoint,代码行数:19,代码来源:CCLayerPanZoom.cpp


示例3: convertToNodeSpace

CWidgetTouchModel CSlider::onTouchBegan(CCTouch *pTouch)
{
	if (!m_bDragable)
	{
		return eWidgetTouchNone;
	}

	m_bDrag = m_pSlider->boundingBox().containsPoint(
		convertToNodeSpace(pTouch->getLocation())
	);

	if( m_bDrag )
	{
		changeValueAndExecuteEvent(valueFromPoint(convertToNodeSpace(pTouch->getLocation())), true);
		return eWidgetTouchSustained;
	}

	return eWidgetTouchNone;
}
开发者ID:54993306,项目名称:Classes,代码行数:19,代码来源:Slider.cpp


示例4: convertToNodeSpace

bool Layout::hitTest(const CCPoint &pt)
{
    CCPoint nsp = convertToNodeSpace(pt);
    CCRect bb = CCRect(0.0f, 0.0f, _size.width, _size.height);
    if (nsp.x >= bb.origin.x && nsp.x <= bb.origin.x + bb.size.width && nsp.y >= bb.origin.y && nsp.y <= bb.origin.y + bb.size.height)
    {
        return true;
    }
    return false;
}
开发者ID:fordream,项目名称:quick,代码行数:10,代码来源:UILayout.cpp


示例5: convertToNodeSpace

bool Widget::hitTest(const Point &pt)
{
    Point nsp = convertToNodeSpace(pt);
    Rect bb = Rect(-_size.width * _anchorPoint.x, -_size.height * _anchorPoint.y, _size.width, _size.height);
    if (nsp.x >= bb.origin.x && nsp.x <= bb.origin.x + bb.size.width && nsp.y >= bb.origin.y && nsp.y <= bb.origin.y + bb.size.height)
    {
        return true;
    }
    return false;
}
开发者ID:12white,项目名称:CocoStudioSamples,代码行数:10,代码来源:UIWidget.cpp


示例6: convertToNodeSpace

/////////////////////////////////////////////////////////
// Touch on left side of screen moves player left
// Touch on right side of screen moves player right
void GameScene::ccTouchEnded(CCTouch* touch, CCEvent* event)
{
	CCPoint touchLocation = touch->getLocationInView(  );	
	touchLocation = CCDirector::sharedDirector()->convertToGL(touchLocation);
	touchLocation =  convertToNodeSpace(touchLocation);

	float touchCenter =  CCDirector::sharedDirector()->getWinSize().width/2 - touchLocation.x;
	float accel_filter = 0.1f;
	bird_vel.x = bird_vel.x * accel_filter - touchCenter;  
}
开发者ID:Sarahmarieeaton,项目名称:tweejump-cocos2dx,代码行数:13,代码来源:GameScene.cpp


示例7: convertToNodeSpace

bool Box2DView::ccTouchBegan(CCTouch* touch, CCEvent* event)
{
	CCPoint touchLocation = touch->locationInView( touch->view() );	
	touchLocation = CCDirector::sharedDirector()->convertToGL( touchLocation );

	CCPoint nodePosition = convertToNodeSpace( touchLocation );
//	NSLog(@"pos: %f,%f -> %f,%f", touchLocation.x, touchLocation.y, nodePosition.x, nodePosition.y);

	return m_test->MouseDown(b2Vec2(nodePosition.x,nodePosition.y));	
}
开发者ID:YarinYang,项目名称:cocos2dx-win8,代码行数:10,代码来源:Box2dView.cpp


示例8: convertToNodeSpace

bool GameSprite_Gold::isTouchInside( CCTouch* touch )
{
    CCPoint touchLocation = touch->getLocation(); // Return to GL coordinates
    CCPoint localPos = convertToNodeSpace(touchLocation);
    CCRect rc = rect();
    rc.origin = CCPointZero;
    bool isTouched = rc.containsPoint(localPos);
    
    return isTouched;
}
开发者ID:anzhongliu,项目名称:SmallGame_Cocos2dx,代码行数:10,代码来源:GameSprite_Gold.cpp


示例9: convertToNodeSpace

bool CCSpriteEx::isTouchInside( CCTouch* touch )
{
    CCPoint touchLocation = touch->getLocation(); // 返回GL坐标

    CCPoint localPos = convertToNodeSpace(touchLocation);
    CCRect rc = rect();
    rc.origin = CCPointZero;
    bool isTouched = rc.containsPoint(localPos);
    return isTouched;
}
开发者ID:edudemy,项目名称:customized--portraits,代码行数:10,代码来源:CCSpriteEx.cpp


示例10: convertToNodeSpace

void CCutScene::checkFoodSliced()
{
    if (m_nSliceCount >= 8)
    {
        //todo:暂时不能切,播放庆祝特效
        
        m_nSliceCount = 0;
        CFoodCut* pFood = NULL;
        int nIndex = -1;
        int nCount = m_vCutFoods.size();
        for (int i = 0; i < nCount; i++)
        {
            pFood = m_vCutFoods[i];
            if (pFood != NULL)
            {
                nIndex = pFood->getTouchedIndex();
                Vec2 v2Dest = convertToNodeSpace(m_pContentLayer->convertToWorldSpace(PANZI_POSITION[nIndex]));
                float fSpeed = 1200;
                float fDis = pFood->getPosition().distance(v2Dest);
                pFood->runAction(Sequence::create(DelayTime::create(0.08f * i),
                                                  MoveTo::create(fDis / fSpeed, v2Dest),
                                                  CallFunc::create([this, pFood, nCount, nIndex](){
                    static int nTmp = 0;
                    nTmp ++;
                    if (nTmp >= nCount)
                    {
                        nTmp = 0;
                        //todo: 在盘子上创建碎食材
                        std::vector<int> vMaterials = pFood->getMaterials();
                        MATERIAL_ID eId = MI_MAX;
                        if (vMaterials.size() != 0)
                        {
                            eId = (MATERIAL_ID)vMaterials[0];
                        }

                        int aTastes[TT_MAX] = {0};
                        CFoodPiece* pFoodPiece = CFoodPiece::create(eId);
                        if (pFoodPiece != NULL)
                        {
                            pFoodPiece->initProperty(FT_SUIPIAN, vMaterials, aTastes);
                            m_pContentLayer->addChild(pFoodPiece, 1);
                            pFoodPiece->setPosition(PANZI_POSITION[nIndex]);
                        }
                        
                        CGlobalData::getSingleton()->setPanziFood(pFood->getPanziIndex(), pFood);
                    }
                    
                    pFood->removeFromParent();
                }), NULL));
            }
        }
        m_vCutFoods.clear();
        m_bHasFood = false;
    }
}
开发者ID:GitofThunder,项目名称:gitskills,代码行数:55,代码来源:CutScene.cpp


示例11: ccp

void BBAbstractSceneView::onTouchScaleBegin(float nDistance, float nFocusX, float nFocusY)
{
	m_ptScaleBeginFocus = ccp(nFocusX, nFocusY);
	m_nScaleBeginScale = getScale();
	m_nScaleBeginDistance = nDistance;
	
	CCSize cs = getContentSize();
	m_ptScaleBeginFocusRate = convertToNodeSpace(m_ptScaleBeginFocus);
	m_ptScaleBeginFocusRate.x/=cs.width;
	m_ptScaleBeginFocusRate.y/=cs.height;
};
开发者ID:newcl,项目名称:boom,代码行数:11,代码来源:BBAbstractSceneView.cpp


示例12: onTouchesMoved

void ScrollViewDemo::onTouchesMoved(const std::vector<Touch*>& touches, Event  *event)
{
    if (!_scrolling) return;
	Touch *touch = touches[0];
    auto clipper = this->getChildByTag(kTagClipperNode);
    auto point = clipper->convertToNodeSpace(Director::getInstance()->convertToGL(touch->getLocationInView()));
	Vec2 diff = point - _lastPoint;
    auto content = clipper->getChildByTag(kTagContentNode);
    content->setPosition(content->getPosition() + diff);
    _lastPoint = point;
}
开发者ID:anilgulgor,项目名称:myGame,代码行数:11,代码来源:ClippingNodeTest.cpp


示例13: getNodeRect

bool RCCheckButton::ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent)
{
    bool bRet = false;
	CCRect checkBtnRect = getNodeRect();
	if(checkBtnRect.containsPoint(convertToNodeSpace(pTouch->getLocation())))
	{
		m_pText->setColor(m_selectedLabelColor);
		bRet = true;
	}
	return bRet;
}
开发者ID:ryanflees,项目名称:CocosbuilderDemo,代码行数:11,代码来源:RCCheckButton.cpp


示例14: convertToNodeSpace

bool Slider::onTouchBegan(Touch *touch, Event *unusedEvent)
{
    bool pass = Widget::onTouchBegan(touch, unusedEvent);
    if (_hitted)
    {
        Vec2 nsp = convertToNodeSpace(_touchBeganPosition);
        setPercent(getPercentWithBallPos(nsp.x));
        percentChangedEvent();
    }
    return pass;
}
开发者ID:Ratel13,项目名称:Cocos2dGame-v3.7,代码行数:11,代码来源:UISlider.cpp


示例15: convertToNodeSpace

bool Widget::hitTest(const Vec2 &pt)
{
    Vec2 nsp = convertToNodeSpace(pt);
    Rect bb;
    bb.size = _contentSize;
    if (bb.containsPoint(nsp))
    {
        return true;
    }
    return false;
}
开发者ID:AppleJDay,项目名称:cocos2d-x,代码行数:11,代码来源:UIWidget.cpp


示例16: convertToNodeSpace

bool Slider::onTouchBegan(CCTouch *touch, CCEvent *unused_event)
{
    bool pass = Widget::onTouchBegan(touch, unused_event);
    if (_hitted)
    {
        CCPoint nsp = convertToNodeSpace(_touchStartPos);
        setPercent(getPercentWithBallPos(nsp.x));
        percentChangedEvent();
    }
    return pass;
}
开发者ID:birdcpe25,项目名称:cocos2d-x,代码行数:11,代码来源:UISlider.cpp


示例17: ccp

void BaseBug::onEnter(){
    //接收对象, 优先级,ture时阻止其他类的move and end
    CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, CC_MAX_TOUCHES,true);
    CCSize s = CCDirector::sharedDirector()->getWinSize();
    CCPoint p = ccp(s.width/2, s.height/2);
    p = convertToNodeSpace(p);
    loaderBug(p);
    rotationToPoint(p);
    moveToPoint(p);
    CCSprite::onEnter();
}
开发者ID:laogong5i0,项目名称:MiniGame,代码行数:11,代码来源:BaseBug.cpp


示例18: convertToNodeSpace

void SpinoffDragAndDrop::update(float dt)
{
	if (_state != State::STAY)
	{
		cocos2d::Vec2 p0 = convertToNodeSpace(getParent()->getPosition());
		cocos2d::Vec2 p1 = _texture->getPosition();

		Utils::Spline<cocos2d::Vec3> spline;
		spline.AddKey(cocos2d::Vec3(p0.x, p0.y, 10.0f));
		spline.AddKey(cocos2d::Vec3(p1.x, p1.y, 70.0f));
		spline.CalculateGradient();

		_strip->setVisible(true);
		_strip->setStripGeometry(spline);
	
		if (!World::Instance().GetTutorialManager().IsTutorialStateAvailable("ReadyToCreateSpinoff"))
		{
			if (!_isAttracting) {
				float shift_dist = 50.0f;
				float shift_speed = 3.0f;
				cocos2d::Vec2 screen = cocos2d::Director::getInstance()->getVisibleSize();
				cocos2d::Vec2 origin = cocos2d::Director::getInstance()->getVisibleOrigin();
				cocos2d::Rect bounds;
				bounds.origin = origin + cocos2d::Vec2(shift_dist, shift_dist);
				bounds.size = screen - cocos2d::Vec2(shift_dist, shift_dist) * 2.0f;
				if (!bounds.containsPoint(_touchWorld)) {
					cocos2d::Vec2 p0 = origin+screen/2.0f;
					cocos2d::Vec2 p1 = _touchWorld;
					_projector->ShiftView((p0-p1).getNormalized() * shift_speed);
					_projector->Update();
					_worldMapLayer->UpdateMapElements();
					_texture->setPosition(convertToNodeSpace(_touchWorld));
				}
			}
		}
	}
	else
	{
		_strip->setVisible(false);
	}
}
开发者ID:RuWhyNot,项目名称:thewe,代码行数:41,代码来源:SpinoffDragAndDrop.cpp


示例19: log

bool DragItemImage::onTouchBegan(Touch* touch, Event* event) {
	log("onTouchBegan");
	auto target = static_cast<DragItemImage*>(event->getCurrentTarget());
	Point locationInNode = target->convertToNodeSpace(touch->getLocation());
	Size s = target->getContentSize();
	Rect rect = Rect(0, 0, s.width, s.height);
	if (rect.containsPoint(locationInNode) && target->sum > 0) {
		target->isDragged = true;
		return true;
	}
	return false;
}
开发者ID:AmazingZhen,项目名称:Hohxil,代码行数:12,代码来源:DragItemImage.cpp


示例20: schedule

bool CustomOneTouchListView::init()
{
    if (!ListView::init()) {
        return false;
    }
    _canHandleLogic = true;
    
    schedule([this](float delta){
        Size size = getContentSize();
        for (auto& p : getChildren()) {
            Vec2 bottomleft = convertToNodeSpace(p->convertToWorldSpace(Vec2::ZERO));
            Vec2 topright = convertToNodeSpace(p->convertToWorldSpace(Vec2(p->getContentSize())));
            if (bottomleft.x > size.width || topright.x < 0 || bottomleft.y > size.height || topright.y < 0) {
                p->setVisible(false);
            }
            else p->setVisible(true);
        }
    
    }, "checkout");
    return true;
}
开发者ID:chakke,项目名称:zzz,代码行数:21,代码来源:CustomOneTouchUI.cpp



注:本文中的convertToNodeSpace函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ convertToXML函数代码示例发布时间:2022-05-30
下一篇:
C++ convertSecondsToDOMTimeStamp函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap