函数:Linspace(a,b,n)
Linspace需要装填三个参数。a、b可以同时为空间矢量,也可以同时为数值。
当a、b是空间矢量(Vec3)时,表示为空间里线段的起点和终点。
当a、b是数值(浮点型或整型)时,表示为单位1为半径的圆弧的起点和终点角度值(弧度制)。
n则表示要将这段直线(或者半径为单位1的圆弧)分成n-1份。因此,会在a、b两点直接生成n个点(含a、b两点)。

示例:

# 创建立方体
test_cube = scale(50) * Cube()
# 转为Array
Test_Array = Array(test_cube)
# 线性排布
for i in linspace(Vec3(0,0,0),Vec3(1000,0,0),10):  # 生成11个点
# 将Test_Array依次平移并添加到这十一个点上,并存于Test_Array中
    Test_Array.append(translate(i)) 

示例2:

# 创建立方体
test_cube = scale(50) * Cube()
# 转为Array
Test_Array = Array(test_cube)
# 线性排布
# 设置半径
R = 200
for i in linspace(0,pi*2 *11/12,12):  # 在0到330°之间,生成12个角度值
# 这里将单位圆生成的12个点转化为了半径为R的圆上的12个点
# 然后将Test_Array依次平移并添加到这12个点上,并存于Test_Array中。
    Test_Array.append(translate(Vec3(R*cos(i),R*sin(i),0)))
# 布置线性排布后的Test_Array


可能有同学会好奇,为什么不是0°到360°上生成12个点、或者是0°到360°上生成13个点,这里可以自行思考并尝试一下,就会发现问题所在啦。