00:02
那我们来看一下啊,关于图片的。缩放、旋转和平移的处理,大家先了解一下就OK。啊,用到了一个很重要类,叫matrix。Max呢,是矩阵的意思。这个有点小印象吧,应该。你不用管他怎么算啊,你只要看到这个这个表达式,你你就能有一点印象就行啊。啊,即使你没有印象也没关系,我们用下面的方法就可以。下面这些方法呢,都是magic对象的一些方法,来分别进行缩放、旋转、平移的操作,如果要恢复怎么做呢?有一个清空重置。啊,怎么样让这一个缩放旋转平移起效果呢?下面有一个方法。
01:02
Image view对象。有这样一个set方法。把max对象给它射进去,就会起效果。啊,我们呢,来。去做一下,我们有这样的一个测试界面。看一看啊来。Max。来这里面呢,有四个输入框,大家看12344个分别一是对应这四个输入框。有一个imagine you。能看到吧,好,接着呢有四个按钮。啊,这里面呢,就对应。这四个回调方法。啊,现在呢,我们点缩放,要根据这个里面的缩放比例对它进行缩放。我们说必须要有一个对象。
02:02
叫什么呢?就他啊,再一个呢,需要有一个对象就够了啊,也不用每次都去创建啊,一个对象在这里就行啊,什么时候给它初始化了。在on create里面给他第一次初始化。而此时呢,并没有保存什么数据。啊,下面我们就要根据需求向这个对象里面保存一些数据。听说现在我要去。缩放啊。那缩放式它这里面有一个方法大家看。叫的skill。看我来说一下,点post。Scar。对吧,那这个时候呢,就需要去踩一下我缩放到哪个比例系。
03:01
这里面呢,有X和Y什么意思?X,你这宽度和高度的比例不一定一样吧?对吧。好,那这个缩放比例呢,我们是通过这个输入框来得的。而且你看它应该是一个什么类型的。Float类型对吧,那我要去得到一个float类型的skill吧,啊说比例。啊,对吧,等于那就float.pass float。来,喘一个。ET。Magicx skill the de takes the to string。这不就可以了吗?好,这一次呢,我们X轴方向和Y轴方向都用一个手法比例。
04:03
可以了吧。好啦。来看到这样我们就保存了一个数据。但是你说图片。会进行说话吗?不会你得把它应用上面对吧,像matrix。设置到。哪个里面去,是不是imagine啊,好来,我的imagine是他。点set image。Matrix传一个matrix。就可以了吧,其实啊,并不难啊。保存缩放比例数据啊。
05:03
好,来,我们来看一下,看看它行不行。整。诶诶。什么?是没有效果呀,啊没有效果是什么原因呢?大家看到在这个里面插的文件里面得做一个事情,它有一个叫skill。必须指定为什么?这个应该大家能够理解对吧?啊,如果你不指定那就不行。这样我们的matrix才会起效果。啊,很多同学下去自己测试的时候,写的时候总是不出来。啊,他就怀疑自己把这个东西给删掉,删掉再写一遍不行吗?还不行,再写一遍吧。
06:02
最后还是不行,最后不了了之了。来。是不是可以啊,而且现在来看这个缩棒是不是有一个中心点的呀,你觉得它的中心点在哪,是不是左上角啊。对啊。这是说的是他的一个说法啊。下面我们把这几个都给它做了吧,因为下面就比较简单了啊,下面来一个这是什么。旋转,那旋转是不是有个角度啊,嗯,就这个角度。来。那跟上面这个差不多,先要得到旋转的角度,怎么得?啊,跟上面类似的。只是这个叫什么呀?是不是degree啊啊,Degree是这的吗?多了一个E吧,小于一是吧,好,这里面。
07:09
是不是他呀。Rotate吗?好,下面。下面我要保存一个数据,我要保存什么数据啊,这是。角度旋转角度对吧,旋转嗯,角度。来试一下magics.post。什么rotate是吧?哎,你猜一下这个是什么意思。他是不是自己去指定那个旋转的中心点呢,而我们上面我们现在用的简单的方法,那它就是什么默认的中心点,默认的中心点在哪个位置啊。是不是左上角啊,啊,我们简单的用一下它啊,来一个它,它呢就是我们的degree。
08:02
嗯。多了一个S。好了吧。好,但是。是不是要取效果呀?把它搞上去呗,不就得了吗?可以了吧。可以吧?我问一下大家,你说我在旋转的过程中,这个假设已经缩小了,你说它会回到原来的大小吗?不会对吧,这个效果是不是相当于是一个累加的效果呀,现在我们做的是一个累加的效果,好下面一个就是平移。平移的时候呢,大家看这里面指定终点的X轴坐标和什么。Y轴坐标这一啊,这也不是指定X轴Y坐坐标,Y轴坐标偏移量。这X轴的偏移量和什么Y轴的偏移量啊,这是。
09:01
一个是他好,我要把它里面值给他什么。是不是取出来吧,啊来取出来一个是看到lo,呃,DX等于。把这个拿过来。改改不就得了吗?这一个。改成。是X啊。再来一个。以外。D了,在这里面整一下YY。就可以了呗,好下面怎么做。是我要保存一个数据啊,来,把这两个都复制过来得了。啊,平行数据好看一下,用哪个方法啊。Post。是不是它呀,上是这场啊,定DX指定D不就好了吗。
10:03
可以了吧,嗯,可以了,好,来最后一个了。你说怎么样能恢复到原状啊?对吧,有max有一个方法。Matrix应该有一个方法叫reset,重置以后呢?你觉得图片会恢复到原来样子吗?不会,你得什么?设置一下。让它起效果。能看懂吧。好,来。一起呀。走。来试一下啊。先呢,啊在这里面。啊,缩小这个缩小了,是不是有点看不太清了是吧。放大一点试试啊,来一个来一个,来一个二吧。
11:04
啊,不能在这里面写,在这里写。放大放大。这里面大家发现一个问题没有?这咋有些的。不可见呢。我们说过了,这个里面缩放的是图片对吧,而那个视图的大小它是没有变化的吧,是不是还是这么大呀。对不对,那如何来解决这个问题呢?是不是让视图能够大一点,我这么大是吧,那不就没问题了吗?对不对,把视图给整大一点,怎么样让视图变大呢?换路。这是什么?充满高度?也充满可以吧。来看看是不是有效果啊。
12:03
图片跟着放大啦。斗牛啊。放到了吗?没有,因为我现在图片说话的比例类型是什么呀。Max根据max来去进行缩放,我把它放大一点啊。哪个?打开。走。是不是放大了?好,接着来一个旋转。好了吧,接着来一个移动。走走走走走走。是吧?后面两个参数是绝对值还是还是相对,那肯定是绝对值啊。啊,是十个像素的走嘛。好。我根本就没有去指定什么相当于自己,相当于父亲啊。好,下面看到。还原。
13:00
是不是可以啊?这个里面它根本就没有什么去指定什么相对的概念,大家能看到啊。这一个DX啊,根本我没有去指定那个什么相对。好啦。那整个的使用呢,就跟大家说到这里啊。嗯,这个呢,在我们后面项目里面呢,用的相对来说少一些,但是也保不齐大家进了公司以后呢,会做这方面的,大家如果做了也是做什么呢,就做图片相关的。大家知道现在大家的那个图库是不是通通过手指对这个图片进行缩放啊。用的就是什么呢?就是matrix。通过MAS对图片进行缩放。啊,这是这一个啊。
我来说两句