2016-09-05 2 views
1

Sag mir bitte, wenn in Kivy Canvas schnell Zeichnung, bekomme ich sehr scharf, Polylinien-Figur, aber wenn sehr langsam zeichnen, dann bekomme ich glatte Linien.Kivy Leinwand - schnelle Zeichnung - Polylinien

... 

    def on_touch_down(self, touch): 
     if Widget.on_touch_down(self, touch): 
      return True 
     print(touch.x, touch.y) 
     with self.canvas.before: 
      Color(*get_color_from_hex('#0080FF80')) 
      Line(circle=(touch.x, touch.y, 2), width=2) 
      touch.ud['current_line'] = Line(points=(touch.x, touch.y), width=2) 

    def on_touch_move(self, touch):        
     if 'current_line' in touch.ud: 
      touch.ud['current_line'].points += (touch.x, touch.y) 
    ... 

Das ist mein Beispiel:

this is my example!

Wer weiß, wie ich es behoben könnte? Kann ich in Kivy schnell und glatt zeichnen?

Antwort

0

Ich weiß nicht, warum die Linien nicht glatt aussehen, wenn Sie schnell in kivy zeichnen, können Sie es bitte auf anderen Geräten testen.

+0

natürlich getestet i auf vielen verschiedenen Geräten, und vielleicht bin ich ein wenig übertrieben, aber wirklich Bild ist nicht mehr besser - [ein anderes Bild link] (http: // i. stack.imgur.com/n3jqw.png) –

0

Eigentlich habe ich Ihren Code getestet und konnte das Problem, das Sie haben, nicht erzeugen. Ich meine, es ist egal, ob ich in Kivy schnell oder langsam zeichne. Die Hälfte dieser "e" zeichnete ich schnell und halb langsam, aber keinen Unterschied in der Ausgabe. Ich schlage vor, Sie versuchen https://kivy.org/docs/tutorials/firstwidget.html. Wenn die Zeichnungsausgabe dieses Beispiels scharf ist, während Sie schnell zeichnen, ist wahrscheinlich etwas mit Ihrer Umgebung nicht in Ordnung, da es in meiner Umgebung gut funktioniert. Wenn es im schnellen Zeichnen glatt ist, dann muss Ihr Projekt in der Hand Probleme haben.

+0

auf dem PC ist alles super, aber versuchen wir es auf Android-Plattform zu testen. Sie können es in meiner App überprüfen - [SpringPaint] (https://play.google.com/store/apps/details?id=ek.myspaint) –