二次贝塞尔曲线的控制点

时间:2013-04-02 20:02:37

标签: android

我是Android API的新手,我正在开发一个应用程序,我有一个curveTool对象,它应该首先绘制一条线,当你第二次触摸屏幕时,基本上创建一个控制点并弯曲先前绘制的线条基于控制点。 基本上我有:

public void touchStart(MotionEvent event) {
    points = new ArrayList<PointF>();
    points.add(new PointF(event.getX(), event.getY()));
}

创建了起点,我有:

public void touchEnd(MotionEvent event) {
    points.add(new PointF(event.getX(), event.getY()));
}

我创建了该行的终点,但我不确定如何使用quadTo()方法实现控制点,并根据它创建线条曲线。 还有第三种方法:

public void touchMove(MotionEvent event) {
    points.add(new PointF(event.getX(), event.getY()));
}

我不断加分。

最后我使用以下方法绘制:

public void drawPreview(Canvas canvas) {
    paint = new Paint();
    paint.setAntiAlias(true);
    paint.setStyle(Style.STROKE);
    paint.setColor(Color.BLUE);
}

我知道有很多代码缺失,但我不确定如何实现它。我将不胜感激任何帮助!

1 个答案:

答案 0 :(得分:0)

要使用quadTo,您必须创建一个Path对象,在Path上调用quadTo,然后将路径绘制到画布上。