zoukankan      html  css  js  c++  java
  • 模拟时钟的问题

    上学期中旬的实训未解决的问题:1、时针不能表现分钟出的区别,2、有时会乱摆动。

    数学公式没有错误,怎么调也是那个问题。

    x = cos (2*PI/$);

    y = sin (2*PI/$);

    这个是单位圆上的指针的方向。然后乘上系数,就能构造出长度各异的时针分针和秒针。

    变量名有点乱。。解释一下

    secondofR是秒针。。同理理解分针和时针

    1问题是因为(int)(Init.y/4)*sin(TWOPI/12*(DateTime.wHour - 3 + (DateTime.wMinute)/60) );单单一个60把(DateTime.wMinute)/60) )的运算结果搞成整数了,由于分钟数DateTime.wMinute不可能大于60,这就造成(DateTime.wMinute)/60) )的结果不是0就是1了,导致(DateTime.wHour - 3 + (DateTime.wMinute)/60) 换算出来的小时不是比较精确的小数而是浮动在DateTime.wHour+/-1的整数,导致指针突然摆动5格(30度)。

    这是一个很容易犯的错误,与此相应的还有if(a==0.1)的问题。(补充)

    2问题是因为把分钟换算成小时的时候加的位置搞错了,对时钟指针角度换算公式理解不到位。

  • 相关阅读:
    MySQL 数据库常用命令
    HTML常用标签介绍
    浏览器 返回状态码汇总
    Mysql常用的三种数据库引擎比较
    系统常用端口大全
    nginx入门与实战
    Linux系统基础优化及常用命令
    python开发之virtualenv与virtualenvwrapper讲解
    常用服务安装部署
    远程连接Linux
  • 原文地址:https://www.cnblogs.com/ppazhang/p/2913104.html
Copyright © 2011-2022 走看看