Programmierung von Plugins
Posted: Fri Feb 11, 2022 7:42 pm
Guten Abend und Hallo in's Forum,
ich bin neu bei QCAD und auf der Suche nach einem "programmierbaren CAD" für'n Mac (eigentlich für alle drei OS [Mac, Linux, Windows] und hatte LibreCAD in's Auge gefasst. Aber die Programmierung ist mir mit C++ und Qt zu umständlich bzw. nicht gewohnt weil ich FreePascal mit der Lazarus-IDE programmiere.
Auf Windows habe ich recht passable Ergebnisse mit der COM-Schnittstelle von DesignCAD erreicht. Das funzt recht gut. Leider nicht für Mac und Linux.
Was ich im Netz über QCAD herausgefunden habe ist, dass Plugins, ähnlich LibreCAD, mittels Qt, qmake und C++ geproggt werden können. Wenn ich es richtig verstehe, dann wird doch in den C++-Programmen über Headerdateien, welche die Funktionen für's CAD enthalten, auf QCAD-DLL's zugegriffen und es werden die auszuführenden CAD-Befehle (z.B. zeichnen einer Linie -ähnlich dem Befehl addLine(0,0 ,100, 100) in ECMAScript-) durchgeführt.
Hier setzt meine erste Frage an:
1.) Kann man auch mit Lazarus Plugin's entwickeln, indem man eine DLL baut die als Plugin geladen werden kann und die die entsprechenden Befehle an QCAD übergibt?
2.) Die zweite Frage betrifft ECMAScript. Das scheint JavaScript zu entsprechen. Das Beispiel aus dem Netz mit der Lissajous-Figur funktionierte auf Anhieb. Großer Pluspunkt schonmal für QCad. Da ich unter Lazarus die Unit "Numlib" benutze um lineare Gleichungssysteme oder einfache DGL's zu lösen dachte ich daran evtl. mit Lazarus oder FORTRAN (ist ja prädestiniert für sowas) DLL's zu bauen und diese mit ECMAScript zu benutzen. Allerdings bin ich bei meinen Recherchen darauf gestoßen, dass man mit JavaScript keine DLL's benutzen kann. Geht das mit ECMAScript?
Für Gleichungssysteme in Javascript habe ich gerade hier: http://walter.bislins.ch/blog/index.asp ... aScript%29 eine Funktion gefunden.
Für Antworten danke ich im Voraus!
Viele Grüße
Rainbow
ich bin neu bei QCAD und auf der Suche nach einem "programmierbaren CAD" für'n Mac (eigentlich für alle drei OS [Mac, Linux, Windows] und hatte LibreCAD in's Auge gefasst. Aber die Programmierung ist mir mit C++ und Qt zu umständlich bzw. nicht gewohnt weil ich FreePascal mit der Lazarus-IDE programmiere.
Auf Windows habe ich recht passable Ergebnisse mit der COM-Schnittstelle von DesignCAD erreicht. Das funzt recht gut. Leider nicht für Mac und Linux.
Was ich im Netz über QCAD herausgefunden habe ist, dass Plugins, ähnlich LibreCAD, mittels Qt, qmake und C++ geproggt werden können. Wenn ich es richtig verstehe, dann wird doch in den C++-Programmen über Headerdateien, welche die Funktionen für's CAD enthalten, auf QCAD-DLL's zugegriffen und es werden die auszuführenden CAD-Befehle (z.B. zeichnen einer Linie -ähnlich dem Befehl addLine(0,0 ,100, 100) in ECMAScript-) durchgeführt.
Hier setzt meine erste Frage an:
1.) Kann man auch mit Lazarus Plugin's entwickeln, indem man eine DLL baut die als Plugin geladen werden kann und die die entsprechenden Befehle an QCAD übergibt?
2.) Die zweite Frage betrifft ECMAScript. Das scheint JavaScript zu entsprechen. Das Beispiel aus dem Netz mit der Lissajous-Figur funktionierte auf Anhieb. Großer Pluspunkt schonmal für QCad. Da ich unter Lazarus die Unit "Numlib" benutze um lineare Gleichungssysteme oder einfache DGL's zu lösen dachte ich daran evtl. mit Lazarus oder FORTRAN (ist ja prädestiniert für sowas) DLL's zu bauen und diese mit ECMAScript zu benutzen. Allerdings bin ich bei meinen Recherchen darauf gestoßen, dass man mit JavaScript keine DLL's benutzen kann. Geht das mit ECMAScript?
Für Gleichungssysteme in Javascript habe ich gerade hier: http://walter.bislins.ch/blog/index.asp ... aScript%29 eine Funktion gefunden.
Für Antworten danke ich im Voraus!
Viele Grüße
Rainbow