Hallo zusammen,
ich versuche, die Scripting tutorials zu verstehen, drehe mich irgendwie immer im Kreis. Habe scheinbar nicht verstanden wie ich eine .js aufbaue, um entsprechende entities über ./qcad -autostart xyz.js zeichnen zu lassen.
Ich brauche folgendes:
1. Wie kann ich in eine bestehende .dwg oder .dxf einen Text "DiesistderBeispieltext" an Position x,y zeichnen lassen?
2. Wie kann ich in eine bestehende .dwg oder .dxf mehrere Texte "DiesistderBeispieltext1"; "DiesistderBeispieltext2" an Position x1,y1 bzw. x2,y2 zeichnen lassen? Die Texte und Positionen sollen in einer Text-Datei hinterlegt sein und zum Beispiel mit ; getrennt sein.
Beispiel: text.txt
"DiesistderBeispieltext1";0;0
"DiesistderBeispieltext2";0;5
"DiesistderBeispieltext3";0;10
3. Krönender Abschluß:
Wie kann ich Texte, die in einer mysql-DB hinterlegt sind automatisch in ein .dwg oder .dxf übernehmen lassen?
Mir wäre schon bei 1 und 2 gut geholfen, da ich annehme, dann das scripting auch verstanden zu haben, so daß ich die DB-Verbindung und die Übernahme der Texte selbst hinbekomme.
Danke vorab für die Unterstützung.
einfaches scripting plus Steigerung "Text in Zeichnung"
Forum rules
Immer Betriebssystem und QCAD Version angeben.
Zeichnungsdateien und Bildschirmfotos beifügen.
Eine Frage pro Topic.
Immer Betriebssystem und QCAD Version angeben.
Zeichnungsdateien und Bildschirmfotos beifügen.
Eine Frage pro Topic.
Re: einfaches scripting plus Steigerung "Text in Zeichnung"
Mit dem Argument -autostart wird die QCAD Applikation ersetzt durch das autostart Skript. D.h. es wird keine Benutzeroberfläche geöffnet. Dies wird verwendet für Kommandozeilenwerkzeuge (z.B. 'merge', 'dwg2pdf, 'dwg2bmp', 'dwg2svg', etc. Ein solches Autostart Skript kann irgendwelchen Code enthalten. In einfachsten Fall z.B.:QTrain wrote:Habe scheinbar nicht verstanden wie ich eine .js aufbaue, um entsprechende entities über ./qcad -autostart xyz.js zeichnen zu lassen.
Code: Select all
print("Hello World");
Code: Select all
./qcad examples/flange.dxf -exec scripts/Select/SelectAll/SelectAll.js
Zunächst muss also entschieden werden, ob ein Kommandozeilenwerkzeug (resp. eine eigene Applikation) erstellt werden soll oder ein Werkzeug welches mit in der QCAD Benutzeroberfläche ausgeführt wird und evtl. auch über einen Menüeintrag oder eine Schaltfläche gestartet werden kann. Die erste Struktur des Skriptes hängt sehr stark von dieser Entscheidung ab.
Re: einfaches scripting plus Steigerung "Text in Zeichnung"
Danke für die schnellen und kompetenten Antworten!
Für mich ist zielführend das Kommandozeilenwerkzeug. Wie z.B. im Tutorial das Zeichnen eines Dreiecks.
Mir würde für das erste schon mal reichen bei diesem Beispiel "Dreieck" das Script so zu ergänzen, dass an den
drei Eckpunkten jeweils der Text "A", "B", "C" automatisch hinzugeschrieben wird.
Die drei Positionen sind ja definiert. Und jetzt, idealerweise auf einem Layer "Text", die drei Texte eingetragen werden.
Welchem "var ...TextEntity( .....)" bzw. "operation.addObject(new ...Entity(...))" kann man das dann in das Beispielscript einbinden? Und wie werden die Parameter gesetzt?
Ich denke wenn ich da einen Einstieg habe kann ich mir das Andere erschliessen.
Danke vorab!
Für mich ist zielführend das Kommandozeilenwerkzeug. Wie z.B. im Tutorial das Zeichnen eines Dreiecks.
Mir würde für das erste schon mal reichen bei diesem Beispiel "Dreieck" das Script so zu ergänzen, dass an den
drei Eckpunkten jeweils der Text "A", "B", "C" automatisch hinzugeschrieben wird.
Die drei Positionen sind ja definiert. Und jetzt, idealerweise auf einem Layer "Text", die drei Texte eingetragen werden.
Welchem "var ...TextEntity( .....)" bzw. "operation.addObject(new ...Entity(...))" kann man das dann in das Beispielscript einbinden? Und wie werden die Parameter gesetzt?
Ich denke wenn ich da einen Einstieg habe kann ich mir das Andere erschliessen.
Danke vorab!
Re: einfaches scripting plus Steigerung "Text in Zeichnung"
Beispiel Skript zum Hinzufügen eines Layers:
https://github.com/qcad/qcad/blob/maste ... ayerAdd.js
Beispiel Skript zum Hinzufügen von Text (Misc > Script Examples > Draw > Text):
https://github.com/qcad/qcad/blob/maste ... /ExText.js
https://github.com/qcad/qcad/blob/maste ... ayerAdd.js
Beispiel Skript zum Hinzufügen von Text (Misc > Script Examples > Draw > Text):
https://github.com/qcad/qcad/blob/maste ... /ExText.js