游戏开发论坛

 找回密码
 立即注册
搜索
12
返回列表 发新帖
楼主: zodane

椭圆坐标方程

[复制链接]

2

主题

45

帖子

45

积分

注册会员

Rank: 2

积分
45
发表于 2007-5-10 15:24:00 | 显示全部楼层

Re:椭圆坐标方程

xpertsoft的方法很完美,请提供具体算法,那个地址访问不了。

89

主题

4036

帖子

4132

积分

论坛元老

Rank: 8Rank: 8

积分
4132
发表于 2007-5-10 16:17:00 | 显示全部楼层

Re:椭圆坐标方程

假设一条参数曲线和某个参数 t 相关。
L:
   x  = f(t)
   y  = g(t)

如果我们绘制这条参数曲线的时候的,t是按比例增加的话。可能点的分布会不均匀。那么按照什么公式来决定t的步长能让曲线的点分布均匀呢?
   首先我们对参数曲线公式进行微分。

   dx  = df(t)
   dy  = dg(t)

   那么

   ds = sqrt( dx * dx + dy * dy)
   于是 ds 跟 dt 的关系便建立起来了。
   
   ds = sqrt( f'(t) * f'(t) + g'(t) * g'(t) ) * dt.
  
   代入t = 0 跟 t=0 时候的步长 dt(0) 可以得到 t=0 时候ds(0) 。

   根据需求。我们要保证以后每个dt(t)的值。 ds(t) = ds(0)因此。
   得到
  dt(t) = ds(0) / sqrt( f'(t) * f'(t) + g'(t) * g'(t) )  
        = dt(0) * sqrt( f'(0) * f'(0) + g'(0) * g'(0) ) / sqrt( f'(t) * f'(t) + g'(t) * g'(t) )

这样既可以绘制出等步长的恒线速度的参数曲线

非常简单。只要你会一点解析几何和微积分的简单知识就可以了。

26

主题

537

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2007-5-11 09:11:00 | 显示全部楼层

Re:椭圆坐标方程

终于出现了微积分!高等数学,我心中永远的痛!

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2007-5-11 16:28:00 | 显示全部楼层

Re:椭圆坐标方程

让我翻翻书,

88

主题

1125

帖子

1136

积分

金牌会员

Rank: 6Rank: 6

积分
1136
QQ
 楼主| 发表于 2007-5-12 19:56:00 | 显示全部楼层

Re:椭圆坐标方程

  VB版的,  椭圆角度有严重误差.   
  我做了个测试程序.   每隔5度,  椭圆的倾斜方向就反向.
  Private Sub Command1_Click()
  yy = yy + 5
  Ellipse_CreateArray 1000, 1000, 1000, 0.5, yy
End Sub

Private Sub Form_Load()
yy = 10
Ellipse_CreateArray 1000, 1000, 1000, 0.5, 10

End Sub

2

主题

45

帖子

45

积分

注册会员

Rank: 2

积分
45
发表于 2007-5-14 10:26:00 | 显示全部楼层

Re:椭圆坐标方程

回zodane, 角度参数取值范围是0 - 3.14. 刚好旋转360度. 最好是用xpertsoft的方法作些改进,解决不均速的问题。

2

主题

45

帖子

45

积分

注册会员

Rank: 2

积分
45
发表于 2007-5-14 10:44:00 | 显示全部楼层

Re: 椭圆坐标方程

用Timer作了个旋转效果的演示.

sf_2007514104429.rar

183.1 KB, 下载次数:

88

主题

1125

帖子

1136

积分

金牌会员

Rank: 6Rank: 6

积分
1136
QQ
 楼主| 发表于 2007-5-14 11:08:00 | 显示全部楼层

Re:椭圆坐标方程

  呵呵  :C++  加  微积分 .  太要命了.  

270

主题

6442

帖子

6446

积分

论坛元老

Rank: 8Rank: 8

积分
6446
发表于 2007-5-14 13:44:00 | 显示全部楼层

Re: Re: 椭圆坐标方程

BlueGlobal: Re: 椭圆坐标方程

用Timer作了个旋转效果的演示.


你这是动画,哈哈!没搞明白你那按钮做什么用途的?

2

主题

45

帖子

45

积分

注册会员

Rank: 2

积分
45
发表于 2007-5-14 16:25:00 | 显示全部楼层

Re:椭圆坐标方程

那个按钮没作用,随手放上去的。
反正只是演示动画,作个例子罢了,看过就算了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-26 11:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表