经典图书 智能,很抱歉,只因我最近精神欠佳,又有一些其它事情缠身,所以很少上网,也懒得动脑筋,因此一直没有回答你的问题。想来惭愧,今日帮你推导了一下。
你的原问题:
且不论 SW是否支持闭环 曲线,一个圆柱面上的封闭波浪 曲线方程是:
X(t)=R*cos(t)
Y(t)=H*cos(N*t)
Z(t)=R*sin(t)
t=0~2*pi
其实也很简单。
当Y值不等于0的时候,点(X,Y,Z)不在半径为R的球面大圆上,而是在球面的一个小圆上,其小圆半径为: sqr(R^2-( H*cos(N*t))^2)
因此其方程为:
X(t)= sqr(R^2-(H*cos(N*t))^2)*cos(t)
Y(t)=H*cos(N*t)
Z(t)= sqr(R^2-(H*cos(N*t))^2)*sin(t)
t=0~2*pi
以上是第一种情况,它是一条高度按余弦规律变化的球面波浪线。另一种更实用的是纬度按余弦规律变化的球面波浪线,其方程为:
X(t)= R*cos(θ*cos(N*t))*cos(t)
Y(t)= R*sin(θ*cos(N*t))
Z(t)= R*cos(θ*cos(N*t))*sin(t)
t=0~2*pi
下图中是按两种情况的波浪线:
第一种情况
大圆半径R=50,波幅H=10,波段数N=10
第二种情况
大圆半径R=50,纬度波幅θ=0.2弧度,波段数N=10
|