我在画布上绘制了一条路径。在单击时我想调整路径的大小。假设我想让它的原始尺寸增加一倍。
我尝试了path.transform,但它将路径转移到了游说中的其他位置。这是我用于
的代码Matrix translateMatrix = new Matrix();
translateMatrix.setTranslate(100,0);
p.transform(translateMatrix);
如何在android中调整路径大小?
答案 0 :(得分:19)
我尝试过smitalm提供的解决方案。这条路仍然在改变它的位置。我试过这种方式,它对我有用。
Matrix scaleMatrix = new Matrix();
RectF rectF = new RectF();
path.computeBounds(rectF, true);
scaleMatrix.setScale(1.25f, 1.25f,rectF.centerX(),rectF.centerY());
path.transform(scaleMatrix);
答案 1 :(得分:5)
我自己没有这样做,但你应该使用
Matrix scaleMatrix = new Matrix();
scaleMatrix.setScale(sx,sy, px, py);
p.transform(scaleMatrix);
如果你想要双倍大小,sx,sy
应该是2,2
在您的情况下,px,py
应该是0.5,0.5
答案 2 :(得分:0)
RectF bounds = new RectF();
path.computeBounds(bounds, true);
Matrix scaleMatrix = new Matrix();
scaleMatrix.setScale(scale_pathSX, scale_pathSY,
bounds.centerX(),bounds.centerY());
path.transform(scaleMatrix);
Bound.centerx和center Y可以帮助您将路径缩放到其中心位置,scale_pathSX和scale_pathSY是您要缩放路径的大小, 大型 scale_pathSX和scalepathSy = 1.001;比例尺小scale_pathSX和scalepathSy = 0.999;