1. Nimm jetzt an unserem AGM - Gewinnspiel teil - Informationen zum M1, A2 und A8 findest Du hier, hier und hier!
  1. Webster, 13.07.2010 #1
    Webster

    Webster Threadstarter Fortgeschrittenes Mitglied

    Hi beisammen,

    ich habe eine Klasse (extends View) mit der ich viereckige bzw. dreieckige Flächen zeichnen möchte.
    Leider klappt das nicht so wie ich das möchte.

    Rechtecke ist kein Problem,
    Code:
    canvas.drawRect(...
    aber leider besteht die Welt nicht nur aus Rechtecken ;-)

    Hat jemand ein Tipp für mich, wie ich das lösen könnte?

    Gruß
    Webster
     
  2. Fr4gg0r, 13.07.2010 #2
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Dreicke bekommste mit drawVertices();
    Vierecke, die keine Rechtecke sind, erhälst du indem du 2 Dreiecke zeichnest.
    Sonst natürlich noch drawCircle, und drawArc für Halbkreise.
    Siehe http://developer.android.com/reference/android/graphics/Canvas.html
    Wenn du ein konkretes Problem hast, so musst du dieses auch schon schildern. ;)
     
    Zuletzt bearbeitet: 13.07.2010
  3. Webster, 13.07.2010 #3
    Webster

    Webster Threadstarter Fortgeschrittenes Mitglied

    Ich habe mich an drawVertices probiert, aber irgendwie bekam ich kein Fehler, es wurde aber auch nichts gezeichnet...

    Ich schau mir die Funktion bei Gelegenheit noch mal genau an.
     
    Zuletzt bearbeitet: 13.07.2010
  4. Fr4gg0r, 13.07.2010 #4
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Ja, drawVertices ist zuerst etwas tricky.
    Um ein einfaches weißes Dreieck zu zeichnen:
    - Canvas.VertexeMode.TRIANGLE
    - 6 (anzahl der koordinaten)
    - new float[]{50, 0, 20, 30, 80, 50} jeweils x/y eines Punktes
    - 0 = kein offset = keine position auslassen
    - null = wir wollen keine Textur
    - 0 = wieder kein offset
    - new int[]{Color.WHITE, Color.WHITE, ... 6x} = Farbe für jeden Punkt doppelt
    - 0 = kein colorOffset
    - 0
    - 0
    - ein Paint (evtl. kann auch null übergeben werden, musst du ausprobieren)
     
    Webster bedankt sich.
  5. Zonnex, 13.07.2010 #5
    Zonnex

    Zonnex Fortgeschrittenes Mitglied

    Path kann alle Formen zeichnen die du ihm "einhämmerst", in dem Beispiel jetz nen Dreieck:

    Code:
    meinPath = new Path();
    meinPath.moveTo(50,50);
    meinPath.lineTo(70,60);
    meinPath.lineTo(70,40);
    meinPath.close();
    meincanvas.drawPath(meinPath, meinPaint);
    
    ;)

    Mfg
    Oli
     
    Webster bedankt sich.
  6. Webster, 13.07.2010 #6
    Webster

    Webster Threadstarter Fortgeschrittenes Mitglied

    Dank euch beiden. Das werde ich Morgen gleich austesten.
     
  7. Webster, 14.07.2010 #7
    Webster

    Webster Threadstarter Fortgeschrittenes Mitglied

    Ihr seid die Helden für mich =)
    Mit Path funktioniert es genau so wie ich es will.
    Jetzt habe ich endlich Flächendiagramme. Yeeeha

    Danke nochmal!
     

Besucher kamen mit folgenden Begriffen auf unsere Seite:

  1. android balken zeichnen

    ,
  2. viereckige Flächen

    ,
  3. android formen zeichnen

    ,
  4. android java kreis zeichnen