刚刚接触安卓,最近在做一个小项目,用path根据四个点坐标绘制了一个矩形,需要用图片来填充矩形。因为根据路径绘制的矩形是倾斜的,所以填充图片不太容易,经过查资料,通过试验得到了一种方法,分享一下:
//绘制小麦田代码其中四个点坐标是根据经纬度转换成的屏幕坐标,因此画出来的小麦田不一定是正的
Paint mField = new Paint();
mField.setAntiAlias(true);
Path mFieldPath = new Path();
mFieldPath.moveTo(X1,Y1);
mFieldPath.lineTo(X2,Y2);
mFieldPath.lineTo(X3,Y3);
mFieldPath.lineTo(X4,Y4);
mFieldPath.close();
mField.setARGB(200, 255, 215, 0);//设置封闭路径的填充色为金***
canvas.drawPath(mFieldPath, mField);
这样绘制出来的图形为一个金***矩形,不够美观,因此想到使用图片来填充
直接加上如下代码:
Shader mShader = new BitmapShader(fieldBitmap,Shader.TileMode.REPEAT,Shader.TileMode.MIRROR);
mField.setShader(mShader);
其中,filedBitmap为指定的图片,可以通过mFieldBitmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.feild);方式获得
本文出自 “smile” 博客,请务必保留此出处http://xmrs2014.blog.51cto.com/9528128/1571843
原文:http://xmrs2014.blog.51cto.com/9528128/1571843