如何在gdi推送,翻译,旋转和弹出状态?

时间:2013-12-21 01:46:00

标签: java android gdi

我正在尝试绘制圆形菜单,其中项目呈现为具有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;
            }

1 个答案:

答案 0 :(得分:0)

如何创建具有Menu属性的矩阵对象?

旋转方法的示例代码:

Status Rotate(
  [in]  REAL angle, // You can put your menu angle here
  [in]  MatrixOrder order
);