我正在尝试绘制圆形菜单,其中项目呈现为具有60度的ar和图像/图标。问题是当我旋转菜单时,我有超过3个项目,菜单是圆的一半(180度),当我旋转我旋转项目/弧与里面的图像。有可能在这里做类似于OpenGL,保存状态,psuh矩阵,翻译,旋转对面和再次弹出?我有标记线哪里有问题。有没有人知道如何做到这一点,(图标总是垂直的)
float mSweep = 60;
for (Integer key : mConversionPositionToID.keySet()) {
String tempKey = mConversionPositionToID.get(key);
SemiCircularRadialMenuItem item = mMenuItems.get(tempKey);
mRadialMenuPaint.setColor(item.getBackgroundColor());
item.setMenuPath(mMenuCenterButtonRect, mMenuRect, mStart,
mSweep, mRadius, mViewAnchorPoints);
canvas.drawPath(item.getMenuPath(), mRadialMenuPaint);
if (isShowMenuText) {
mRadialMenuPaint.setShadowLayer(mShadowRadius, 0.0f,
0.0f, Color.TRANSPARENT);
mRadialMenuPaint.setColor(item.getTextColor());
canvas.drawTextOnPath(item.getText(),
item.getMenuPath(), 5, textSize,
mRadialMenuPaint);
mRadialMenuPaint.setShadowLayer(mShadowRadius, 0.0f,
0.0f, mShadowColor);
}
// HERE I have position of icon/image center
item.getIcon().draw(canvas);
mStart += mSweep;
}
答案 0 :(得分:0)
如何创建具有Menu属性的矩阵对象?
旋转方法的示例代码:
Status Rotate(
[in] REAL angle, // You can put your menu angle here
[in] MatrixOrder order
);