  TkTeXCAD -- Kurzbeschreibung
  Hilmar Straube, hilmstr@web.de
  13. August 2001

  Kurzbeschreibung zu TkTeXCAD, einem Python/Tkinter Programm zum
  Erstellen von picture-Umgebungen fr LaTeX.
  ______________________________________________________________________

  Inhaltsverzeichnis


  1. Einfhrung

  2. (Nicht-)Fhigkeiten

     2.1 Teilbilder
     2.2 EPS-Einbindung

  3. Hinweise zur Bedienung

     3.1 Das Men Anzeige
     3.2 Das Men Teilbildklassen
     3.3 Das Men Datei


  ______________________________________________________________________

  11..  EEiinnffhhrruunngg

  TkTeXCAD soll die Erstellung von picture-Umgebungen fr LaTeX
  vereinfachen. Es kennt deren Einschrnkungen und versucht, die Ausgabe
  von TeX mglichst getreu schon vor dem Export darzustellen. Es kann
  Dateien im eigenen Format (realisiert mit dem Python-Modul pickle)
  laden und speichern, LaTeX-Code aber nur exportieren. Es ist vor allem
  auf die Verarbeitung von wiederverwendbaren Teilbildern hin ausgelegt.


  22..  ((NNiicchhtt--))FFhhiiggkkeeiitteenn

  Das Programm rechnet grundstzlich in pt und benutzt nur die picture
  Umgebung ohne Erweiterungspakte (auer graphicx fr das einfgen von
  EPS-Dateien).

  Das Programm erzeugt also nur folgendes: \circle (leerer Kreis;
  abgestuft bis 40 pt), \circle* (ausgefllt, nur bis 15 pt), Linien und
  Pfeile (eingeschrnkte Neigungswinkel; verdickte waagerechte Linien
  als gefllte Rechtecke gebraucht), verschiedene Textboxen, die
  quadratischen \qbezier-Kurven, \includegraphics (bentigt die Angabe
  von \usepackage{graphicx} im Vorspann) und natrlich Befehle zum
  Einfgen ggf. skalierter Teilbilder.

  Weiterhin lassen sich mehrere gleiche Objekte im jeweils gleichen
  Abstand mittels \multiput erzeugen.


  22..11..  TTeeiillbbiillddeerr

  Das Programm unterscheidet zwischen Teilbildklassen und
  Teilbildinstanzen. Eine Teilbildklasse besteht aus einigen Objekten
  mit bestimmten Eigenschaften. Eine Instanz der Klasse ist dann wieder
  ein Objekt einer oder mehrerer anderer Teilbildklassen und erscheint
  dort als benutzerdefiniertes Objekt. ndert sich die innere
  Teilbildklasse, ndert sich die Darstellung in allen Instanzen.

  Das Objekt "Instanz einer Teilbildklasse" lsst sich auch skalieren
  (\unitlength). Dabei knnen sich die Rundungen von Ovalen und die
  Durchmesser von Kreisen unproportional ndern. Auch dies drfte
  korrekt dargestellt werden.

  Ein Bild besteht damit fr TkTeXCAD aus einigen Bildklassen, deren
  erste das Hauptbild darstellt und Instanzen aller anderen ggf.
  indirekt enthlt. Beim Exportieren erzeugt jede Bildklasse eine
  picture-Umgebung, auf die vom Hauptbild zugegriffen wird. Deren Name
  ist auch der Dateiname. Sie mssen also dafr Sorge tragen, dass
  dieser Name auf ihrem Rechnersystem legal ist.


  22..22..  EEPPSS--EEiinnbbiinndduunngg

  Wie schon erwhnt, knnen Sie EPS-Bilder einfgen. Das Programm kann
  auch den Inhalt dieser Bilder in der Vorschau anzeigen, braucht dazu
  aber die Hilfe der Python Imaging Library (PIL). Diese ihrerseits
  greift auf Ghostscript zurck, kann das aber nur auf UNIX-Derivaten
  mit installiertem Ghostscript. Falls Sie Python mit der PIL auf einer
  anderen Plattform benutzen, hngen Sie an die Zeile "import Image"
  einige Buchstaben an, so dass ein "ImportError" hervorgerufen wird,
  der dem Programm das Nichtvorhandensein der EPS-Untersttzung anzeigt.

  Das uert sich dadurch, dass jegliche eingefgten EPS-Dateien als
  durchgestrichenes Rechteck erscheinen und fr das Programm dessen
  Breite/Hhe-Verhltnis unbekannt ist. Es nimmt daher (meist
  flschlicherweise 1 zu 1 an).

  Weder in den fr den Eigengebrauch gespeicherten .pic-Dateien, noch in
  den exportierten Dateien werden die EPS-Dateien gespeichert. Sie
  sollten also sicher stellen, dass Sie alle verwendeten Grafikdateien
  mitkopiert werden. (In den exportierten .tex-Dateien stehen absolute
  Pfade.)


  33..  HHiinnwweeiissee zzuurr BBeeddiieennuunngg

  33..11..  DDaass MMeenn AAnnzzeeiiggee

  Jede Eingabe eines Koordinatenpunktes wird in LaTeX-Koordinaten
  umgerechnet und auerdem noch auf den nchsten Netzpunkt gesetzt. Das
  Netz kann angezeigt oder versteckt sein, ist aber immer aktiv. Ist
  seine Wirkung unerwnscht, stellen sie einfach den Netzabstand klein
  genug.

  Zur Umrechnung in LaTeX-Koordinaten wird die Angabe im oberen Teil
  dieses Mens benutzt. Sie gibt an, wieviele Bildschirmpunkte einer
  Einheit (pt) entsprechen.


  33..22..  DDaass MMeenn TTeeiillbbiillddkkllaasssseenn

  Eine neue Teilbildklasse wird aus den gerade markierten (Elemente/...
  markieren) Objekten erstellt. Diese Objekte werden entfernt und an
  ihre Stelle wird dann eine (erste) Instanz der neu erstellten Klasse
  an Stelle der alten Objekte eingefgt.

  Darunter werden geladenen Teilbildklassen angezeigt; die Klassen, die
  gerade nicht eingefgt werden knnen, sind deaktiviert. Mit dem
  untersten Menpunkt knnen alle bisher erzeugten Teilbildklassen zur
  Bearbeitung aufgerufen werden.

  Das passt vielleicht nicht ganz so gut hier her, ist aber wohl doch
  ein wenig erklrungsbedrftig: Mit \multiput wiederholten
  Bildelementen kann man von einem Multielement zu mehreren
  Einzelelement zerlegen (Multi auflsen). Dann sind die Bildelement
  nicht mehr verbunden und knnen fr sich gendert werden. Bildinstanz
  auflsen zerlegt eine Bildinstanz in ihre Einzelteile, das in einem
  \multiput dann gleich mehrfach. Dadurch ist dieser Bildteil von der
  Klasse getrennt; es hat aber keinen Einfluss auf andere Instanzen der
  Klasse.


  33..33..  DDaass MMeenn DDaatteeii

  Laden, Speichern und Importieren beziehen sich auf die von TkTeXCAD
  erzeugten .pic-Dateien. Importieren funktioniert nur, wenn die Namen
  der Klassen in der zu importierenden Datei keine berscheidungen mit
  den gerade geladenen Klassen haben. Von den so importierten Klassen
  knnen dann Instanzen erzeugt werden.

  Der Export erstellt zu jeder Klasse eine .tex-Datei gleichen Namens.
  Diese beziehen sich aufeinander und ihre Hauptdatei kann mit
  \import{_n_a_m_e} in ihre LaTeX-Datei eingefgt werden.

















































