此示例显示了如何在任意轴上旋转对象。
进行有关原点的旋转。因此,您需要执行翻译,以使预期的旋转轴暂时位于原点。应用旋转变换矩阵后,然后将对象转换回其原始位置。
此示例显示了如何旋转表面y-轴。
创建表面并转化
将表面归为转换对象。
t = hgtransform;冲浪(峰(40),“父母”,t)视图(-20,30)轴手动的
创建变换
设置y- 轴旋转矩阵以-15度旋转表面。
ry_angle = -15*pi/180;ry = makehgtform('yrotate',ry_angle);t.matrix = ry;
表面旋转-15度y- 通过原点的轴。
翻译表面并旋转
现在旋转表面周围y- 通过点x = 20的轴。
创建两个翻译矩阵,一个用于翻译X中的表面-20单元,另一个用于转换20个单元。将两个翻译矩阵与旋转矩阵保持在正确的顺序中并设置转换。
tx1 = makehgtform('翻译',[-20 0 0]);tx2 = makehgtform('翻译',[20 0 0]);t.matrix = tx2*ry*tx1;