java中clone()的问题?

private void draw(Point p, Canvas canvas) {
    if (!isFinished) {

        path = new Path();
        //将向量(0,radius)旋转起始角度,第一个控制点根据这个旋转后的向量计算
        Point t = new Point(0, this.radius).rotate(MyUtil.degrad(this.startAngle));
        //第一个端点,为了保证圆心不会随着radius增大而变大这里固定为3
        Point v1 = new Point(0, 3).rotate(MyUtil.degrad(this.startAngle));
        //第二个端点
        Point v2 = t.clone().rotate(MyUtil.degrad(this.angle));
        //延长线,分别确定两个控制点
        Point v3 = t.clone().mult(this.stretchA);
        Point v4 = v2.clone().mult(this.stretchB);  //clone报错
        //由于圆心在p点,因此,每个点要加圆心坐标点
        v1.add(p);
        v2.add(p);
        v3.add(p);
        v4.add(p);
        path.moveTo(v1.x, v1.y);
        //参数分别是:第一个控制点,第二个控制点,终点
        path.cubicTo(v3.x, v3.y, v4.x, v4.y, v2.x, v2.y);
    }
    canvas.drawPath(path, paint);
}


Flipped199
浏览 1261回答 1
1回答

Flipped199

图在这儿
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java