我有一个形状e-g,Rectanle,我想以角度X旋转它,并希望获得更新的旋转形状点。
目前我正在使用canvas.rotate旋转对象,但原始点保持不变;不是旋转的。我正在使用此代码。
canvas.save();
canvas.rotate(angle, Pivate.x, Pivate.y);
canvas.drawRect(left, top, right, bottom, redPaint);
canvas.restore();
任何帮助将不胜感激......
答案 0 :(得分:5)
您需要以下方式来获取点数更新数组...
float[] ptArr = new float[] { 20, 30, 60, 30, 60, 45, 20, 45};
Matrix m = new Matrix();
m.preRotate(angle, px, py); // where px and py is pivot point.
m.mapPoints(ptArr);
//at this point your array will be updated.
canvas.drawPoints(ptArr, mPaint);