|
AutoCAD ARX Object : Zugriff auf Layer magaged
Theo37 am 03.08.2011 um 15:37 Uhr (0)
Hallo,jetzt hab ich nochmal ein ähnliches Problem. Komm ich auch irgendwie auf die Dictionaries und die XRecords einer nicht geöffneten Zeichnung? Enweder müßte ich die Werte auslesen, Oder ich würde das Dictionarie kpl. in die akt. Zeichnung kopieren. Was ist leichter Machbar?Danke, Theo
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Blockreferenz löschen
Silvan01 am 09.07.2009 um 13:48 Uhr (0)
Hallo Alfred,mit du hattest recht meinte ich folgendes:D.h. bekommst mal den Code, wie ich ihn für mich konvertiert habe, und als zweites noch eine Idee: kann es sein, dass in der Zeichnung, die du einfügst, bereits der gesamte Modellbereich zu einem Block zusammengefasst ist? Also z.B. Du hast eine Zeichnung TEST (so heisst ja alles in der EDV), in dieser ist im Modellbereich ein Block Tisch eingesetzt.Jetzt kommt Dein Programm dran, fügt in der aktuellen Zeichnung obige ein, damit hast Du als erstes mal ...
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : ShellExecute
alfred neswadba am 14.07.2010 um 14:52 Uhr (0)
Hi,Ich verstehe nicht:mit der Zeile thisway = ThisDrawing.Path wird der Pfad Deiner aktuell geöffneten Zeichnung an die Variable übergeben, und mit ShellExecute(0, "Open", thisway) öffnest Du die Zeichnung, die aber schon geöffnet ist.Was also ist die Bedeutung dessen?- alfred -------------------www.hollaus.at
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : Plotten von Layouts
alfred neswadba am 02.02.2011 um 10:08 Uhr (0)
Hi,wenn Du Objekte aus der Zeichnung über TransAction mit ObjectID öffnet, dann brauchst/solltest Du .Dispose auf diese unterlassen.Eine Grundregel könnte sein (nur kurz darüber gedacht, könnte Ausnahmen geben): Was Du mit ... = New ... erstellst und nicht in die Zeichnung hineinschreibst == .Dipose JA- alfred -------------------www.hollaus.at
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : VB.Net Block einfügen
alfred neswadba am 23.04.2009 um 09:10 Uhr (0)
Hi Michael,Code kann ich jetzt (aus Zeitgründen) nicht machen, die Struktur von DWGs kannst Du aus meiner Sicht am besten mit dem Tool DBView machen oder ArxDbg (ist glaub ich auf dem ObjectArx-Development-Kit).Zur Theorie: Das Zeichnung durchlaufen ist so zu machen, dass Du zuerst eine Verbindung zum BlockTable holst, dann mit For...Each die ObjectIDs durchläufst, die eine Liste der BlockTableRecord-IDs enthält, und dann jeden BlockTableRecord mit For...Each durchlaufen, das sind dann die Entities je Bloc ...
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ObjectARX und .NET : Programmieren Python
Sushistar am 11.06.2019 um 09:38 Uhr (1)
Hallo Leute,ich habe aktuell neu mit der Programmierung in Python angefangen. Ich würde gerne ein Script schreiben,welches mir erlaubt Blöcke aus einer Zeichnung über das Design Center in einer anderen Zeichnung zu aktualisieren. Wie komme ich an die verschiedenen Methoden ran bzw. Wie kann ich diese mit Python ansprechen. Hat da schon wer Erfahrung mit gemacht?
|
| In das Form AutoCAD ObjectARX und .NET wechseln |
|
AutoCAD ObjectARX und .NET : Layout Position verschieben
veydan am 08.02.2012 um 06:48 Uhr (0)
Ah tut mir leid, ich meinte das Property TabOrder.Bei mir zeigt es jedenfalls keine Wirkung...Hintergrund: Ich lösche gewisse Layouts aus einer Zeichnung.Lösche ich auch das Layout mit index 1, und mache ein Commit, hat die Zeichnung dann Fehler beim öffnen und muss recovered werden.Dann erhält sie ein Leeres Layout an der Stelle 1.Mache ich allerdings kein Commit, sind andere Layouts weg die ich lösche, Layout 1 bleibt aber in der Zeichnung.Somit dachte ich mir ich verschiebe einfach ein anderes an Stelle ...
|
| In das Form AutoCAD ObjectARX und .NET wechseln |
|
AutoCAD ARX Object : Blockreferenz löschen
Silvan01 am 09.07.2009 um 11:47 Uhr (0)
Hallo Alfred,ja du hast recht kann ich das verhindern?Bzw. wäre es Möglich statt die Zeichnung als Block einzufügen den Block aus der Zeichnung einzufügen?Ich habe deine Funktion eingefügt aber bei der Zeile:BTable = CType(Taction.GetObject(Doc.Database.BlockTableId, OpenMode.ForRead, True, True), BlockTable)springt er zu catch. Es wird also kein Block platziert.GrüßeSilvan
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : For each-Schleife
alfred neswadba am 13.01.2011 um 08:42 Uhr (0)
Hi, Das ist viel schneller, dursucht aber die ganze Zeichnung.Um nicht die ganze Zeichnung zu durchsuchen, kannst Du auch bestimmen/filtern, in welchem Bereich ein Element liegt, das ganze mit dem DXF-Code 410 (z.B. (410 . "Layout1") ).Ergänze also Deinen Filter:Code:FilterType(1) = 410FilterData(1) = "Layout1" hier natürlich Deinen LayoutnamenHTH, - alfred -------------------www.hollaus.at
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ObjectARX und .NET : Layout Position verschieben
Brischke am 08.02.2012 um 09:32 Uhr (0)
... andere Idee:Du machst eine neue Zeichnung auf, und kopierts dir aus der Zeichnung (aus der du bei deinem Lösungsansatz gerade die WBlöcke machst) den Modellbereich und das (gewünschte) Layout rein und speicherst diese Zeichung dann ab. Das ganze natürlich in einer Schleife.Grüße!Holger------------------Holger BrischkeCAD on demand GmbHIndividuelle Lösungen von Heute auf Morgen. defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!
|
| In das Form AutoCAD ObjectARX und .NET wechseln |
|
AutoCAD ARX Object : Plotten von Layouts
alfred neswadba am 02.02.2011 um 09:47 Uhr (0)
Hi, und lieber im try - finally Block disposen?...gar nicht bt.Dispose machen! Ich sagte schon, Du willst die BlockTable Deiner Zeichnung doch nicht vernichten (sonst wäre Deine Zeichnung kaputt!)..Dispose wird nur auf Elemente angewendet, die endgültig vernichtet werden sollen. Deine BlockTable entlässt Du zwar aus Deinem Zugriff, Du vernichtest sie aber nicht.Erzeugst Du eine temporäre Linie um z.B. Schnittpunktberechnungen zu machen, Du fügst diese aber nicht dem Modellbereich hinzu, denn Du brauchst di ...
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : CrossThreadMessagingException? WIe vermeiden?
alfred neswadba am 10.06.2009 um 12:03 Uhr (0)
Hi,und welches Programm (das offensichtlich asynchron laufen soll) weiss, welche AutoCAD-Zeichnung Du offen hast? Oder wo bekommt es die ID her (passend zu der geöffneten DWG)? Was passiert, wenn der User die Zeichnung schliesst? Was passiert, wenn der User das Element mit der ID inzwischen gelöscht hat?Und schon aus diesen Fragen ergibt sich: wieso läuft es asynchron? Ist doch nur eine höchstgefährliche Angelegenheit (in Bezug auf Stabilität und Fehleranfälligkeit)!- alfred -------------------www.hollaus. ...
|
| In das Form AutoCAD ARX Object wechseln |
|
AutoCAD ARX Object : MdiActiveDocument neu zuweisen
veydan am 10.03.2009 um 15:02 Uhr (0)
Hallo!Wie ist es Möglich das aktuell aktive Dokument neu zuzuweisen.Sprich ich öffne eine Zeichnung mittels vb.net aktiv ist aber immer noch Zeichnung 1.hier mein Code:Code: Dim myDB As DatabaseServices.Database Dim myDWG As ApplicationServices.Document Dim myEd As EditorInput.Editor myDWG = ApplicationServices.Application.DocumentManager.MdiActiveDocument Dim layman As DatabaseServices.LayoutManager layman = DatabaseServices.LayoutManager.Current Application.DocumentManager.MdiActiveDoc ...
|
| In das Form AutoCAD ARX Object wechseln |