|
AutoCAD VBA : Komponenten Platzieren mit VBA
djs0401 am 20.02.2008 um 12:00 Uhr (0)
HalloHabe da ein Problem: In der Firma in der ich grade ein Praktikum mache, soll ich ein Automatisiertes Layout Makro erstellen. Die Zeichnungen, die zusammen gefügt werden sollen sind als Komponenten gespeichert, d.h. 4 Ansichten in der Datei enthalten.Für die gewünschte Zeichnung brauch ich aber nur die draufsicht.Bisher habe ich diesen code benutzt:Code:Private Sub Platzieren(ByRef m() As maschine) Dim einfugPkt(0 To 2) As Double Dim blockObj As AcadBlockReference Dim dateipfad As String m() bekomm ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Komponenten Platzieren mit VBA
djs0401 am 20.02.2008 um 14:49 Uhr (0)
hmm bin leider sehr AutoCAD unerfahren und Visual Basic muss ich auch noch einiges lernen...Könntest du da näher drauf eingehen, wie man das macht? Hoffe das es nicht allzu schwer ist ;-)
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Komponenten Platzieren mit VBA
djs0401 am 20.02.2008 um 16:29 Uhr (0)
Hab deinen Link noch net angeschaut aber danke schonmal. Ich schau später mal.Es sollen einzelne Module/Bauteile aus verschiedenen Zeichnungen(die mehrere Ansichten enthalten, brauche aber nur die draufsicht) über das einlesen einer Stückliste zu einem Layout zusammengfügt werden. Einlesen der STL klappt. Es klappt nur nicht, dass ich aus den Zeichnungen die einzelne Ansicht herausziehen kann... Diese Ansichten sind nicht einfach zu einem Block zusammengefügt sondern in einzelnen Komponenten d.h. links am ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Komponenten Platzieren mit VBA
djs0401 am 07.03.2008 um 16:59 Uhr (0)
Für die, die es interessiert... hab das jetzt so gemacht... leider keinen anderen weg gefunden:Hab aus jeder Datei meine Draufsicht rausgeholt und neu abgespeichert.Dann füge ich die Ansicht in meine Zeichnung ein mit:Code:Set blockObj = ThisDrawing.ModelSpace.InsertBlock(einfugPkt, Dateipfad, 1#, 1#, 1#, 0) blockObj.UpdateUnd dann erstelle ich aus diesem "Block" wieder eine Komponente, mit dem unschönen SendCommand:Code:ThisDrawing.SendCommand "_AMSCREATE" & vbCr & "K" & vbCr & NAME & i & vbCr & "D ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Layer Gruppen
djs0401 am 18.03.2008 um 11:17 Uhr (0)
Layer erzeugst du so:Code:Dim Layer As AcadLayerDim Farbe As AcadAcCmColorDim Linie as AcadLineSet Layer = ThisDrawing.Layers.Add("NameLayer")Layer.Linetype = "NameLinientyp"Layer.Lineweight = 0.25 Linienstärke in [mm]Set Farbe = AcadApplication.GetInterfaceObject("AutoCAD.AcCmColor.16")Call Farbe.SetRGB(80, 100, 244)Layer.TrueColor = FarbeLayer einem Object zuweisen:Linie.Layer = "NameLayer"
|
| In das Form AutoCAD VBA wechseln |