使用drawBitmapMesh扭曲图像
Posted 奋斗青年一族
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用drawBitmapMesh扭曲图像相关的知识,希望对你有一定的参考价值。
Canvas提供了一个drawBitmapMesh(bitmap, meshWidth, meshHeight, verts, vertOffset, colors, colorOffset, paint)方法,该方法可以对Bitmap进行扭曲,实现“水波荡漾”、“风吹旗帜”等各种扭曲效果。
drawBitmapMesh方法的关键参数说明:
bitmap:指定需要扭曲的源位图。
meshWidth:该参数控制在横向上把该源位图划分成多少格。
meshHeight:该参数控制在纵向上把该源位图划分成多少格。
verts: 该参数是一个长度为(meshWidth+1)*(meshHeight+1)*2的数组,它记录了扭曲后的位图各“顶点”位置,虽然它是个一位在数组,它实际上记录的数据是形如(x0,y0)、(x1,y)、(x2,y)......(xN,yN)格式的数据,这些数组元素控制对Bitmap位图的扭曲效果。
vertOffset: 控制verts数组中从第几个数组元素开始才对Bitmap进行扭曲(忽略vertOffset之前数据的扭曲效果).
以上是关于使用drawBitmapMesh扭曲图像的主要内容,如果未能解决你的问题,请参考以下文章
Android 自定义 View _ 扭曲动效,android开发环境搭建教程
炫酷Android 波浪式扭曲侧边栏,窗帘(Curtain Menu)效果