第19章:三维图形
ξ 19.1 三维指令
二维指令 三维指令
setxy setxy 设置x、y坐标(不改变z轴坐标)
setxyz 设置x、y、z坐标 setxyz x坐标 y坐标 z坐标
setx setx
sety sety
setz 设置z坐标 setz z坐标
xcor xcor
ycor ycor
zcor 获取z坐标
pos pos 获取坐标(忽略z轴坐标)
posxyz 获取坐标
setpos setpos 设置位置(不改变z轴坐标)
setposxyz 设置位置 setposxyz [ x坐标 y坐标 z坐标 ]
towards towards
towardsxyz 获取朝向,包括横滚、俯仰和航向角度 towardsxyz [ x坐标 y坐标 z坐标 ]
distance distance
distancexyz 沿直线到达三维坐标的距离 distancexyz [ x坐标 y坐标 z坐标 ]
heading heading
roll 获取横滚的角度
pitch 获取俯仰的角度
orientation 获取方向
setheading setheading
setroll 旋转到绝对角度,从正x轴到负z轴(绕y轴旋转)的滚动度数 setroll角度值
setpitch 旋转到绝对高度,从负z轴到正y轴(绕x轴旋转)的滚动度数 setpitch角度值
setorientation 定位到绝对方向setorientation [横滚角度 俯仰角度 航向角度 ]
rt / right rt / right 右转(在当前平面上)
rightroll 右卷
uppitch 向上倾斜
lt / left lt / left 左转(在当前平面上)
leftroll 左卷
downpitch 向下倾斜
window perspective
wrap
fence
polystart 开始定义多边形,落笔移动时,将目标坐标做为顶点加入多边形
polyend 完成最近的 polystart 调用开始的多边形定义
polyview 擦除屏幕,并将 polystart 和 polyend 定义的所有多边形着色渲染
light 输出光线 结果: [ 环境光数值 漫反射光数值 ] 两个数值范围都是从0.0到1.0
setlight 设置光线setlight [环境光数值 漫反射光数值 ] 两个数值范围都是从0.0到1.0
ellipsearc ellipsearc
ξ 19.2 透视效果图形
代码
to liubianxing ;画六边形
ht ;隐藏箭头
polystart ;开始定义多边形
repeat 6 [ ;重复执行6次
fd 100 ;前进100像素
rt 60 ;右转60度
]
polyend ;结束多边形定义
end
to toushi ;主程序
perspective ;进入透视模式
repeat 72 [ ;重复执行72次
liubianxing ;调用画六边形程序
rightroll 5 ;右卷5度
]
polyview ;渲染多边形
setlight [ 0.3 0.5 ] ;设置光线,环境光0.3,漫反射光0.5
end
运行程序
toushi
运行效果
下一篇
第20章:时间和定时器
ξ 20.1 输出时间
ξ 20.2 计时指令
ξ 20.3 延时指令
ξ 20.4 定时器