gpt4 book ai didi

java - 无法获得 Gui Java Clock 的正确点

转载 作者:行者123 更新时间:2023-12-01 05:50:47 24 4
gpt4 key购买 nike

我的数学有问题,说实话,就数学而言,我不太确定我在做什么。

以下是适用的代码:

seconds = (cal.get(Calendar.SECOND)+(cal.get(Calendar.MILLISECOND)/1000.0))-15;
minutes = cal.get(Calendar.MINUTE)+(seconds/60);
hours = ((cal.get(Calendar.HOUR))+(minutes/60))/12;
//draw sec hand
g2.drawLine(cx, cy, cx+(int)(Math.cos((Math.PI/30)*(seconds))*(r/2-25)), cy+(int)(Math.sin((Math.PI/30)*seconds)*(r/2-25)));
//draw min hand
g2.drawLine(cx, cy, cx+(int)(Math.cos((Math.PI/30)*(minutes)-(Math.PI/2))*(r/2-70)), cy+(int)(Math.sin((Math.PI/30)*minutes-(Math.PI/2))*(r/2-70)));
//draw hour hand
g2.drawLine(cx, cy, cx+(int)(Math.cos((Math.PI/12)*(hours))*(r/2-120)), cy+(int)(Math.sin((Math.PI/12)*hours)*(r/2-120)));

最佳答案

这是数学计算(假设您从日历中获取了要显示的小时、分钟和秒)

// hour
theta = 90 - 30*hour - minute/2;

//minute
theta = 90 - 6*minute - second/10;

//second
theta = 90 - 6*second;

给出以度为单位的角度,乘以 Math.PI/180 以转换为弧度。手的端点 a 位于 (r*cos(theta), -r*sin(theta)) 处,距离 (centerX, centerY)。问候,-M.S.

关于java - 无法获得 Gui Java Clock 的正确点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4753712/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com