|
Autocad VBA : Objektzuweisung über Handle funzt nicht
TomiProg am 15.12.2004 um 15:49 Uhr (0)
Habe mal wieder ein Problem mit Acad14 und VBA. Ich möchte mit dem Befehl Set Obj = ThisDrawing.HandleToObject( 7e67 ) ein Objekt zuweisen, welches auch tatsächlich (hier 7e67 ) in meiner Zeichnung vorhanden ist, zuweisen. Doch leider wird nur Nothing zurück gegeben. Die Variable Obj ist als Object definiert, so, wie es in der Hilfe zum Befehl HandleToObject beschrieben ist. Der Sysntax lautet: RetVal = Objekt.HandleToObject(Referenz) wobei Referenz ein String sein muß. Im BeispielCode zu diesem Befehl is ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Block verschieben
KlaK am 10.05.2013 um 12:31 Uhr (0)
Hallo niclas, willkommen im ForumSo ganz verstehe ich Dein Problem nicht, denn im Prinzip brauchst Du dazu kein VBA.Dein Block "Josef" kann jetzt zwei Bedeutungen haben, bei denen Du Verschiebungen machen möchtest:Einmal als Blockdefinition, also praktisch die Vorlage, Definition. Die kann man nachträglich mit dem Blockeditor bearbeitenOder als Blockreferenz, diese besagt an welcher Stelle und mit welcher Skalierung die in der Blockdefinition festgelegte Zeichnung dargestellt werden soll. Den Einfügepunkt ...
|
| 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 : Eigene Sysvar
mapcar am 29.09.2005 um 23:45 Uhr (0)
Man sollte sich einfach vor der Vorstellung hüten, dass es in AutoCAd wirklich Sysvars gibt im Sinne einer einheitliche internen Tabelle oder so. Die Sysvars zerfallen ja sowieso schon mal in diejenigen, die in der Zeichnung gespeichert werden, diejenigen, die in die Reg kommen, und dann noch die, die gar nicht gespeichert werden (können).Bei der Programmierung über ARX oder .NET tritt das deutlich zutage: Da muss man oft sehr verschiedene Wege gehen, um an den Inhalt einer sogenannten Sysvar zu kommen. Di ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Blockanzahl auslesen
Dressler am 11.03.2004 um 12:32 Uhr (0)
Hier mal mein Versuch der so leider nocht nicht funktioniert: Modul1: Public BlockAnzahl As LongAnzahl der Blöcke in der Zeichnung mit der Bezeichnung BlockNamePublic Function BlockCount(BlockName As String) As Long Dim SS As AcadSelectionSet Dim FltTypes(3) As Integer Dim FltData(3) As Variant Set SS = CreateSelectionSet("BlockAttUnvisibleAuswahl") FltTypes(0) = -4: FltData(0) = "AND" FltTypes(1) = 0: FltData(1) = "INSERT" FltTypes(2) = 2: FltData(2) = BlockName FltTypes(3) = -4: F ...
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Gruppemcode Auswahlätze
Karsten HST am 28.04.2005 um 17:00 Uhr (0)
Die Zusammenstellung des Filters müsste in etwa folgendermaßen ausschauen: Dim GC(4) As Integer Dim GC_Value(4) As Variant GC(0) = 0 Gruppencode für Elementname GC_Value(0) = insert GC(1) = -4 Beginn der Gruppe GC_Value(1) = OR Oder - Verknüpfung GC(2) = 2 Name des benannten Blockelements GC_Value(2) = Blocktyp1 Entweder Blocktyp1 GC(3) = 2 Name des benannten Blockelements GC_Value(3) = Blocktyp2 Oder Blocktyp2 GC(4) = -4 Ende der Gruppe GC_Value(4) = OR Zitat: Original erstellt v ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : InsertionPoint von BlockRef
G-Fahrer am 05.06.2007 um 11:00 Uhr (0)
Hallo Leute,ich kämpfe mich jetzt seit über einer Woche durch die Objektstruktur von AutoCAD und war dabei, teilweise auch durch Lesen von Beiträgen hier im Forum, recht erfolgreich.Allerdings bin ich nun auf ein für mich nicht ganz nachvollziehbares Problem gestoßen. Ich bekomme beim Auslesen des InsertionPoints einer BlockRef (Ausgabe über MsgBox) einen anderen Wert als er in den Eigenschaften meiner Zeichnung angezeigt wird. Ich habe testweise versucht mit diesem Punkt eine neue BlockRef des gleichen Bl ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Spline teilen, Punktekoordinaten auslesen
insidERR am 11.03.2009 um 15:06 Uhr (0)
Von LISP hab ich keine Ahnung und auch nicht die Zeit mich damit zu beschäftigen.Die Linie teilen kann man manuel auslösen, aber ich will es automatisieren.Hintergrund der ganzen Sache:wir haben einige Laufradmeridiankonturen, welche mit Splines gezeichnet sind. Die wollen wir in ein anderes Programm exportieren. Dazu muss man auf die Splines "Punkte" legen und von den die Koordinaten(X,Y) in eine Textdatei exportieren. Diese wird dann von dem anderen Programm eingelesen und weiter verarbeitet.Von Hand dau ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Layerfilter löschen
otm am 11.09.2020 um 23:02 Uhr (5)
Hallo Klaus,auch wenn der Beitrag schon sehr alt ist, hätte ich dazu noch eine Frage.Wenn ich einen Eigenschaftsfilter (AB) habe, der wiederum einen Unter-Eigenschaftsfilter (A) hat, dann ist die Anzahl der ermittelten Filter 2. Es wird aber nur die unterste Ebene (A) gelöscht und ist im Layermanager auch nicht mehr zu sehen.Das Programm schreibt aber der Obere Filter (AB) sei gelöscht worden.Der Filter (A) wird nicht erwähnt.Lasse ich das Programm nochmals laufen ermittelt der Code 0 Layerfilter und entfe ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Ruckeln trotz Blöcken?
SimonR am 28.01.2010 um 15:08 Uhr (0)
Hallo zusammen, Ich habe wieder einmal ein Problem mit meiner Schraffur:Ich habe bisher:Eine Polylinie im dreidimensionalem Raum gezeichnet,das BKS an dieser Polylinie ausgerichtet,eine Schraffur innerhalb der Polylinie erstellt (diese Schraffur fällt dann aus unbekannten Gründen auf eine zur Polylinie parallele Ebene zurück )die Schraffur in die Polylinie verschoben. das BKS zurückgesetztund dann einen Block mit mehreren (ca 200) dieser Schraffierten Flächen erstellt(soweit funktioniert alles )Dann da ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Durchsuchen von Selectionset
alfred neswadba am 14.05.2009 um 13:15 Uhr (0)
Hi,jetzt verstehe ich langsam, folgende Verbesserungen sind für Deinen Code möglich:a) das SelectionSet mit Filter bauen (z.B. dass nur BlockReferenzen gefiltert werden, wenn die Blocknamen auch noch alle gleich sind, dann auch noch danach), dann muss nicht die ganze Zeichnung (alle Geometrieelemente) durchgescannt werdenb) wenn Du im IF die richtige ObjectID gefunden hast, dann mit Exit For die Schleife verlassen, denn Du hast die gesuchte Antwort schon, da braucht er nicht weitersuchen.c) und wenns noch ...
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : setXData
startrek am 27.07.2005 um 22:19 Uhr (0)
Hi Axel, okay, ist [teilweise] angekommen, Danke:-) Experimente hatte ich auch schon gestartet um in etwa eine Richtung des Vertretbaren rauszubekommen, was die XXX er an geht. Hab ich blöderweise in etwa so getestet, Anwendungsname [Integer = 2 Byte] + String[2 Byte pro Zeichen] 16.000 / 2 / 2 = 4000 Ints a 2Byte + 4000 strings a 1 Zeichen, hatter auch geschluckt. Naja okay, musst nix dazu sagen ;;-)) - ziemlicher Unfug - ich weiss- , wollt nur mal ein Gefühl dafür bekommen eben. Das mit dem eineindeuti ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Bock exportieren
RoSiNiNo am 18.11.2003 um 08:59 Uhr (0)
Hier eine kleine Variant Code: Schreibt alle Blöcke mit Vorschau aus der Zeichnung Public Sub BlöckeAusZeichnung5() Dim Blöcke As AcadBlocks Dim BlObj As AcadBlock Dim ss As AcadSelectionSet Dim objEnt As AcadEntity Dim objArray() As AcadEntity Dim intcnt As Integer Dim Name As String Dim Path As String Dim ActiveDoc As AcadDocument Dim BlockDoc As AcadDocument Dim objSpace As AcadBlock Set ActiveDoc = Application.ActiveDocument ...
|
| In das Form Autocad VBA wechseln |