English | Deutsch

Letztes Update: 5. 2008

Die QCad Libraries

Die QCad Libraries sind eine Sammlung von C++ Bibliotheken, die zusammen mit Qt für Applikationen im CAD Bereich benutzt werden können.

Programmierung mit den QCad Libraries

Die Programmierung mit den QCad Libraries ist so einfach wie in diesem Code Abschnitt gezeigt wird. Das Beispiel erzeugt einen Grafik Container und lädt eine DXF Datei in den Container. Die Grafik wird dann in einem Qt Widget mit Bildlaufleisten dargestellt.

// Create graphic document:
RS_Graphic* graphic = new RS_Graphic();

// Import DXF file:
RS_Import import(*graphic);
import.fileImport("demo.dxf");

// Create graphic view (Qt widget):
QG_GraphicView* graphicView = 
    new QG_GraphicView(this);
graphicView->setContainer(graphic);

QCad Libraries Modul

QCad basiert auf diesen Modulen:

  • dxflib
  • qcadlib
  • qcadcmd
  • qcadactions
  • qcadguiqt
  • qcadprof
  • qcadscripting

Diese Module werden von QCad eingesetzt, können aber auch von anderen CAD verwandten Applikationen benutzt werden um 2d CAD Zeichnungen darzustellen und zu modifizieren. Beachten Sie, dass die QCad Applikation selbst ebenfalls als Quellcode im Produkt QCad Libraries enthalten ist.
Die Abbildung unten zeigt, wie die Module der QCad Libraries interagieren.


Modul Übersicht der QCad Libraries.

Ein einfaches Beispiel: Der Anwender klickt in die Grafik Ansicht um den Startpunkt einer Linie zu definieren. Die Grafik Ansicht im qcadguiqt Modul empfängt den Maus-Klick und leitet ihn an das GUI-unabhängige qcadlib Modul weiter. Das qcadlib Modul weiss, dass die aktuelle "Action" Linien zeichnen soll. Das Maus Ereignis wird also an die entsprechende Action-Klasse im Modul qcadactions weitergeleitet, wo es ausgewertet wird.

dxflib

DXF einlesen und schreiben. dxflib gibt es auch als einzelnes, unabhängiges Modul. Für mehr Informationen zu dxflib, bitte klicken Sie hier.

Anforderungen: Keine speziellen Voraussetzungen.

qcadlib

2d CAD Kern. GUI unabhängige Darstellung, Import, Export, Erstellung von Entities, Modifikation von Entities, Layer Handhabung, Block Handhabung, Rückgängig und Wiederherstellen, Grafik Information, Abstraktes GUI, Mathematische Funktionen, Skript Handhabung.

Anforderungen: Qt Library, dxflib

qcadcmd

Diese Modul enthält alle Befehle, die von der Kommandozeile aus ausgeführt werden können. Das Modul wurde vom Rest getrennt, damit für GUI und Befehle unterschiedliche Sprachen verwendet werden können.

Anforderungen: Qt Library, dxflib, qcadlib

qcadactions

Interaktive Action Klassen für qcadlib. Verarbeitung von Anwender Ereignissen und Eingaben für die Erstellung und Modifizierung von Entities. Interaktives Verändern der Ansicht, Layer Handhabung, Block Handhabung, Fang-Funktionen, Selektierung.

Anforderungen: Qt Library, dxflib, qcadlib, qcadcmd

qcadguiqt

Interaktive Action Klassen für qcadlib. Verarbeitung von Anwender Ereignissen und Eingaben für die Erstellung und Modifizierung von Entities. Interaktives Verändern der Ansicht, Layer Handhabung, Block Handhabung, Fang-Funktionen, Selektierung.

Anforderungen: Qt Library, dxflib, qcadlib, qcadcmd, qcadactions

qcadprof

Klassen und Funktionen, die nur in QCad Professional verfügbar sind (z.B. Polylinien Unterstützung).

Anforderungen: Qt Library, dxflib, qcadlib, qcadcmd, qcadactions, qcadguiqt

qcadscripting

Skript Schnittstelle für QCad. Dieses Modul ermöglicht den Zugriff auf einige C++ Funktionen und Klassen durch die Skript Sprache.

Anforderungen: Qt Library, QSA, dxflib, qcadlib, qcadcmd, qcadactions, qcadguiqt