Technische Zeichnungen
Zeichnungen werden generiert, nicht von Hand gezeichnet: Ein parametrisches build123d-Modell (oder eine STEP-Datei) ist die
alleinige Quelle der Wahrheit. scripts/drawlib.py leitet die Ansichten daraus ab (Entfernen verdeckter Linien,
Schnitte, Schraffuren) und fügt die Annotationen hinzu, die eine Werkstatt benötigt. Jeder Speichervorgang führt eine
automatische Blattprüfung durch. Das Ergebnis ist ein Vektor-PDF pro Blatt (optional DXF/SVG) plus eine PNG-Vorschau,
die Sie ansehen, bevor Sie etwas als fertig bezeichnen.
Warum dieser Weg: Ansichten können nie vom Modell abweichen, ein geänderter Parameter regeneriert jedes Blatt, und dasselbe Modell liefert kostenlos STEP-Dateien und eine Kollisionsprüfung.
Was eine gute Zeichnung erreichen muss
Eine Zeichnung ist ein Vertrag mit der Person, die das Teil herstellt und prüft. Jemand, der das Projekt noch nie gesehen hat, muss das Teil allein anhand des Blattes fertigen können. Das bestimmt alles, was folgt: Bemaßen Sie das, was die Funktion benötigt, tolerieren Sie nur das, was wichtig ist, und geben Sie an, wie jede funktionale Oberfläche aussehen muss. Ein Blatt, bei dem jede Kante bemaßt ist, aber keine Passungen, Rauheiten oder geometrischen Toleranzen hat, ist im Sinne von Prüfern und Werkstätten nicht fertigbar.
Wählen Sie den Weg
- Der Benutzer hat eine STEP-Datei und möchte schnell eine Zeichnung: Führen Sie
python scripts/step2drawing.py part.step [--section] [--lang en --projection third] [--units in] [--material ...] [--density ...] [--dxf]aus. Es liefert Ansichten, verdeckte Linien, Mittellinien, Gesamtmaße, Schriftfeld und die Prüfung. Sagen Sie dann deutlich, dass noch funktionale Maße, Passungen, Toleranzen und Oberflächenbeschaffenheit hinzugefügt werden müssen – und bieten Sie an, diese hinzuzufügen:auto_drawing()im selben Modul gibt(sheet, views, issues)mitout=Nonezurück, sodass Sie das Blatt in Python weiter annotieren können (--up yfür Y-up-Exporte). - Alles, was gefertigt werden muss: Modellieren Sie die Teile und schreiben Sie das Blatt in Python
(Workflow unten). STEP-Eingabe kann dennoch das Modell sein:
D.load_step(path).
Workflow
- Klären Sie zuerst die Funktion. Fragen Sie für jedes Teil: Welche Oberflächen passen zu was, was muss koaxial/senkrecht/flach sein, damit die Maschine funktioniert, welche Maße stammen von Kaufteilen (Lager, Stifte, Schrauben). Diese werden Bezüge, Passungen und Toleranzen. Wenn der Benutzer einen Bericht, eine Stückliste oder eine ältere Zeichnung hat, lesen Sie ihn und behalten Sie die Zahlen; markieren Sie jeden von Ihnen erfundenen Wert als Ihre Annahme und teilen Sie dies dem Benutzer mit. Fragen Sie, welche Sprache und welches Projektionsverfahren die Zeichnung verwenden soll (Standard: Deutsch, erste Winkel; Nordamerika: Englisch, dritter Winkel) und ob es ein firmeneigenes Schriftfeld gibt.
- Modellieren Sie die Teile in einem Modul, jedes Teil in seiner Fertigungsposition, alle
Maße als benannte Parameter. Drehteile: Revolve eines Halbprofils
(x, r); prismatische Teile: Quader minus Bohrungskörper oder Extrude eines Profils (keine verschmolzenen Nähte). Modellieren Sie Gewinde nur als Kernloch. Setzen Sie Kauf-/Normteile als einfache Volumenkörper ein, damit die Baugruppe und die Kollisionsprüfung vollständig sind. - Prüfen Sie die Baugruppe vor dem Zeichnen: paarweise
(a & b).volumeüber alle Teile; jede Überschneidung muss entweder null oder beabsichtigt sein (Gewindeeingriff, Presssitz). Korrigieren Sie das Modell, nicht die Zeichnung. - Schreiben Sie eine Funktion pro Blatt, kopieren Sie das nächstgelegene Beispiel in
examples/:flanged_bush.py(Drehteil, die grundlegende Vorlage),bearing_bracket.py(Baugruppe, Stückliste),stepped_shaft.py(Bruchansicht, Detail, herausgezogener Schnitt, Gewinde),flange.py(Halbschnitt, Teilkreis, Lagetoleranz),spur_gear.py(Getriebedatentabelle),weldment.py(Schweißsymbole),milled_block.py(Englisch, dritter Winkel, firmeneigenes Schriftfeld). Beginnen Sie nur mit Geometrie, rendern Sie, schauen Sie, dann fügen Sie Annotationen in Schichten hinzu: Mittellinien -> Bemaßungen -> Bezüge und Toleranzen -> Oberflächenbeschaffenheit -> Hinweise, Tabellen -> Schriftfeld. - Rendern, Prüfung lesen, jedes Blatt ansehen.
Sheet.save(pdf, png=...)gibt den Prüfbericht aus und schreibt<png>_check.pngmit jeder gefundenen Markierung. Beheben Sie jeden Fehler und jede Warnung (verschieben Sie die Annotation, ändern Sie Offsets,tshift,tpos, Knie von Führungslinien). Lesen Sie dann das PNG selbst – die Prüfung findet Kollisionen und Inkonsistenzen, kein falsches Bemaßungskonzept oder einen Pfeil, der auf die falsche Kante zeigt. Zoomen Sie in dichten Bereichen. Melden Sie nie ein Blatt als fertig, das Sie nicht gesehen haben. - Auslieferung: ein PDF pro Blatt, benannt nach Zeichnungsnummer, ein zusammengefügtes Set (pypdf
PdfWriter.append), DXF, wenn der Benutzer in CAD bearbeitet, STEP pro Teil und für die Baugruppe (export_step). Geben Sie klar an, was noch nicht gezeichnet ist und welche Werte Annahmen sind.
Einmalige Einrichtung pro Rechner: pip install -r requirements.txt. Die ISO-3098-Schriftart osifont ist
nicht enthalten; sie wird in $DRAWLIB_FONT, scripts/fonts/, ~/.drawlib/fonts/ oder den
Systemschriftarten gesucht (siehe scripts/fonts/README.md). Ohne sie verwendet die Bibliothek DejaVu Sans -
gleiche Geometrie, Beschriftung nicht ISO 3098; die Prüfung misst mit der jeweils aktiven Schriftart.
Verwenden von drawlib
Lesen Sie references/drawlib_api.md, bevor Sie das erste Blatt schreiben – jeden Aufruf mit seinen
Koordinatenkonventionen, Rezepten und Fallstricken. Die Grundlagen:
S = D.Sheet("A4"|"A3"|"A2"|"A1"|"A0", lang="de"|"en", projection="first"|"third"). A4 ist Hochformat, die anderen Querformat (landscape=überschreibt). Blattkoordinaten sind mm von der unteren linken Ecke. Zahlen, die die Bibliothek schreibt, folgen dem Dezimaltrennzeichen der Sprache, und Dezimalstellen in Bemaßungstexten werden umgewandelt ("0.02"->0,02auf einem deutschen Blatt).V = D.View(S, origin, scale, *D.VIEWS["front"])–VIEWShat front, top, bottom, left, right, rear, iso.V.p(u, v)wandelt Ansichtskoordinaten (Modell-mm) in Blatt-mm um – verwenden Sie es für jede Annotation. Falsche Vektoren lösen einen klaren Fehler aus; nicht-ISO-Maßstäbe und auf dem Kopf stehende Ansichten warnen.- Ansichten:
V.draw(solids, hidden=),V.section([(V.cut(solid), angle, spacing), ...], background=[uncut parts]),V.half_section(...),V.removed_section(...),V.detail(centre, r, at, scale, "Z"),D.BrokenView(...),V.thread(...),D.views_layout(...)zur Platzierung nach Projektionsmethode. - Bemaßungen:
S.hdim,S.vdim,S.dim,S.dim_angle,S.rdim,S.ddim; Optionentol=,box=True,outside=True,half=True,tshift=. - Passungen: Schreiben Sie sie in den Text (
"Ø20 H7","Ø20 H7/s6");S.fit_table,S.fit_pair_tablegeben ISO-286-Werte aus;iso_tolerancesliefert Abmaße, Grenzmaße, Passungen, ISO 2768. - GD&T:
S.datum,S.fcf(x, y, kind, "0.02", ["A", "B"]),S.fcf_leader. - Oberflächen:
S.rough,S.rough_leader,S.general_surface. S.notes,S.leader_text,S.posnum,S.cutting_plane,S.bom,S.table,S.weld,S.pitch_circle,S.title_block(values, layout=json_or_dict, logo=png).
Regeln, die den Unterschied ausmachen
Dies sind die Punkte, die Prüfer und Werkstätten kontrollieren; references/normen.md enthält die Tabellen
(Linienarten, ISO-2768-Werte, gebräuchliche Passungen, typische Ra-Werte, welche geometrische Toleranz
für welche Funktion) und sollte bei der Auswahl der Werte gelesen werden.
- Projektion und Ansichten: Geben Sie die Methode an (Symbol im Schriftfeld). Wenigste Ansichten, die das Teil definieren; ein Drehteil benötigt einen Schnitt entlang seiner Achse. Bevorzugen Sie Schnitte gegenüber verdeckten Linien. Nur Maßstäbe aus ISO 5455; kleine Teile werden vergrößert gezeichnet, damit Maße Platz haben; lange Teile werden gebrochen; kleine Details erhalten eine Detailansicht.
- Bemaßen vom funktionalen Bezug aus, nicht in Ketten, niemals doppelt. Hilfsmaße in Klammern. Maße möglichst außerhalb der Kontur; Lochbilder in der Ansicht, die sie als Kreise zeigt; kleinere Maße näher am Teil.
- Passungen und Toleranzen: Jeder Passungsdurchmesser erhält eine ISO-286-Passung (Lagersitze nach Herstellerempfehlung). Alles ohne Toleranzangabe fällt unter die allgemeine Toleranz im Schriftfeld (Standard ISO 2768-mK; ISO 13920 für Schweißgruppen).
- Geometrische Toleranzen nur dort, wo die Funktion sie erfordert, immer mit einem Bezug, der selbst ein funktionales, messbares Merkmal ist. Bezug auf einer Achse: fluchtend mit der Bemaßungslinie des Durchmessers. Die Führungslinie trifft die Oberfläche rechtwinklig. Lochbilder: theoretisch exakte Maße plus Lagetoleranz.
- Oberflächenbeschaffenheit auf jeder funktionalen Oberfläche, den allgemeinen Wert einmal neben dem Schriftfeld. Symbole müssen von unten oder von rechts lesbar sein – verwenden Sie eine Führungslinie für nach unten weisende Flächen.
- Schnitte: Wellen, Stifte, Schrauben, Federn, Wälzkörper und Rippen werden in einem Längsschnitt nicht
geschnitten. Benachbarte Teile erhalten unterschiedliche Schraffuren; dünne Schnittflächen werden geschwärzt
(
angle="solid"); Schraffuren werden automatisch um Text herum unterbrochen. - Gewinde (ISO 6410), Schweißnähte (ISO 2553), Zahnräder (ISO 2203): vereinfacht gezeichnet, mit der Beschriftung oder Datentabelle, die die Informationen trägt.
- Zusammenbauzeichnungen: Positionsnummern in einer Reihe, Führungslinien enden in einem Punkt; Stückliste über dem Schriftfeld, Position 1 unten; Normteile mit ihrer Normbezeichnung; nur funktionale und Montagemaße; Hinweise sagen, wie montiert und justiert wird.
- Schriftfeld: Titel, Zeichnungsnummer, Werkstoff mit Normbezeichnung, Masse
(
solid.volume× Dichte), Maßstab, allgemeine Toleranz, Datum, Blatt n/m, Dokumentenart, Revision. Lassen Sie niemals Werkstoff oder Maßstab leer – die Prüfung meldet es.
Ehrlichkeit über Grenzen
- Die Ausgabe ist PDF/SVG/PNG/DXF plus STEP, nicht eine native SolidWorks/Inventor-Zeichnung. Für die weitere Bearbeitung in CAD geben Sie DXF und STEP und weisen darauf hin.
- Die Blattprüfung findet Kollisionen und Inkonsistenzen; sie beurteilt nicht, ob die
Bemaßung, Tolerierung oder die Wahl der Ansichten richtig ist. Das ist Ihre Überprüfung des PNG
anhand der Checkliste in
references/normen.md. - Von Ihnen gewählte Toleranzwerte sind technische Vorschläge. Geben Sie an, welche aus den Unterlagen des Benutzers stammen und welche von Ihnen, damit sie verteidigt werden können.