• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >游戏开发 > 8个块的圆形转盘,传入的角度如果是负数如何计算对应的块是哪个?

8个块的圆形转盘,传入的角度如果是负数如何计算对应的块是哪个?

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了圆形餐桌带转盘,圆形转盘,半圆形转盘成型机,圆形转盘图片,十字路口的圆形转盘等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 8个块的圆形转盘,传入的角度如果是负数如何计算对应的块是哪个?
描述:

如图是8个块的转盘,假如传入的角度值是负数,如何计算它对应是哪个块呢?

每个角度是 360 / 8 = 45

0 - 44 = 0
45 - 89 = 1
90 - 134 = 2
135 - 179 = 3
180 - 224 = 4
225 - 269 = 5
270 - 314 = 6
315 - 359 = 7

假如传入 -1,那么对应的块应该是7
传入 -46,对应的块应该是6
传入 90,对应的块应该是2

请问是怎么样的计算过程呢?


解决方案1:

你说传入的是角度,个人感觉,更像是弧度。

另外,-46应该对应2吧?

假设传入的是n,首先 var index = n % 8;
转盘上的数字,可以用 array 来表示。var arr = [0, 1, 2, 3, 4, 5, 6, 7]
然后用 arr.slice(n, n + 1) 就可以得到结果

解决方案2:

先取余数,在 JS 里可以直接对负数取余,余数也是负,比如 -46 % 8 === -6

然后将结果加 8 就可以得到正数,但是如果原来本来就是正数,加 8 之后就超过了 8,所以再取一次余

var block = (index % 8 + 8) % 8;

不过算出来 -46 对应的是 2,而不是 6,想像一相,反转 5 圈(40)之后再反转 6 个位置,的确是正数第 2 个呵,所以估计是你给的值有错。


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 8个块的圆形转盘,传入的角度如果是负数如何计算对应的块是哪个?

相关文章

  • 2017-06-05 GL画线的简单问题(只有这么么多分了)
  • 2022-04-30Unity 3D三维模型简介
  • 2017-06-05 有没有什么好的材料方法适合自学Unity3D
  • 2022-04-30Unity 3D导航系统(Navigation)
  • 2017-06-05 手游服务端如何验证客户端的传回的战斗结果(战报)?
  • 2022-04-30Unity 3D Label控件
  • 2017-06-05 出现这个错误是什么情况,怎么解决啊
  • 2017-06-05 请教有关3ds读取纹理坐标的相关细节。
  • 2017-06-05 Unity3D在特定物体表面绘制椭圆
  • 2017-06-05 极客学院新版抢鲜看注册即送VIP会员

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • cocos2d-x
    • 打包时如何剔除像UnityEngineUIdll这样不需要的类库
    • iOScocos2dx工程和原生工程整合
    • OGRE源码分析
    • 新手,cocos2d报错,大神求助啊
    • 为什么D3D9!Direct3DShaderValidatorCreate9这个函数没有参数呢?
    • h5的canvas做游戏,提高性能最好用几层canvas
    • 请教,ClippingNode遮罩在windows下运行正确,手机上没有遮挡效果
    • 继承多个父类,呈现多态的时候,不能正常运行,指针如何转换
    • Unity 3D环境特效

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有