Dienstag, 2. März 2010

Pseudocode

Pseudocode wurde entwickelt um gut lesbar und gut programmierbar einen Algorithmus zu beschreiben. Das diese beiden Prämissen nicht immer erfüllt wird, zeigt folgendes Beispiel:

image

Dienstag, 16. Februar 2010

Mittwoch, 16. Dezember 2009

3D-Grafiken mit Sketch

Im Zuge meine Diplomarbeit habe ich in den letzten Tagen mal wieder ein wenig mit Sketch, TikZ und LaTeX gearbeitet und damit eine 3D-Grafik erstellt, welche ich euch unmöglich vorenthalten kann. Diese Grafik wurde hauptsächlich mit Sketch erstellt. Die Beschriftungen wurden über TikZ nodes direkt im Sketch-Code angegeben. Wenn sich jemand für den zugrundeliegenden Code interessiert, sei er aufgefordert, sich einfach bei mir per E-Mail zu melden.

image

Montag, 30. November 2009

LaTeX und TODOs

Schreibt man eine größere Arbeit mit LaTeX, kommt es häufig vor, dass man auf Probleme stößt, welche man dem Schreibefluss zu liebe lieber erstmal übergehen will. Damit man später nicht vergisst sich darum zu kümmern, gibt es verschiedene Möglichkeiten. Zum einen kann man sich im LaTeX-Quellcode Notizen in Form von Kommentaren machen. Diese werden aber leider schnell mal übersehen (besonders, wenn man sich angewöhnt hat, sein Dokument nur als PDF zu lesen).

Eine weitere Möglichkeit für Randnotizen in LaTeX wird über das todonotes Package bereitgestellt. Dieses ermöglicht es, auf einfache Weise Randnotizen direkt im PDF darstellen zu lassen. Dazu wird die entsprechende Notiz mittels \todo{Meine Notiz} an die entsprechende Stelle im Quellcode eingefügt. Die Notiz selbst erscheint dann in einer farbigen Box am Seitenrand. Eine Liste von allen TODOs inklusive Hyperlinks zu den Stellen im Dokument, kann mit dem Befehl \listoftodos angelegt werden.

Ein Nachteil der TODOs ist, dass oftmals der Platz am Rand nicht ausreicht, um ausführlichere TODOs ansprechend darzustellen. Um das Package dennoch sinnvoll nutzen zu können, bietet es sich daher an, die Papergröße und die Randgröße den TODOs zu liebe zu vergrößern. Folgender Code in der Preamble erfüllt diese Aufgabe:

\usepackage{calc}
\newlength{\extrawidth}
\setlength{\extrawidth}{2cm}
\usepackage[paperwidth=\paperwidth+\extrawidth,top=30mm,bottom=30mm,left=30mm,right=30mm+\extrawidth]{geometry}
\usepackage[textwidth=2.3cm+\extrawidth]{todonotes}

Dabei wird eine neue Länge \extrawidth definiert, welche die zusätzliche Randbreite angibt. Dann wird über das geometry Package die Seitenbreite und der rechte Rand um diese Länge erweitert. Dadurch bleibt die Textbreite unverändert. Letztlich sollte ebenfalls die Breite der TODOs selbst vergrößert werden. Dadurch gewinnt man nun wesentlich mehr Platz für sinnvolle Ergänzungen. Für den Druck sollte natürlich \extrawidth wieder auf Null gesetzt werden.

Mittwoch, 11. November 2009

Die Externalization Library von TikZ

PGF/TikZ ist eine Packagekombination für Latex mit der man mit vertretbarem Auffand hoch-qualitative Grafiken erstellen kann. Leider steigt mit wachsender Anzahl an TikZ-Grafiken und mit wachsender Komplexität der Grafiken, die Kompiliertzeit eines Latex-Dokuments spürbar an. Da einmal fertiggestellte Grafiken nicht immer wieder neu geparsed werden brächten, gibt es seit langem in PGF die Möglichkeit Grafiken extern als PDF zu speichern, sodass beim zweiten Kompilieren nur noch das gespeicherte PDF eingebunden werden muss. Dies spart je nach Komplexität und Anzahl der Grafiken mehr oder minder viel Zeit beim Erstellen der PDF-Datei.

Bislang musste man, um in den Genuss dieses Features zu kommen, auf den PGF-Layer von TikZ zurückgreifen. Desweiteren musste jedes Grafik durch einen separaten Aufruf von PDFLatex erstellt werden. Hier schafft die neue Externalization (external) Library von TikZ abhilfe. Diese Sucht selbstständig nach TikZ-Abbildungen und speichert diese als PDF-Datei. Wenn schon eine PDF-Datei vorhanden ist, so wird das Bild nicht neu erstellt, sondern die PDF eingebunden. Zur Veranschaulichung hier ein Beispiel aus dem TikZ-Manual:

\documentclass{article}

% main document, called main.tex
\usepackage{tikz}
\usetikzlibrary{external}

% provide the file's real name
\tikzexternalize{main}

\begin{document}

% will be written to 'main-figure0.pdf'

\begin{tikzpicture}
  \node {root}
    child {node {left}}
    child {node {right}
      child {node {child}}
      child {node {child}}
    };
\end{tikzpicture}

% will be written to 'main-figure1.pdf'
\begin{tikzpicture}
  \draw (0,0) -- (5,5);
\end{tikzpicture}

\end{document}

Bislang ist dieses Feature noch nicht in der Release-Version von TikZ enthalten. Um in den Genuss der Externalization Library zu kommen, solltet ihr euch also den aktuellen Nightly-Build von www.texample.net herunter laden und in euren texmf-Tree installieren.

Tom

Samstag, 19. September 2009

19.9.2009 – London die Ankunft

Los ging der Tag mitten in der Nacht um 2:30 mit Aufstehen, um dann 3:00 pünktlich losfahren zu können. Die Fahrt zum Flughafen, der Check-In, der Flug und die Gepäckrücknahme haben perfekt geklappt. Die Koffer waren diesmal tatsächlich schon auf dem Band, als man gerade das Flugzeug verlassen hatte. Ansonsten ist der Flughafen Stansted eher schlicht.

London 295

Flughafen Stansted

London 297 Es gab wirklich viele Busse. Insgesamt gab es über 40 Bays

Im Bus war dann erst mal wieder schlafen angesagt. Ein erster Eindruck von London sah erst mal nicht so einladend aus:

London 302

Einmal die Augen offen und dann das hier gesehen.

London 307

Rote Busse haben sie auf jeden Fall hier genug. :)

An der Victoria Station angekommen, habe ich mich dann zu Fuß auf den Weg gemacht. Erst mal in Richtung Hydepark. Und dann dort durch die Natur Richtung Imperial Collage.

London 318 Der Park von innen.
London 322

Hier habe ich erst mal noch etwas gegessen.

London 326 Hier wird man von wilden Tieren beim Essen belästigt.
London 331

Hier gibt es nicht nur viele Jogger, Skater und Fahrradfahrer, sondern auch für die Reiter ist gesorgt.

Nach dem ich ein wenig im Park rumgedöst habe, bin ich dann irgendwann doch letztendlich an meinem Ziel angekommen und konnte dort die letzten zwei Stunden rumsitzen, bis ich endlich um 14 Uhr einchecken konnte.

London 339 Das Imperial Collage of Science and Technology

Das war es für heute. Bilder vom Zimmer und Hotel gibt es dann bestimmt morgen.

Beste Grüße aus London an alle zu Hause,
Tom

Freitag, 11. September 2009

Dance with me

Einfach nur ein schöner Song zum tanzen und träumen…