2.2 图形表示
本节将给出几个概念,这对于仿真期间系统的图形表示是必要的。
2.2.1 模式
模式是一个具有两行或三行(取决于对象是在平面还是空间中)和n列的矩阵,列表示一个固定形状的多边形的n个顶点,用来表示对象。在该模式中,所有两个连续的点构成的线段的集合形成所希望的多边形的边是很重要的,例如,汽车(带有后轮)底盘(见图2-2)的模式M如下:
显然,图2-2中的汽车是运动的,前轮相对于底盘移动,同时前轮之间也有相对运动,因此它们不能纳入底盘模式。为了绘制汽车图形,需要采用3种模式:底盘的模式、左前轮的模式和右前轮的模式。在MATLAB中,模式M(这里是二维的)可以用以下指令以蓝色绘制:
2.2.2 旋转矩阵
2.2.3 齐次坐标
在屏幕上绘制二维或三维对象需要用以下形式的仿射变换(旋转、平移和相似变换):
式中,n=2或3。然而,组合仿射函数的操作不像线性变换那样简单,齐次坐标变换的方法是将仿射方程组变换为线性方程组。首先,可将形式为y=Ax+b的仿射方程写成如下形式:
然后,定义向量的齐次变换如下:
得到如下方程:
这是由3个仿射变换的组合,它可以重写为以下形式: