I dette blogindlæg vil jeg diskutere en af de vigtigste metoder i pyautocad, dvs. Tilføj(). Denne metode åbner døre for oprettelse af en række dokumentbaserede objekter i henhold til AutoCADs objektmodel. For en mere omfattende dokumentation om pyautocad henviser jeg til mine andre pyautocad-eksempler. I tidligere artikler dækkede jeg Intersect()-metoden i pyautocad, såvel som AutoCAD rasterbilledobjekter, 3D mesh-objekter, objektsletning med pyautocad, pyautocad til grundlæggende AutoCAD – operationer osv.
Grundlæggende brug af Add()-metoden i pyautocad
Pyautocad Add()-metoden opretter medlemsobjekter og tilføjer dem til vores dokument. I dette særlige afsnit vil jeg diskutere den helt grundlæggende syntaks, der kan bruges til at skabe objekter på denne måde. Dette gælder for følgende objekttyper/grupper:
- Ordbøger
- DimStyles
- Dokumenter
- Grupper
- Lag
- Layouts
- Linjetyper
- Materialer
- Popup-menuer
- Registrerede applikationer
- Udvalgssæt
- Tekststile
- Værktøjslinjer
- Visninger
- Udsigtsporte
Syntaksen til at skabe disse objekter er meget enkel:
object.Add(Name) # pyautocad Add()-metode
For eksempel, hvis vi vil oprette et nyt lag, vil jeg bruge følgende syntaks:
acad.doc.Layers.Add(layer_name)
Det samme koncept fungerer for alle de andre objekttyper indeholdt i ovenstående objekttypeliste.
Anvendelse af pyautocad Add()-metoden til at oprette en blok
Nogle gange har vi brug for at arbejde med flere objekter og behandle dem som en enkelt enhed. I sådanne tilfælde bruger vi blokke.
Pyautocad-syntaksen til at oprette en blok i AutoCAD er som følger.
object.Add(Insertion_Point, Block_Name)
Efter at have oprettet en blok, kan vi gemme den samme i en variabel og tilføje forskellige geometrier til den ved at bruge de metoder, jeg diskuterede i mine tidligere blogindlæg.
b1 = acad.doc.Blocks.Add(ip, "Test_block_1")
l1 = b1.AddLine(APoint(100, 100, 0), APoint(350, 350, 0))
c1 = b1.AddCircle(APoint(200, 250, 0), 150)
Nu oprettes AutoCAD-blokken som en del af dokumentet.
Men alligevel er det ikke synligt i modelrummet endnu. For at bruge blokken skal jeg indsætte den nyoprettede blok i modelrummet. Jeg kan gøre det ved at bruge pyautocad InsertBlock()-metoden.
Pyautocad-syntaksen til at anvende InsertBlock()-metoden er som vist nedenfor:
object.InsertBlock(InsertionPoint, Name , Xscale , Yscale , ZScale , Rotation , Password)
e.g.
acad.model.InsertBlock(APoint(250, 500, 0), "Test_block_1", 1, 1, 1, 0)
Jeg kan se, at blokken er blevet indsat i modelrummet.
Afsluttende bemærkninger
For yderligere blogindlæg, der dækker AutoCAD-automatisering, se venligst mine andre blogindlæg relateret til pyautocad og pywin32 . Efterlad venligst eventuelle spørgsmål, du måtte have, som en kommentar nedenfor. Du er velkommen til at kontakte mig for teknisk assistance. Det kan du gøre ved at bruge vores kontaktformular.
Leave a Reply