ActionScript3游戏中的图像编程(连载六十四)

4.1.7 资源调度行为的撤销——逆矩阵

矩阵的加法有对应的减法,实数的乘法也有对应的除法,但数学家们发现,矩阵的除法很难定义。但是,加与减,乘与除都有一个共同点,它们互为逆运算,两种运算叠加后会相互抵消,就好比没有运算过一样。所以,虽没有除法的定义,但数学家们提出了具有逆运算功能的另一个概念——逆矩阵。

对逆矩阵的定义如下:两个矩阵A和B,如果满足行数与列数相等,并且A*B=B*A=单位矩阵,那么我们就称A是B互逆,B是A的逆矩阵。

逆矩阵同样有着它的实际意义,假设30%的士兵从第1连调到第2连之后不久便发现第2连的后方支援即将抵达,可以将被调度的士兵带回到第1连,则此时需要执行一个逆矩阵B的运算,使得下列等式成立:

可以看到,原始矩阵【T1,T2,T3】经过两次运算以后结果仍为【T1,T2,T3】,即等同于乘以了一个单位矩阵,所以可得出如下结论:

把B矩阵的具体形式写出来,得到:

对左侧进行运算,结果将会相当的长,为了简便起见,我将矩阵化简为2*2的尺寸,因为在这个调度过程中第3连的士兵没有发生任何改动:

根据上面的矩阵运算,我们可以得出以下方程组:

这是一个包含4个未知数的方程组,它有唯一解

所以,求得的逆矩阵为

拿它和单位矩阵作比较,可以发现这一矩阵相当于第1连从第2连拿回3/7的士兵。

用矩阵求解这一问题未免有点小题大做,但从这一小实例中,我们见证了逆矩阵回天得术之奇迹。

求解逆矩阵的方法有很多,我就不一一列举了。有兴趣的读者可以自己找本线性代数的教材慢慢研究。

逆矩阵在图形变换领域中也起到举足轻重的作用,主要用于变换行为的撤销,矩阵的对比等等。

正因为矩阵变换的思想(尤其是矩阵的乘法与逆矩阵)充分调动了人类的主观能动性,体现了布阵的策略与战术,实现了资源的优化配置,所以,在艺术编程领域,矩阵数学也同样备受青睐,下面就让我们一同领略ActionScript矩阵的风采吧。

时间: 2024-11-10 17:11:16

ActionScript3游戏中的图像编程(连载六十四)的相关文章

ActionScript3游戏中的图像编程(二十)

1.4.2 灰度的计算方法 回过头来看RGB,站在科学的角度来解释,它们确实也有更明亮的理由,因为下面一排色彩反射出来的色光总量是上一排色的两倍. 为此,作者曾自作聪明地发明了一条"原创"的灰度公式: Gray=(r+g+b)/3 哈哈,用色光总量来表达颜色的灰度想必就比较准确了吧!沾沾自喜一番以后,我还试着用这条自创的定律来转换这张测试图片,上下色块的灰度果然拉开了,可是很不幸地,左右相邻,边界分明的色块依然粘连在一块(图 1.30). 图 1.30 笔者"自创"

ActionScript3游戏中的图像编程(连载四十六)

总目录:http://blog.csdn.net/iloveas2014/article/details/38304477 3.1.2 以小见大--从细节损失洞悉滤镜本质 把它再改回内斜角,边缘似乎光滑了些,但这种错觉仅仅是由于阴影与蓝色的对比度不够强烈,才会让边缘的粗糙不够显眼.把文字颜色调成浅紫以后,转角处的锯齿依旧一览无余.(图 3.6),而Photoshop应用同样的设置则不会出现同样的问题(图 3.7). 图 3.6 模糊值为3的内侧斜角滤镜 图 3.7 大小等于3的斜面样式 如果认为

ActionScript3游戏中的图像编程(连载六)

1.1    ColorTransform对RGB数值的操作及应用 flash.geom.ColorTransform是Flash内置的一个色彩变换类.它支持色彩通道值的线性变换. 所谓线性变换,是指一次函数模式的变换:dst = src * multiplier + offset.您可以将每个通道的值与常量进行四则运算.对于ColorTransform类而言,通道的原数值和变换后的数值存在以下关系: 1 red(dst) = red(src) * redMultiplier + redOffs

ActionScript3游戏中的图像编程(连载十六)

1.3.2 软件中的拾色器如何实现HSB的色彩空间模型 阅读本书的朋友恐怕很少有机会见到圆柱形的三维取色器,而HSB模式却是一个立体的空间.那么,软件里的颜色拾取器是如何在平面里体现出3D坐标系的呢?让我们从Windows调色板开始研究.图 1.22是Windows系统调色板的界面,抛开左侧的颜色列表不谈,我们可以把Windows调色板分为两个部分:一个二维的平面和一个一维的滑块.乍一看似乎跟之前的圆柱体空间扯不上任何关系,不过有没发现,最右侧那个一维的条是不是跟圆柱体的母线很像,从上而下呈现出

[原创]ActionScript3游戏中的图像编程(连载三十六)

2.2.9 Photoshop品质初探——等高线 我们点击等高线图标右侧的箭头,将弹出一个曲线列表(图 2.30). 图 2.30 等高线下拉列表 点击第二行第4个图标看看(图 2.31).哇塞,一个逆天的浮雕式投影效果. 图 2.31 给投影样式设置等高线 下面我们不妨开一下小差,做点好玩的东东,比如给投影拉出一点杂色,再将文字调成灰色(#CCCCCC),填充不透明度80%,同时把图层的混合模式改为“溶解”(混合模式将在后续章节给出详细的介绍),投影的挖空去掉,看起来就想雕刻在石碑上的文字.(

ActionScript3游戏中的图像编程(连载二十六)

2.1.3 添加渐变叠加样式 我们再给文字添加一个渐变填充来加强质感,点击“渐变叠加”项(图 2.6). 图 2.6 添加渐变叠加样式 有一点金属的味道了,再点击渐变效果预览图打开渐变编辑器(图 2.7). 图 2.7 渐变编辑器 自带的渐变效果里面,红色标注的渐变最有金属的效果了,具有铜的光感和色泽.选定这种渐变,点击“确定”,效果如图 2.8所示. 图 2.8 铜色渐变编辑完成 在图层样式面板上点击“确定”,图层样式编辑完成. 虽然出来的结果依然比较丑,但这一测试足以让我们见识到PS的图层样

ActionScript3游戏中的图像编程(连载三十六)

2.2.9 Photoshop品质初探--等高线 我们点击等高线图标右侧的箭头,将弹出一个曲线列表(图 2.30). 图 2.30 等高线下拉列表 点击第二行第4个图标看看(图 2.31).哇塞,一个逆天的浮雕式投影效果. 图 2.31 给投影样式设置等高线 下面我们不妨开一下小差,做点好玩的东东,比如给投影拉出一点杂色,再将文字调成灰色(#CCCCCC),填充不透明度80%,同时把图层的混合模式改为"溶解"(混合模式将在后续章节给出详细的介绍),投影的挖空去掉,看起来就想雕刻在石碑上

ActionScript3游戏中的图像编程(连载二十)

1.4.2 灰度的计算方法 回过头来看RGB,站在科学的角度来解释,它们确实也有更明亮的理由,因为下面一排色彩反射出来的色光总量是上一排色的两倍.      为此,作者曾自作聪明地发明了一条“原创”的灰度公式: Gray=(r+g+b)/3 哈哈,用色光总量来表达颜色的灰度想必就比较准确了吧!沾沾自喜一番以后,我还试着用这条自创的定律来转换这张测试图片,上下色块的灰度果然拉开了,可是很不幸地,左右相邻,边界分明的色块依然粘连在一块(图 1.30). 图 1.30 笔者“自创”的灰度转换 显然此法

ActionScript3游戏中的图像编程(连载二十一,第1章完)

1.4.3 用灰度/明度指导色彩搭配 试着只通过调整不等于0的通道,让上一排的色彩在灰度上保持一致,把三个颜色分别代入到心理学公式.得 Gray(red) = r * 0.299      Gray(green) = g * 0.587      Gray(blue) = b * 0.114 让它们灰度相等,则 r * 0.299 = g * 0.587 = b * 0.114 可见,b值一定最大,不妨让b取最大值255,求得r=97, g=50.把这两个值分别应用到红和绿两个色块上. 绿色不再

ActionScript3游戏中的图像编程(连载十九)

1.4 浅析亮度与灰度/明度的关系 进入正题之前,先来了解一下灰度/明度. 1.4.1 灰度/明度的概念及其与HSB亮度的异同 在很多场合,灰度与明度的概念完全等价. “灰度”最初来源于摄影领域,在彩色显像技术问世以前,拍摄出来的照片只有黑,白,灰三类颜色,在这种黑白照片里,只有白色.黑色以及灰色的点能完好无损地显示出来,其它颜色将根据其亮度呈现出不同深度的灰色.亮度越大灰色越浅,反之越深.把黑与白色之间分成若干级,称为“灰度等级”.能呈现的灰度等级愈多,画面的层次感就愈丰富. 所以,从彩色转黑