Slide 1

Slide 1 text

22.08.2015 Reimar Bauer Einführung in Python mit Blender Reimar Bauer @dreimark Python Software Verband e.V. Vorstand pymove3D – Blender & Python Schülerwettbewerb Projekt Koordination PyCologne Member :) Forschungszentrum Jülich GmbH Institut für Energie und Klima (IEK-7 Stratosphäre)

Slide 2

Slide 2 text

22.08.2015 Reimar Bauer Blender installieren Bei Ubuntu ist eine ältliche Blender Version dabei. updaten ● sudo add-apt-repository ppa:thomas-schiex/blender ● sudo apt-get update ● sudo apt-get install blender

Slide 3

Slide 3 text

22.08.2015 Reimar Bauer Python in/für Blender lernen? ● Anpassen von Blender ● Unverzichtbar für Spieleentwicklung ● Automatisierung von Arbeitsabläufen ● Zeitgewinn ● Funktionserweiterungen ● Eigenständige Applikationen

Slide 4

Slide 4 text

22.08.2015 Reimar Bauer Warum Python? ● Python ist eine sehr gut lesbare Sprache. Der Python- Quellcode ist einfach zu lesen und zu verstehen. ● Python ist weltweit beliebt bei Millionen von Programmierern. ● Python ist eine leistungsfähige Sprache und wird von Unternehmen wie Google, YouTube und der NASA verwendet. ● Python ist flexibel und in der Lage mit anderen Sprachen zusammen zuarbeiten. ● Python ist multiplatformfähig, ohne dass eine Zeile Code für Windows, Linux und MacOS geändert werden muss. ● Python ist kompakt, es kann Code 2 -10-mal kürzer und einfacher im Vergleich zu C / C ++, Java etc. erstellt werden. ● Python ist einfach zu debuggen, Fehlermeldungen geben hilfreiche Hinweise.

Slide 5

Slide 5 text

22.08.2015 Reimar Bauer Wie installiere ich Python ● Bei Blender ist Python 3.4 bereits dabei. Das ist die neueste Version von Python! ● Unabhängig von Blender kann es heruntergeladen werden: https://www.python.org/downloads/

Slide 6

Slide 6 text

22.08.2015 Reimar Bauer Python Console Zoomen, anstelle CTRL + Mausrad, ● bpy.context.space_data.font_size = 22

Slide 7

Slide 7 text

22.08.2015 Reimar Bauer Einfache Datentypen ● Traceback: Roter Text gibt Hinweise

Slide 8

Slide 8 text

22.08.2015 Reimar Bauer Fehlermeldungen sind hilfreich beim Lernen ● Die erste Zeile sagt uns das es einen Fehler gibt. ● Die zweite Zeile das es in der Blender Python Console passiert ist, in der ersten Zeile im Code. ● Die dritte Zeile sagt uns was wir falsch gemacht haben: TypeError: can't multiply sequence by non-int of type 'str'

Slide 9

Slide 9 text

22.08.2015 Reimar Bauer Zeichenketten (string) ● Zeichenketten, ein Zeichen nach dem anderen ● "ein zeichen nach dem anderem"

Slide 10

Slide 10 text

22.08.2015 Reimar Bauer Formelsammlung (Taschenrechner) ● Sinus, Cosinus, Tangens, Logarithmus …. ● Pi

Slide 11

Slide 11 text

22.08.2015 Reimar Bauer Parameterübergabe ● log10(100) ● Damit „mathematische“ Funktionen uns ein Ergebnis liefern, muss man die Werte, die sie verarbeiten sollen in runden () Klammern übergeben. ● log10 ist die Funktion 100 der Wert

Slide 12

Slide 12 text

22.08.2015 Reimar Bauer Werte, Ergebnisse speichern ● Mit dem Gleichheitszeichen, wird ein Wert oder Ergebnis auf einem Bezeichner gespeichert. Man spricht allgemein von einer Variablen.

Slide 13

Slide 13 text

22.08.2015 Reimar Bauer Python in Blender kann mehr ...

Slide 14

Slide 14 text

22.08.2015 Reimar Bauer Blender Info Fenster ● Im oberen Bereich von Blender ist ein Info Fenster das alle Interaktionen der Maus in Python zeigt ● Es gibt zu jeder dieser Funktionen eine Dokumentation

Slide 15

Slide 15 text

22.08.2015 Reimar Bauer Online Hilfe Blender & Python ● Dokumentation: http://www.blender.org/api/blender_python_api_2_75a_release/ Rechter Mausklick in einem Menue

Slide 16

Slide 16 text

22.08.2015 Reimar Bauer Blenders Python IDE

Slide 17

Slide 17 text

22.08.2015 Reimar Bauer Erste Schritte in der IDE ● Die IDE ist ein „integrierter Editor“ mit speziellen Eigenschaften ● Text oder Templates ● Templates → Python ● Text → Create Text Block

Slide 18

Slide 18 text

22.08.2015 Reimar Bauer Speichern und Ausführen ● Speichern: Alt + S ● Ausführen: Alt + P

Slide 19

Slide 19 text

22.08.2015 Reimar Bauer Perlen(kette)

Slide 20

Slide 20 text

22.08.2015 Reimar Bauer Zeilenwiederholungen einsparen ● Python Programme werden kürzer und übersichtlicher, wenn man häufige Wiederholungen von Zeilen einspart. ● Wir ersetzen die N-Zeilen mit bpy.ops.object.metaball_add, mit einer einzigen, die in der location Variablen verwendet. ● Dann verwenden wir Python Magie, eine for-Schleife, die uns immer andere Werte für die location liefert. ● In Python dient die for-Schleife zur Iteration über eine Sequenz.

Slide 21

Slide 21 text

22.08.2015 Reimar Bauer Die For Schleife

Slide 22

Slide 22 text

22.08.2015 Reimar Bauer Noch mehr Perlen

Slide 23

Slide 23 text

22.08.2015 Reimar Bauer Hinweise bei Fehlern in der IDE ● Fehlermeldungen findet man im Terminal, von dem blender gestartet wurde

Slide 24

Slide 24 text

22.08.2015 Reimar Bauer Andere Python Editoren, IDEs ● Der integrierte Editor kann selbstverständlich gegen den Lieblingseditor ausgetauscht werden. ● Blender merkt wenn der Code ausserhalb von seiner IDE geändert wird. Beliebte andere Editoren, IDEs ● Pycharm ● Emacs ● Pydev ● Vim ● spyder

Slide 25

Slide 25 text

22.08.2015 Reimar Bauer Weiteres Material ● Blender Wiki User:Kilon/Python book of magic http://wiki.blender.org/index.php/User:Kilon/Python_book_of _magic ● pymove3D http://pymove3d.pysv.org/python_course/ ● Blender Dokumentation http://wiki.blender.org/index.php/Doc:DE/2.6/Manual/Introduct ion/Installing_Blender/Python

Slide 26

Slide 26 text

22.08.2015 Reimar Bauer Anwendungen von Blender mit Python ● Diverse Visualisierungen mit Supercomputer http://www.blendernation.com/2011/11/22/oak-ridge-national-laboratory-blender-on-a-supercomp uter/ ● Flüssigkeit http://www.blendernation.com/2012/07/10/cfd-simulation-of-carcaravan-combination/ ● Medizin /Arm-Animation http://www.blendernation.com/2013/11/29/scientific-muscle-and-skin-simulation/ ● Astronomie http://www.blendernation.com/2013/12/17/the-hydrogen-sky/ ● Verkauf (Fahrrad) http://www.blendernation.com/2014/11/05/on-line-bike-customization-app-built-using-blender/

Slide 27

Slide 27 text

22.08.2015 Reimar Bauer