kramann.info
© Guido Kramann

Login: Passwort:










EmbSyst
1 day_by_day
2 Eingebettete_Systeme
..2.1 Softwareentwicklung
....2.1.1 AgileSoftwareentwicklung
....2.1.2 Verhalten
....2.1.3 Entwurfsmuster
....2.1.4 FuzzyRegler
....2.1.5 Uebung
..2.2 Arduino
....2.2.1 Uebung1
..2.3 Android
....2.3.1 UML
......2.3.1.1 Volumenberechnung
......2.3.1.2 UML_Klassendiagramm
......2.3.1.3 Konstruktor
......2.3.1.4 Statische_Variable
....2.3.2 bluej
....2.3.3 Threads
....2.3.4 Interfacedesign
....2.3.5 Android
......2.3.5.1 Getting_Started
......2.3.5.2 App
......2.3.5.3 Beispielprojekt
........2.3.5.3.1 Richtlinien
........2.3.5.3.2 Anforderungen
........2.3.5.3.3 Layout
........2.3.5.3.4 Projekt_einrichten
........2.3.5.3.5 Refactoring
........2.3.5.3.6 Icon
........2.3.5.3.7 Icon2
........2.3.5.3.8 Kurzanleitung
........2.3.5.3.9 Architektur
........2.3.5.3.10 Anwendungsklasse
......2.3.5.4 Threads
......2.3.5.5 Activities
......2.3.5.6 Was_ist_wo
......2.3.5.7 Regelungssysteme
........2.3.5.7.1 Servo
........2.3.5.7.2 Fahrzeug
......2.3.5.8 ADB_Apps
......2.3.5.9 Veroeffentlichen
......2.3.5.10 Einzelheiten
........2.3.5.10.1 Bildschirmaufloesung
........2.3.5.10.2 Parameter
........2.3.5.10.3 Permission
........2.3.5.10.4 Latenzzeit
......2.3.5.11 Tonerkennung
........2.3.5.11.1 Wahrscheinlichkeitsrechnung
........2.3.5.11.2 Kovarianz_Scilab
........2.3.5.11.3 Java_Threads
........2.3.5.11.4 Java_Reflection
....2.3.6 Processing
......2.3.6.1 Installation
......2.3.6.2 Erste_Schritte
......2.3.6.3 Mechatronik
......2.3.6.4 Bibliotheken
......2.3.6.5 Uebung
......2.3.6.6 Snippets
........2.3.6.6.1 Dateioperationen
........2.3.6.6.2 Bilder
........2.3.6.6.3 GUI
........2.3.6.6.4 Text
........2.3.6.6.5 PDF
........2.3.6.6.8 Maus
........2.3.6.6.10 Zeit
........2.3.6.6.13 Animation
........2.3.6.6.15 Simulation
......2.3.6.7 Referenzen
....2.3.7 Android_Processing
......2.3.7.1 Basics
......2.3.7.2 Einrichten
......2.3.7.3 Crossplattform
......2.3.7.4 sinus
......2.3.7.5 sample
......2.3.7.6 analyse
......2.3.7.7 synthese
......2.3.7.8 Hilfsapps
......2.3.7.9 Eigene_Library
....2.3.8 Processing_VR
....2.3.9 Shapes3D
....2.3.10 TextToSpeech
....2.3.11 Internetprogrammierung
......2.3.11.1 Codegenerierung
......2.3.11.2 PHP_Programmierung
......2.3.11.3 PHP_OOP
......2.3.11.4 Java
......2.3.11.5 UDP
......2.3.11.6 Internetkontrolle
........2.3.11.6.1 Kamerabild
....2.3.12 OSC
......2.3.12.1 Datenaustausch
......2.3.12.2 i2audiolab
......2.3.12.3 Ardour
....2.3.13 Netzwerkprogrammierung
....2.3.14 JNI
....2.3.15 Erweitern
......2.3.15.1 sprich
......2.3.15.2 spiel
....2.3.16 thbvr
....2.3.17 Reflection
....2.3.18 Script
....2.3.19 Java3D
3 Echtzeitprogrammierung
..3.1 Echtzeit
..3.2 Korrektheit
..3.2 Semaphoren
..3.3 Hardware
..3.5 Synchronprogramm
..3.6 Zustandsmaschine
..3.7 Arduino
....3.7.1 Uebung
....3.7.2 RTOS
....3.7.3 Scheduler
....3.7.4 Semaphor
......3.7.4.1 Laufkatze
......3.7.4.2 Java
......3.7.4.3 Semaphor
....3.7.5 Messages
..3.8 Android
....3.8.2 Threads
......3.8.2.1 Java
......3.8.2.2 Synchronisierung
..3.9 Petrinetze
....3.9.1 Installation
....3.9.2 Test
4 KI
..4.1 Unueberwachtes_Lernen
..4.2 Agentensysteme
....4.2.1 Architekturen
......4.2.1.1 Verhalten
......4.2.1.2 Entwurfsmuster
....4.2.2 SUMO
......4.2.2.1 GettingStarted
......4.2.2.2 Antrieb
......4.2.2.3 Sensoren
......4.2.2.4 Zeitbasis
......4.2.2.5 Fernsteuerung
......4.2.2.6 Umsetzung_Fernst
......4.2.2.7 Fernsteuerung3
......4.2.2.10 Umsetzung
......4.2.2.11 Sockelsoftware
......4.2.2.12 Plan
......4.2.2.13 Lernen
........4.2.2.13.1 Parameter
........4.2.2.13.2 Identifikation
........4.2.2.13.3 Java
..4.3 Genetische_Algorithmen
....4.3.1 Heuristiken
....4.3.2 Genalgorithmus
..4.4 Kalmanfilter
....4.4.1 Vorarbeit
....4.4.2 Minimalversion
....4.4.3 Beispiel
5 Bildverarbeitung
..5.1 Gestalttheorie
..5.2 Bildverarbeitung
6 Technische_Systeme
..6.1 Kulturgeschichte
..6.2 Technikphilosophie
..6.3 Anthropozaen
7 Literatur
kramann.info
© Guido Kramann

Login: Passwort:




PDF-Export bei Processing

(EN google-translate)

(PL google-translate)

float dt = 0.8;
float t = 0.0;
float ddphi = 0.1;
float dphi = 0.0;
float phi = 0.0;
float a = 0.0;
float v = 5.0;
float dx = 0.0;
float dy = 0.0;
float x = 1.0;
float y = 1.0;
float x_alt = 0.0;
float y_alt = 0.0;

float rot   = 0.0;
float gruen = 0.0;
float blau  = 0.0;

void setup()
{
    size(500,500);
    stroke(0);
    fill(0);
    //frameRate(5);
}

void draw()
{
        translate(width/2,height/2);
        rot   = 127.0+127.0*sin(0.001*t);
        gruen = 127.0+127.0*sin(0.001*t+QUARTER_PI);
        blau  = 127.0+127.0*sin(0.001*t+HALF_PI);
  
        ddphi = sin(0.1*t);
  
        dphi += ddphi*dt;
        phi  += dphi*dt;

        a = cos(20000.0*t);
        v+=a*dt;
        
        dx = v*cos(phi);
        dy = v*sin(phi);
        
        x += dx*dt;
        y += dy*dt;

        stroke(rot,gruen,blau);
        line(x_alt,y_alt,x,y);

        x_alt = x;
        y_alt = y;
        
        t+=dt;              
}

Code 0-1: Beispiel für algorithmische Kunst auf der Basis von Differentialgeometrie.

Ergebnis

Bild 0-1: Ergebnis

Schreiben der Grafik in eine pdf-Datei:

import  processing.pdf.*;

float dt = 0.8;
float t = 0.0;
float ddphi = 0.1;
float dphi = 0.0;
float phi = 0.0;
float a = 0.0;
float v = 5.0;
float dx = 0.0;
float dy = 0.0;
float x = 1.0;
float y = 1.0;
float x_alt = 0.0;
float y_alt = 0.0;

float rot   = 0.0;
float gruen = 0.0;
float blau  = 0.0;

    size(500,500);
    stroke(0);
    fill(0);
    //frameRate(5);

beginRecord(PDF, "grafik.pdf"); 
    background(255,255,255);
    translate(width/2,height/2);
    for(int i=0;i<4700;i++)
    {
        rot   = 127.0+127.0*sin(0.001*t);
        gruen = 127.0+127.0*sin(0.001*t+QUARTER_PI);
        blau  = 127.0+127.0*sin(0.001*t+HALF_PI);
  
        ddphi = sin(0.1*t);
  
        dphi += ddphi*dt;
        phi  += dphi*dt;

        a = cos(20000.0*t);
        v+=a*dt;
        
        dx = v*cos(phi);
        dy = v*sin(phi);
        
        x += dx*dt;
        y += dy*dt;

        stroke(rot,gruen,blau);
        line(x_alt,y_alt,x,y);

        x_alt = x;
        y_alt = y;
        
        t+=dt;              
    }
endRecord();
Schreiben der Grafik in eine pdf-Datei.

#pdf
grafik.pdf

Code 0-2: Ergebnis: grafik.pdf (im aktuellen Sketch-Ordner).