本文整理汇总了C#中cocos2d.CCTouch.locationInView方法的典型用法代码示例。如果您正苦于以下问题:C# CCTouch.locationInView方法的具体用法?C# CCTouch.locationInView怎么用?C# CCTouch.locationInView使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cocos2d.CCTouch
的用法示例。
在下文中一共展示了CCTouch.locationInView方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ccTouchEnded
public override void ccTouchEnded(CCTouch pTouch, CCEvent pEvent)
{
if (m_pTrackNode != null)
{
return;
}
CCPoint endPos = pTouch.locationInView(pTouch.view());
endPos = CCDirector.sharedDirector().convertToGL(endPos);
float delta = 5.0f;
if (Math.Abs(endPos.x - m_beginPos.x) > delta
|| Math.Abs(endPos.y - m_beginPos.y) > delta)
{
// not click
m_beginPos.x = m_beginPos.y = -1;
return;
}
// decide the trackNode is clicked.
CCRect rect;
CCPoint point = convertTouchToNodeSpaceAR(pTouch);
Debug.WriteLine("KeyboardNotificationLayer:clickedAt(%f,%f)", point.x, point.y);
rect = TextInputTestScene.getRect(m_pTrackNode);
Debug.WriteLine("KeyboardNotificationLayer:TrackNode at(origin:%f,%f, size:%f,%f)",
rect.origin.x, rect.origin.y, rect.size.width, rect.size.height);
this.onClickTrackNode(CCRect.CCRectContainsPoint(rect, point));
Debug.WriteLine("----------------------------------");
}
示例2: ccTouchBegan
// CCLayer
public override bool ccTouchBegan(CCTouch pTouch, CCEvent pEvent)
{
Debug.WriteLine("++++++++++++++++++++++++++++++++++++++++++++");
m_beginPos = pTouch.locationInView(pTouch.view());
m_beginPos = CCDirector.sharedDirector().convertToGL(m_beginPos);
return true;
}
示例3: updateSize
public void updateSize(CCTouch touch)
{
CCPoint touchLocation = touch.locationInView(touch.view());
touchLocation = CCDirector.sharedDirector().convertToGL(touchLocation);
CCSize s = CCDirector.sharedDirector().getWinSize();
CCSize newSize = new CCSize(Math.Abs(touchLocation.x - s.width / 2) * 2, Math.Abs(touchLocation.y - s.height / 2) * 2);
CCLayerColor l = (CCLayerColor)getChildByTag(kTagLayer);
l.contentSize = newSize;
}
示例4: ccTouchEnded
public virtual void ccTouchEnded(CCTouch touch, CCEvent eventer)
{
CCPoint touchPoint = touch.locationInView(touch.view());
CCPoint convertedLocation = CCDirector.sharedDirector().convertToGL(touchPoint);
//执行运动
CCActionInterval move = CCMoveTo.actionWithDuration(3, convertedLocation);
CCActionInterval move_ease_inout = CCEaseInOut.actionWithAction(move);//ease缓冲
base.runAction(move_ease_inout);
}
示例5: ccTouchEnded
public void ccTouchEnded(CCTouch pTouch, CCEvent pEvent)
{
CCPoint point = pTouch.locationInView(0);
CCPoint newPoint = CCDirector.sharedDirector().convertToGL(point);
CCPoint rePoint = GetGroundPosition(newPoint);
if ((int)rePoint.x < Map.Height &&
(int)rePoint.y < Map.Width &&
(role.Col != (int)rePoint.y || role.Row != (int)rePoint.x))
{
map.ChangeToWall((int)rePoint.x, (int)rePoint.y);
}
role.GetPathNodeList();
}
示例6: ccTouchMoved
public override void ccTouchMoved(CCTouch touch, CCEvent parmevent)
{
CCPoint touchLocation = touch.locationInView(touch.view());
CCPoint prevLocation = touch.previousLocationInView(touch.view());
touchLocation = CCDirector.sharedDirector().convertToGL(touchLocation);
prevLocation = CCDirector.sharedDirector().convertToGL(prevLocation);
CCPoint diff = new CCPoint(touchLocation.x - prevLocation.x, touchLocation.y - prevLocation.y);
CCNode node = getChildByTag(1);
CCPoint currentPos = node.position;
node.position = new CCPoint(currentPos.x + diff.x, currentPos.y + diff.y);
}
示例7: itemForTouch
protected CCMenuItem itemForTouch(CCTouch touch)
{
//XNA point
CCPoint touchLocation = touch.locationInView(touch.view());
//cocos2d point
touchLocation = CCDirector.sharedDirector().convertToGL(touchLocation);
if (m_pChildren != null && m_pChildren.Count > 0)
{
foreach (var pChild in m_pChildren)
{
if (pChild != null && pChild.visible && ((CCMenuItem)pChild).Enabled)
{
CCPoint local = pChild.convertToNodeSpace(touchLocation);
CCRect r = ((CCMenuItem)pChild).rect();
r.origin = CCPoint.Zero;
if (CCRect.CCRectContainsPoint(r, local))
{
return (CCMenuItem)pChild;
}
}
}
}
return null;
}
示例8: convertTouchToNodeSpaceAR
/// <summary>
/// converts a CCTouch (world coordinates) into a local coordiante. This method is AR (Anchor Relative).
/// @since v0.7.1
/// </summary>
public CCPoint convertTouchToNodeSpaceAR(CCTouch touch)
{
CCPoint point = touch.locationInView(touch.view());
point = CCDirector.sharedDirector().convertToGL(point);
return this.convertToNodeSpaceAR(point);
}
示例9: ccTouchMoved
public virtual void ccTouchMoved(CCTouch touch, CCEvent eventer)
{
// If it weren't for the TouchDispatcher, you would need to keep a reference
// to the touch from touchBegan and check that the current touch is the same
// as that one.
// Actually, it would be even more complicated since in the Cocos dispatcher
// you get CCSets instead of 1 UITouch, so you'd need to loop through the set
// in each touchXXX method.
Debug.Assert(m_state == PaddleState.kPaddleStateGrabbed, "Paddle - Unexpected state!");
CCPoint touchPoint = touch.locationInView(touch.view());
touchPoint = CCDirector.sharedDirector().convertToGL(touchPoint);
base.position = new CCPoint(touchPoint.x, base.position.y);
}
示例10: ccTouchEnded
public override void ccTouchEnded(CCTouch touch, CCEvent eve)
{
CCPoint location = touch.locationInView( touch.view() );
CCPoint convertedLocation = CCDirector.sharedDirector().convertToGL(location);
CCPoint pos = new CCPoint(0,0);
if (m_background != null)
{
pos = m_background.convertToWorldSpace(new CCPoint(0,0));
}
m_emitter.position = CCPointExtension.ccpSub(convertedLocation, pos);
}
示例11: ConvertTouchToNodeSpace
/// <summary>convenience methods which take a CCTouch instead of CCPoint </summary>
public CCPoint ConvertTouchToNodeSpace(CCTouch touch)
{
CCPoint point = touch.locationInView(touch.view());
point = Director.SharedDirector.ConvertToGL(point);
return this.ConvertToNodeSpace(point);
}