Path path = new Path();
path.moveTo(50, 0);
path.lineTo(0, 50);
path.lineTo(50, 100);
path.lineTo(100, 50);
//封闭前面点所绘制的路径
path.close();
ShapeDrawable mDrawables = new ShapeDrawable(new PathShape(path, 100, 100));
请问这个path对象的4个顶点的坐标应该是个正方形,为什么画出来效果是个菱形。PathShape构造器中后2个参数,是如何起作用的,有时是100,有时是150,不知道如何计算。多边形的造型是否和setBounds(int left, int top, int right, int bottom)
方法有关,请高手解答,谢谢
------解决方案--------------------
学习了 是我想简单了 以梯形为例
PathShape(path1,150,150)
mShapeDrawable.setBounds(100, 170, 200, 280);
x=100+(200-100)/150*(150+5)
y=170+(280-170)150*(80+80-50)
setBounds内的偏移是绝对的 画布上的坐标要乘以放大系数才行