Gewusst wie: zeichnen von Bézier-Kurve in Android

Habe ich eine Anforderung zum erstellen von Bézier-Kurve in meinem Projekt. Für diesen Zweck, die ich bin, die Zeichnung einer Ansicht mit paint, aber das problem ist, dass ich nicht immer die genaue Form für mein Bedürfnis, wie oben im Bild zu sehen ist. Also bitte helfen Sie mir mit Ihren Lösungen und Veränderungen oder änderungen in meinem code. Vielen Dank im Voraus.

Code, den ich benutze zum erstellen von Bézier-Kurve:

public class DrawView extends View {

    public DrawView (Context context) {
        super (context);
    }

    protected void onDraw (Canvas canvas) {
        super.onDraw (canvas);

        Paint pLine = new Paint () {{
            setStyle (Paint.Style.STROKE);
            setAntiAlias (true);
            setStrokeWidth (1.5f);
            setColor (Color.RED); //Line color
        }};

        Paint pLineBorder = new Paint () {{
            setStyle (Paint.Style.STROKE);
            setAntiAlias (true);
            setStrokeWidth (3.0f);
            setStrokeCap (Cap.ROUND);
            setColor (Color.RED); //Darker version of the color
        }};
        Path p = new Path ();
        Point mid = new Point ();
        //...
        Point start =new Point (30,90);
        Point end =new Point (canvas.getWidth ()-30,140);
        mid.set ((start.x + end.x) / 2, (start.y + end.y) / 2);

        //Draw line connecting the two points:
        p.reset ();
        p.moveTo (start.x, start.y);
        p.quadTo ((start.x + mid.x) / 2, start.y, mid.x, mid.y);
        p.quadTo ((mid.x + end.x) / 2, end.y, end.x, end.y);

        canvas.drawPath (p, pLineBorder);
        canvas.drawPath (p, pLine);
    }
}

MainActivity

public class MainActivity extends Activity {

    private DrawView drawView;

    @Override
    protected void onCreate (Bundle savedInstanceState) {
        super.onCreate (savedInstanceState);
        drawView = new DrawView (this);
        setContentView (drawView);

    }
}

Meine Tatsächlichen Bedarf:

Gewusst wie: zeichnen von Bézier-Kurve in Android

Ausgabe die ich erhalte:

Gewusst wie: zeichnen von Bézier-Kurve in Android

InformationsquelleAutor Chandru | 2015-05-06
Schreibe einen Kommentar