HexagonDrawable.java 文件源码

java
阅读 25 收藏 0 点赞 0 评论 0

项目:Tools 作者:
public HexagonDrawable(@ColorInt int color, float width, float height, float padding)
{
    mWidth = width;
    mHeight = height;
    mPadding = padding;

    mLenght = width/2 - mPadding*2;

    mOrigin_x = mWidth/2;
    mOrigin_y = mHeight/2;

    //六边形路径
    mPath = new Path();
    mPath.moveTo(mOrigin_x, mOrigin_y - mLenght);
    mPath.lineTo((float) (mOrigin_x + Math.sqrt(3f)*mLenght/2), mOrigin_y - mLenght/2);
    mPath.lineTo((float) (mOrigin_x + Math.sqrt(3f)*mLenght/2), mOrigin_y + mLenght/2);
    mPath.lineTo(mOrigin_x, mOrigin_y + mLenght);
    mPath.lineTo((float) (mOrigin_x - Math.sqrt(3f)*mLenght/2), mOrigin_y + mLenght/2);
    mPath.lineTo((float) (mOrigin_x - Math.sqrt(3f)*mLenght/2), mOrigin_y - mLenght/2);
    mPath.close();

    //初始化画笔
    mPaint = new Paint();
    mPaint.setAntiAlias(true);
    mPaint.setColor(color);
    mPaint.setStyle(Paint.Style.FILL_AND_STROKE);
    mPaint.setStrokeWidth(1f);
    //连线节点平滑处理
    PathEffect pathEffect = new CornerPathEffect(10);
    mPaint.setPathEffect(pathEffect);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号