6.1 比例、一次函数及直线方程 【比例系数、斜率、截距、参数方程】 ●比例与一次函数 一个数可表示为另一个数乘以常数a 时,称这两者“成比例关系”。此时a 称为比例系数。 比如一颗糖10 日元,买糖花费的金额与糖的数量之间就成比例关系。令买到的糖的数量为x,花费的金额为y,可表示为 y=10x 此时上面所说的比例系数a就等于10。使用这个等式可以计算金额,比如让x=5,即买5 颗糖所需要的金额y为 y=10•5=50 (日元) 买100 颗糖需要的金额y为 y=10•100=1000 (日元) 上面的等式还可以用其他形式表示。一颗糖等于10 日元,那么糖∶金额=1∶10(读作1 比10)。通过这种表示形式,两颗糖等于20 日元,所以糖∶金额=2∶2;同理,7 颗糖等于70 日元, 糖∶金额=7∶70。这一组关系可总结为 糖∶金额=1∶10=2∶20=7∶70 请注意上式的1∶10=2∶20 这一部分。等号两边内侧的两个数相乘有10•2=20,外侧的两个数 相乘有1•20=20,结果相同(参考图6-1-1)。 20 1∶10=2∶20 20 图6-1-1 等式内侧两数相乘与外侧两数分别相乘 再对比一下2 ∶ 20=7 ∶ 70 这部分。内侧的两个数相乘为20•7=140, 外侧的两个数相乘为2•70=140,结果依然相同。那么我们可以得出结论: 当a ∶ b=c ∶ d时,bc=ad 这样的关系我们在2.1 节、2.6 节中都有使用,有兴趣的话可以回顾一下。接下来我们就尝试用这样的关系来计算买糖花费的金额。糖∶ 金额=1 ∶ 10,假设买5 颗糖所需的金额为y,有如下关系成立。 1 ∶ 10=5 ∶ y 内侧的两个数相乘为10•5=50,外侧的两个数相乘为1•y=y,由此可以得到y=50,即买5 颗糖所需要的金额y为50 日元。下面我们再尝试用糖∶ 金额=2 ∶ 20 来计算100 颗糖所花费的金额。 2 ∶ 20=100 ∶ y 由于内侧的两个数相乘等于外侧的两个数相乘,因此有 20•100=2•y 2000=2y ∴ y= 2000 2 =1000(日元) 即买100 颗糖需要的金额为1000 日元。 在上面这样的比例关系中,我们总是能找到一个常数a作为比例系数,且有 y=ax 的关系成立。上例中糖的数量为x,金额为y,比例系数a=10。 在之前的章节中,出现过以每帧3 个像素的速度移动的物体,此时假设帧数为x,行进的距离为y,则有 y=3x 与买糖的例子一样,通过比例关系计算,可以很简单地计算出一定时间的移动距离。但是与买糖的例子不同的是,物体的运动是有初始位置的,而初始位置也需要体现在关系式中。比如物体开始在10 的位置,并且以每帧3 像素的速度行进,令经过的帧数为x,位置为y,则有 y=3x+10 这个关系可以归纳为,如果物体的初始位置为b,并以每帧a 像素的速度行进,则经过x 帧后所经过的距离y为 y=ax+b 这种形式的等式称为一次函数。当b=0时,会得到之前的简单的比例关系式y=ax,因此这种简单的比例关系式也是一种一次函数。 ●一次函数的图形与参数 将一个一次函数表示为图形必定得到一条直线。在一次函数的图形中,a 称为斜率,b 称为截距(参考图6-1-2)。 一次函数可以表示为一条直线,反过来直线也可以代表一个一次函数。但是平面上的直线并不是都可以用形如 y=ax+b 的一次函数来表示。比如与y 轴平行的直线就不是一次函数。这样的直线在数学上可以被看作其斜率a 为无穷大。此外,即使是没有完全与y 轴平行,而只是相对y 轴有微小倾斜的直线,其截距b也可以被看作极大值,这种情况在计算机中是很难处理的(参考图6-1-3)。 于是,当计算机将直线作为图形处理时,都会引入参数t,并以下面这样的参数方程来表示原来的一次函数,这会让计算变得更加方便。 x a t b y a t b x x y y = + = + 也就是说,参数方程将原来的一个一次函数,根据x 坐标、y 坐标进行了拆分,平面的情况下就拆分为两个一次函数来共同表示一条直线(在3.3 节、3.4 节,以及5.2 节中都用过这种方 法)。而上面的参数t,可以将其看作时刻,那么上面的等式就可以表示为“在时刻0 时位于(bx,by),并以速度(ax, ay)运动的直线”。例如 x t y t 3 1 4 2 = + = + 这个参数方程,就表示在时刻0 时位于位置(1, 2),并且以速度(3, 4) 运动的一条直线。这种表示方法与y=ax+b不同的是,即便是与y 轴平行的直线,只要使ax为0,也可以很自然地表示出来,非常方便。 在此基础上,如果对参数t 的取值范围进行限制,就可以表示连接一点到另一点的线段,除此之外还有很多其他用途。像之前的 x t y t 3 1 4 2 = + = + 这条直线,将t 的值限制在0GtG2 范围内,就可以很简单地表示连接点(1, 2) 到点(7, 10) 的线段(参考图6-1-4)。 像这样,在2D(平面)中,使用两个一次函数组成一组参数方程来表示直线的方法,就可以很容易地表示各种各样的直线、线段,这在游戏中制作直线、线段时经常被使用。