In diesem Blogbeitrag werde ich einige sehr gängige AutoCAD-Operationen vorstellen und erläutern, wie wir sie mit pyautocad in einem Python-Skript implementieren können. Wir besprechen das Kopieren, Verschieben/Einfügen, Löschen, Drehen, Versetzen, Skalieren und Hervorheben von Objekten.
Python-Skript und AutoCAD-Modell einrichten
Zunächst richten wir unsere Arbeitsumgebung für die Ausführung von Aktionen an der AutoCAD-Vorlage mit dem Python-Modul pyautocad ein.
from pyautocad import Autocad, APoint, aDouble
from math import *
acad = Autocad(create_if_not_exists=True)
Hinzufügen von AutoCAD-Objekten zur Zeichnungsvorlage mit pyautocad in Python
Wie wir bereits in unseren vorherigen Blogs in dieser Pyautocad-Serie über das Erstellen von Objekten besprochen haben, werden wir einige Objekte zeichnen, um die oben erwähnten Operationen an ihnen auszuführen.
c1 = acad.model.AddCircle(APoint(100, 100, 0), 100)
l1 = acad.model.AddLine(APoint(100,100), APoint(300, 350))
el1 = acad.model.AddEllipse(APoint(250, 300), APoint(700, 450), 0.5)
Wir haben also einen Kreis, eine Linie und eine Ellipse erstellt.
Wir werden mit der Methode „ZoomExtents“ in die erstellten Objekte hineinzoomen. Dieser Befehl funktioniert genauso wie der Standardbefehl „Alles zoomen“ in AutoCAD.
acad.app.ZoomExtents()
Verwenden von Kopier-, Verschiebe- und Löschmethoden für grundlegende AutoCAD-Operationen
Da wir die grundlegenden AutoCAD- Objekte skizziert haben, beginnen wir mit drei der am häufigsten verwendeten Befehle, dh Kopieren, Verschieben und Löschen.
Die Art und Weise, wie das Kopieren bei der Verwendung von Pyautocad funktioniert, ist, dass wir eine Kopie eines vorhandenen Objekts erstellen, diese in einer Variablen speichern und die Methode „Verschieben“ verwenden, um sie an der gewünschten Stelle einzufügen.
c2 = c1.Copy()
c2.Move(APoint(100, 100), APoint(300, 300))
Hier kopieren wir den „c1“-Kreis und speichern die Kopie davon in der Variablen „c2“. Dann kopieren wir es von seinem vorhandenen Mittelpunkt, dh (100, 100, 0) nach (300, 300, 0), indem wir die Methode „Verschieben“ verwenden.
Wie Sie den Abbildungen 1 und 2 entnehmen können, haben wir Kreis 1 an eine neue Position kopiert. Wenn wir unseren vorherigen Kreis „c1“ nicht mehr wollen, können wir ihn löschen; Andernfalls hätten wir den Kreis „c1“ mit der Move-Methode verschieben können, anstatt ihn zu kopieren.
Lassen Sie uns jetzt den Kreis „c1“ löschen.
Drehen Sie AutoCAD-Objekte mit pyautocad in Python
Nun werden wir besprechen, wie Objekte gedreht werden. Hier kopieren wir die Linie l1 und drehen sie von ihrem bestehenden Basispunkt (100, 100, 0) um 90 Grad.
l2 = l1.Copy()
l2.Rotate(APoint(100,100), pi*90/180)
Versetzt Objekte in AutoCAD mit pyautocad
Lassen Sie uns nun besprechen, wie Sie Offsets von Objekten nehmen. Wir benötigen die Offset-Methode, um sie für das Objekt zu verwenden, für das wir diesen Offset wünschen.
Hier nehmen wir einen Versatz für die vorhandene Ellipse, dh „el1“.
el2 = el1.Offset(10)
Skalieren von AutoCAD-Objekten in Python
Um ein Objekt nach oben oder unten zu skalieren, benötigen wir die „Offset“-Methode, die für das zu skalierende Objekt verwendet wird.
Lassen Sie uns den bestehenden Kreis „c2“ verkleinern.
c3 = c2.ScaleEntity(APoint(300, 300), 0.5)
Falls wir viele Objekte zu behandeln haben, können wir das spezifische Objekt mit der „Highlight“-Methode hervorheben und den Parameter als „True“ übergeben.
l2.Highlight(True)
Wirtschaftsingenieur mit Interesse an Optimierung, Simulation und mathematischer Modellierung in R, SQL, VBA und Python
Leave a Reply