cocos2d-x中的鼠标/触摸坐标
Mouse/Touch coordinates in cocos2d-x
我正在尝试获取我点击的位置的xy坐标,或者更好的是鼠标指针所在的位置,这样我就可以将它们转换为char并显示在屏幕上,我记得hellolua中的一些东西将点击和移动的坐标作为触摸移动扔到控制台中,所以我想也许我可以用cctouch命令getLocationInView((在cpp中做一些类似的事情;,这就是我所做的。在init中,我声明
setTouchEnabled(true);
在我试图获得触摸坐标的地方,我使用
CCTouch pTouch;
CCPoint p = pTouch.getLocationInView();
p = CCDirector::sharedDirector()->convertToGL(p);
float x = p.x;
float y = p.y;
然而,它并没有像我所期望的那样起作用。有人知道如何在cocos2d-x(cpp(中准确返回鼠标/触摸坐标吗?
编辑:对不起,我应该澄清一下,我正在VisualStudioExpress环境中的Windows7桌面上工作,我希望这个项目是跨平台的。示例中的hellolua应用程序具有这样的功能,即鼠标单击会将以坐标开头和结尾的触摸事件抛出控制台,即使我使用的是鼠标。这就是为什么我希望我可以在CPP中做一些类似的事情,除了在屏幕上打印坐标。然而,使用这段代码,我会得到x和y的静态值,无论我点击哪里,它们都不会改变。
试试这个代码:
bool PickCard::ccTouchBegan(CCTouch* touch, CCEvent* event)
{
CCPoint touchLocation = touch->getLocationInView();
touchLocation = CCDirector::sharedDirector()->convertToGL( touchLocation );
touchLocation=convertToNodeSpace(touchLocation);
CCLOG(" TouchLocation X=%f TouchLocation Y=%f",touchLocation.x,touchLocation.y);
}
相关文章:
- QGraphicsPolygonItem在拖动时未更新QPolygonF坐标
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- OpenGL 4.3 错误地将第 4 个纹理坐标映射到与第 3 个纹理坐标相同的位置
- 比较两个节点坐标的最佳方法是什么?
- 在 OpenGL 中将笛卡尔世界坐标转换为球面局部坐标
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- 如何在C++中获取坐标?
- 如何将 x.y 坐标的值存储在不同的数组中
- 检测 OpenCV C++窗口上的触摸
- 如何将鼠标坐标转换为"mm"
- 重心坐标并不总是有效(3d)
- 创建跨平台 C++ 触摸管理器.在 c++ 中传递 Objective-c 对象涉及代码
- 尝试渲染像素坐标时,简单线条渲染失败
- 使用 GTK3 C++获取指针坐标
- 从 CGAL 3D 网格生成中获取顶点坐标的 -6.27744e+66:mesh_implicit_sphere示例
- 我想制作设置鼠标回调函数,以便在仍然按下鼠标左键时连续传递坐标
- X和Y坐标来自带有原始输入的Precision触摸板
- cocos2d-x中的鼠标/触摸坐标
- 是否可以在Windows中获取浮动触摸坐标