上QQ阅读APP看书,第一时间看更新
1.9 例题8:应用球面坐标系绘制球面螺旋线
1.解题思路
球坐标系(r,θ,φ)与直角坐标系(x,y,z)的转换关系为:
x=rsinθcosφ,y=rsinθsinφ,z=rcosθ。
利用球面坐标系绘制球面螺旋线,通过分析知道起始点为(0,0,r),终点为(0,0,-r),则θ的取值为0°~180°,每旋转一圈φ的取值为0°~360°,半径r控制球体的大小(图1-75)。
图1-75
2.知识点
● 面坐标法
● Point. BySphericalCoordinates
3.例题详解
整体流程与例题7类似。
(1)在Geometry(几何学)→Points(点)→Point(点)→BySphericalCoordinates(通过球面坐标生成点),调取节点Point.BySphericalCoordinates(通过球面坐标生成点)。
(2)在0°~180°取值区间内,取1000个点,即1000个列表项,表示θ。
(3)在0°~360°b取值区间内,取1000个点,即1000个列表项,表示φ;圈数b可以通过一个数字滑块来表示。
(4)调用一个固定数值表示半径r。
(5)通过NurbsCurve.ByPoints(通过点的样条曲线)节点串联各点,这样便得到了球面螺旋线,如图1-76所示。
图1-76
保存文件为“球面螺旋线.dyn”。