## octave
## Kaustiken mit der Lieberherr-Methode
## 
## Autor
## Daniel Baumgartner
## Kantonsschule Baden
## 
## www.mathematicus.ch
## eMail <vorname>_<nachname>@bluewin.ch
##
## octave benoetigt noch die Information, wo sich die Files befinden.
## man lege dieses File zusammen mit dem File welches die Matrix enthaelt 
## in den gleichen Ordner. Dann ist der Pfad (via Konsole) anzugeben:
## > addpath("~/Dokumente/Octave/Kaustik")
##
## diese File ist dann mittels
## > pixelbild 
## aufzurufen (ohne Suffix)


1;

global pmat;
# Das File einlesen...
kardioide00;

# ...und der Variablen pmat zuweisen
pmat=ans();


# die Funktion zeichne() zur Erzeugung des Pixelbilds
# Argument #1: die Matrix
# Argument #2: den Maximalwert der Matrix festlegen

function zeichne(mat,u)
# die zeilen der matrix in umgekehrter Reihenfolge
# weil bei Pixelgraphiken die y-Koordinate per default 
# "von oben nach unten" gesetzt ist (Linkssystem).

m=swaprows(mat);

# alle Eintraege >u auf u setzen
h=m>u;
m=m.*(1-h)+u*h;

# Die Graphik erzeugen
imagesc(m)
colormap(gray(64));# 1=weiss, 0=schwarz
axis square
axis off

endfunction

# die Funktion aufrufen
# der Maximalwert soll hier (beispielhaft) 18 gewaehlt sein

zeichne(pmat,18)#




