ich möchte mir ein CAD Progarmm bauen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

Hallo,

wie oben erwähnt, möchte ich mir ein CAD-Programm bauen, habe aber keine Ahnung von Python. Da Python 'svg'-Files bearbeiten kann, sowohl lesen und schreiben, möchte ich es mal versuchen.

Habe mir einige Beispiele aus dem Netz angeschaut, da war nichts in der Richtung dabei.
Ich möchte eine Fläche erzeugen, auf der ich Zeichnen kann.(Linien in alle Richtungen)
Dabei finde ich nichts, wie ich die Maus abfragen kann und die angelickten Punkte in Varaible weiter gebe und verarbeite.

Kennt jemand von Euch in Linux (Debian) ein passendes Progamm für mich , dann brauche ich es nicht zu schreiben?
Ich habe verschiedene versucht, die sind aber sehr umständlich.
Gruß

pyfopy
nezzcarth
User
Beiträge: 1775
Registriert: Samstag 16. April 2011, 12:47

pyfopy hat geschrieben: Freitag 29. August 2025, 17:07 Kennt jemand von Euch in Linux (Debian) ein passendes Progamm für mich , dann brauche ich es nicht zu schreiben?
Ich habe verschiedene versucht, die sind aber sehr umständlich.
FreeCAD oder OpenScad zum Beispiel (unterschiedliche Ansätze).
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

die kannste vergessen. Früher in der Firma hatten wir unter win... ein gutes Prg.. Läuft leider nicht unter Linux, gibt es auch nicht mehr.
Gruß

pyfopy
geraldfo
User
Beiträge: 75
Registriert: Samstag 28. Januar 2023, 20:19
Wohnort: Nähe Wien
Kontaktdaten:

pyfopy hat geschrieben: Freitag 29. August 2025, 17:24 die kannste vergessen.
Was ist schlecht an diesen Anwendungen?
Sirius3
User
Beiträge: 18291
Registriert: Sonntag 21. Oktober 2012, 17:20

Mit dieser Aussage kann ich nicht viel anfangen. We\che spezifischen Anforderungen hast Du an das CAD-Programm, das von den von nezzcarth genannten nicht erfüllt werden?
Benutzeravatar
noisefloor
User
Beiträge: 4202
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

CAD in 2D oder 3D? SVG ist ein 2D Format. Wenn dir SVG wirklich reicht, dann sollte dir auch Inkscape als Programm reichen. Läuft einwandfrei unter Linux. Ist halt nicht wirklich ein CAD Programm, genau so wenig wie SVG ein brauchbares CAD-Format ist.

Wenn du nicht programmieren kannst, ist das Projekt noch nicht mal im Ansatz machbar. Und selbst wenn man sehr gut programmieren kann, ist das für einen alleine IMHO fast nicht machbar.

Und mit CAD Programmen arbeiten ist halt nicht trivial. Technischer Produktdesign ist nicht ohne Grund ein Ausbildungsberuf mit 3,5 Jahren Ausbildungszeit.

Gruß, noisefloor
nezzcarth
User
Beiträge: 1775
Registriert: Samstag 16. April 2011, 12:47

pyfopy hat geschrieben: Freitag 29. August 2025, 17:24 die kannste vergessen.
Wenn die Frage so allgemein in einem fachlich nicht einschlägigen Forum wie diesem gestellt wird, gehe ich halt davon aus, dass es um den Hobby-Bereich geht und jemand z.B. Teile für den privaten 3D-Druck entwerfen möchte. Und da sind die beiden genannten Programme (oder, wie von noisefloor angemerkt, wenn es primär um reines Zeichnen geht auch Inkscape) meiner Einschätzung nach gängige und erprobte Empfehlungen für freie Linux-Software. CAD-Pakete gibt es, soweit ich das überblicke, etliche, viele davon sind auf bestimmte Branchen/Anwendungsfälle spezialisiert. Wer so etwas braucht, ist meiner Meinung nach aber ja meistens vom Fach, oder kennt sich zumindest gut genug aus, kann klar benennen, was sie/er braucht und weiß dann in der Regel auch besser als wir hier im Python-Forum, was da die einschlägige Software ist. Ein paar Linien auf ein Canvas zu zeichnen ist nicht so das Problem (auch wenn ich selbst das für den Anfang nicht empfehle), aber eine CAD-Anwendung, die man auch benutzen möchte, selbst zu programmieren, halte ich weder für für realistisch oder für zielführend.
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

hallo,

ich möchte ein 2D CAD Programm, bei denen ich später auch mal etwas ändern kann.
Dieses ist, bei denen die ich getestet habe, nicht im vollen Umfang möglich.
Beispiel Inkscape, die Bemaßungen sind kaum zu lesen. Macht man diese größer, werden sie dicker und wieder unleserlich.
Die Schriften in den meisten Programmen sehen furchtbar aus.
Die Bedienugen sind tötlich.
Ich habe vor langer Zeit beruflich mit 'Autosketch' unter Windows gearbeitet.
Da konnte man z.B. eine Linie anklicken und diese in allen Eigenschaften ändern.
Das klappte bei der Erstellung der Zeichnung, sowohl auch bei einer späteren Änderung.
So etwas habe ich unter Linux noch nicht gefunden.

Ich dachte, so etwas unter Python zu erstellen, aber ich kenne Python viel zu wenig.
Gruß

pyfopy
Benutzeravatar
noisefloor
User
Beiträge: 4202
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

na dann: nimm' Windows. Da ist die Auswahl an CAD Programmen viel größer. Zumindest dann, wenn man die kostenpflichtigen einschließt. Ich selber nutze (beruflich) Rhino3D für Entwürfe. Das ist für den Leistungsumfang und die Lizenzpolitik mit ~1000 Euro pro Lizenz relativ günstig. Und 3D.

Oder programmier' selber, halt unter einer anderen Sprache, die du kannst. Einfacher wird so ein Projekt durch die Wahl der Programmiersprache sowieso kaum.

Gruß, noisefloor
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

ich möchte aber mit Linux, nicht mehr mit win...
Gruß

pyfopy
Benutzeravatar
noisefloor
User
Beiträge: 4202
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

na ja... die willst Linux UND findest alle CAD Programme, die du für Linux getestet hast, unbrauchbar UND dir fehlen die Programmierskills, dir selber ein passendes CAD Programm (für Linux) zu schreiben. Liegt jetzt an dir, die für dich zielführenden Schlussfolgerungen daraus zu ziehen.

Gruß, noisefloor
Benutzeravatar
__blackjack__
User
Beiträge: 14097
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

Ich hatte mal was mit QCad gemacht. LibreCAD ist ein Fork davon.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
juwido
User
Beiträge: 26
Registriert: Donnerstag 15. Dezember 2022, 13:41

LibreCAD ist einfaches 2D...

FreeCAD ist 3D und ein deutlich anderer Ansatz bei der Bedienung.
- Aber, da gibt es eine Python-Schnittstelle für Macros!

Kommt halt darauf an, was man denn nun genau damit machen möchte.
Benutzeravatar
__blackjack__
User
Beiträge: 14097
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@juwido: Der Fragesteller will Linien zeichnen und SVG als Datenformat verwenden, und ihm sind die Programme zu kompliziert zu bedienen. Natürlich schlage ich dann ein 2D- und kein 3D-CAD-Programm vor. 😉
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
WasserLinse
User
Beiträge: 30
Registriert: Montag 29. Juli 2024, 06:39

da Svg nur Text ist, kann man das machen. Hab ich auch getan. Dauert allerdings viele Wochen.
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

@ WasserLinse: könntest Du mr dabei helfen, ich habe nämlich von Python nur sehr geringe Ahnung.
Das die ganze Entwichlung dazu sehr viel Zeit in Anspruch nimmt kenne ich, habe mal ein umfangreiches Grafik-Prg. unter Gambas3 gebaut, da war ich auch lange dran. Gambas3 kann aber leider kein 'SVG' speichern, nur laden und als Bild wiedergeben.
Gruß

pyfopy
Benutzeravatar
noisefloor
User
Beiträge: 4202
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

@pyfopy: SVG "von Hand" schreiben hat so rein gar nichts mit Python zu tun. SVG basiert auf XML, kannst du in jedem Editor schreiben. Oder programmatisch mit jeder Programmiersprache erstellen, für die es eine Bibliothek zum Erstellen von XML gibt. Also so mehr oder minder jeder.

Und wenn du Mitstreiter suchst, solltest du zumindest mal definieren, was die Ziele sind. "ich will ein CAD Programm schreiben" ist zwar nicht nichts, aber so gut wie nichts. Und da du immer wieder betonst, wie wenig Python du kannst, hinterlässt du auch eher den Eindruck, dass du wen suchst, der dir für lau ein CAD Programme nach deinem Geschmack schreibt. Zur Komplexität von CAD-Programmen wurde ja schon was gesagt.

Gruß, noisefloor
nezzcarth
User
Beiträge: 1775
Registriert: Samstag 16. April 2011, 12:47

pyfopy hat geschrieben: Samstag 30. August 2025, 10:48 Dieses ist, bei denen die ich getestet habe, nicht im vollen Umfang möglich.
LibreCAD kann man z.B. mit Lua skripten. Was fehlt dir da konkret? Ich kann nur empfehlen, sich mal zwei, drei Nachmittage Zeit zu nehmen, um sich tiefer in eines der freien Programme einzuarbeiten. Selbst wenn du danach weiterhin auf dem Standpunkt bleibst, diese seien unbrauchbar, bekommst du vielleicht dennoch einen Eindruck davon, was man beim selbst programmieren so alles beachten müsste. Alleine schon die Tatsache, dass es sich um GUI-Software handelt, heißt m.M.n. eigentlich, dass man in Python schon sattelfest sein sollte, bevor man sich da ran wagt.
pyfopy
User
Beiträge: 13
Registriert: Mittwoch 29. Februar 2012, 15:14
Wohnort: NDS

ich kenne aber keine andere Programmiersprache, die svg-files darstellen und speichern kann. Was heißt für lau? Mein Begriff für ein Forum ist, daß man sich dort gegenseitig hilft, ohne wirtschaftliche Interessen. Wenn jemand nicht antwortem möchte, brauch er es auch nicht.

Mir kommt es zuerst darauf an, daß ich Maus-Klickpunte erfassen und in eine Variable schreiben kann. Dazu dann z.B. eine Linie zwischen den Mauspunkten zeichnen kann. Diese Linie möchte nach Anklicken bei Bedarf wieder in allen Richtungen ändern können.
Das sind für mich die ersten Voraussetzungen dazu. Habe dazu schon das Netz durchsucht aber nichts gefunden.
Gruß

pyfopy
Benutzeravatar
__blackjack__
User
Beiträge: 14097
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@pyfopy: „Für lau“ heisst wie schon erwähnt wurde, das Du immer wieder betonst, dass Du das eigentlich Python nicht gut kannst. Wie sollte denn dann Hilfe aussehen, wenn Du nicht erwartest, das jemand anderes das programmiert was Du möchtest‽

Keine Sprache kann „SVG-Dateien darstellen und speichern“. Zumindest kenne ich keine. Man braucht bei allen Sprachen Bibliotheken dazu, wenn man sich das nicht von Grund auf selber schreiben möchte.

Maus-Klickpunkte impliziert ja schon mal, dass Du eine GUI brauchst, also ein GUI-Rahmenwerk. Wenn man nichts zusätzlich installieren möchte, landet man bei Tk. Da wird man sich so ziemlich alles selber schreiben müssen. Wobei es mal einen SVG-Editor in Python/Tkinter gab: Sketch/Skencil. Qt kennt/kann da deutlich mehr und kann auch SVG darstellen (aber nicht manipulieren!). SVG ist auch nicht wirklich ein sinnvolles Format für CAD-Zeichnungen. Das wäre sinnvoll als Export-Format um die CAD-Zeichnungen mit externen Programmen nachzubearbeiten oder in andere Dokumente einzubetten. Und einen rudimentären Import kann man sich natürlich schreiben, der eine Untermenge von SVG in das eigene Dokumentenmodell umsetzt.

GUI setzt wie hier schon gesagt wurde, voraus das man Python gut kann. Und auch sattelfest in objektorientierter Programmierung (OOP) ist. Dazu kommt dann die bei GUIs übliche ereignisbasierte Programmierung. Nicht mehr der programmierende bestimmt den Programmfluss komplett, sondern man erstellt die GUI, registriert sich für Rückrufe bei bestimmten Ereignissen, und gibt die Kontrolle dann an die GUI-Hauptschleife ab.

Falls Du etwas in Python programmieren willst, dann müsstest Du als erstes mal die Grundlagen von Python lernen. Das Grundlagentutorial aus der Python-Dokumentation sollte man mal durchgearbeitet haben.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
Antworten