发布网友 发布时间:2022-04-12 12:46
共2个回答
懂视网 时间:2022-04-12 17:08
最近在搞连线的游戏,之前的博客里也提到了用DrawNode画粗线的方法。(http://blog.csdn.net/no99es/article/details/38823673) 线画出来之后,就想用绳子代替它,由于三角函数忘光了,耽误了时间,今天终于搞完了,记录下来。 使用的绳子图片: 网上找的,
最近在搞连线的游戏,之前的博客里也提到了用DrawNode画粗线的方法。(http://blog.csdn.net/no99es/article/details/38823673)
线画出来之后,就想用绳子代替它,由于三角函数忘光了,耽误了时间,今天终于搞完了,记录下来。
使用的绳子图片:
网上找的,横向的绳子。
原理:
用setTextureRect方法,显示指定长度的绳子,然后根据触摸点坐标,进行旋转。
下面贴出两段关键代码:
/*
*添加触摸监听
*/
auto myListener = EventListenerTouchOneByOne::create();
//myListener->setSwallowTouches(true);
myListener->onTouchBegan = CC_CALLBACK_2(LineTest::TouchBegan, this);
myListener->onTouchMoved = CC_CALLBACK_2(LineTest::TouchMoved, this);
myListener->onTouchEnded = CC_CALLBACK_2(LineTest::TouchEnded, this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(myListener, this);
触摸方法里,Began跟Moved代码差不多,大家自由发挥~~
bool LineTest::TouchBegan(Touch* touch, Event* event)
{
spline->setVisible(true);
//长度,触摸点到屏幕中心的距离
int texturehight = sqrt(pow((touch->getLocation().x - visibleSize.width / 2 + origin.x), 2) + pow((touch->getLocation().y - visibleSize.height / 2 + origin.y), 2));
spline->setTextureRect(Rect(0, 0, texturehight, 40));
//旋转
float x = touch->getLocation().x - visibleSize.width / 2.0f + origin.x;
float y = touch->getLocation().y - visibleSize.height / 2.0f + origin.y;
float f = GetRotationDegree(x, y);
spline->setRotation(f);
return true;
}
///////////////////获取旋转角度//////////////
float LineTest::GetRotationDegree(float x, float y)
{
if (x == 0 && y == 0)
{
return 0;
}
float result;
if (x == 0&&y>0)
{
return 90;
}
else if (x == 0 && y < 0)
{
return 180;
}
else
{
float temp = y / x;
result = - atan(temp) * 180.0 / M_PI;
if (x>0)
{
return result;
}
else
{
return result+180;
}
}
}
效果:
热心网友 时间:2022-04-12 14:16
摘要你好,关于你的问题我觉得C#输ESC打印指令代码1、在连接打印机的那台电脑上,点击开始菜单,选择“打印机和传真”,单击,选择要共享的打印机图标,右击,选择共享,然后,点击“完成”2、在局域网的任意一台电脑上(不含已连接打印机的那台),点击开始菜单,选择“ 打印机和传真”,单击打开,在左边任务栏,选择添加打印机,打开添加打印机向导,希望能够帮助到你咨询记录 · 回答于2021-10-14utility+manager触摸屏打印触摸屏连接打印机 怎么用m点控制你好,关于你的问题我觉得C#输ESC打印指令代码1、在连接打印机的那台电脑上,点击开始菜单,选择“打印机和传真”,单击,选择要共享的打印机图标,右击,选择共享,然后,点击“完成”2、在局域网的任意一台电脑上(不含已连接打印机的那台),点击开始菜单,选择“ 打印机和传真”,单击打开,在左边任务栏,选择添加打印机,打开添加打印机向导,希望能够帮助到你。。。什么东东怎么截取触摸屏的 画面打印出来截取屏幕的部分画面,可以先将屏幕的全屏画面粘贴到“画图”中,然后再根据需要剪切就可以了。具体操作步骤如下:1、按一下键盘上的Prtsc SysRq键2、打开操作系统自带的“画图”3、点击鼠标右键,点击“粘贴”,将屏幕画面粘贴到画图中4、点击画图工具中的“剪裁”5、按住鼠标左键,选中需要的部分画面6、点击鼠标右键,点击“剪切”7、打开“画图”中的新建,创建一个新窗口8、点击鼠标右键选择“粘贴”,然后保存就可以了。