j2me开发人员进来看看?

xiaojing253588 2003-03-25 03:05:16
我现在有一个问题,就是求sin(浮点数),cos(浮点数)的值,该怎么办呢?
...全文
13 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
DavidBone 2003-04-19
ding
回复
xiaojing253588 2003-03-26
看不出来,我看了,写了一下,运算结果不对,您能够帮我写一个吗?
计算一个sin(90)的值.
回复
villagehead 2003-03-26
mathFP的包里有javadoc,看看就明白了!

good luck
回复
xiaojing253588 2003-03-26
aiur(s!MON)请您能不能够给我把里面的那些东西说得清楚一点,像toFP我都不知道是做什么用的,还有要求一个浮点数的tan该怎么去求呢?谢谢.
我的邮箱是:xiaojob@mail.china.cn
回复
xiaojing253588 2003-03-26
呵呵,它本来也就有一个long最多也只支持8位,现在我还是需要更多,不知道有没有什么方法可以这样做?
回复
aiur 2003-03-26
我认为:根据源码,可以相应的将int转换为long,这样可以支持更多的位,但我没有具体试过
回复
xiaojing253588 2003-03-26
以上问题以解决,谢谢你们,现在又有新的问题,他的精度只有8位,现在我要它能够支持更多的位,该如何做?
回复
villagehead 2003-03-25
送佛送上西
http://home.rochester.rr.com/ohommes/MathFP/mathfp_2_0_5.zip
回复
aiur 2003-03-25
to xiaojing253588
抱歉,现在才看到你的短消息。
你已经有了MathFP了吗?如果有了的话,其中就有求sin,cos,tan等的值。
这个类是利用了java里的int是4个字节,它用两个字节来存储整数数据,两个字节来存储小数数据,所以要注意int的溢出。

以下的例子是画一个圆
int x,y,r;

r=50;

for(int k=0;k<360;k++)

{

x=MathFP.mul(MathFP.toFP(r),MathFP.cos(MathFP.toFP(k)));

y=MathFP.mul(MathFP.toFP(r),MathFP.sin(MathFP.toFP(k)));

x=MathFP.toInt(x);

y=MathFP.toInt(y);

g.drawRect(x+r,y+r,1,1);

}
回复
xiaojing253588 2003-03-25
谢谢up,这个我有,我要的浮点数,还要tan()等.
回复
villagehead 2003-03-25
good luck
回复
villagehead 2003-03-25
你去google上面
找一个叫MathFP的东西试试
它里面就有sin,cos的函数,
但是是用整数“模拟”的!

sun的网站上也能查到有关的2篇文章!
回复
相关推荐
发帖
J2ME
创建于2007-09-28

1.3w+

社区成员

Java J2ME
申请成为版主
帖子事件
创建了帖子
2003-03-25 03:05
社区公告
暂无公告