|
Autocad VBA : Layer ersetzen
Brischke am 22.12.2005 um 10:04 Uhr (0)
Hallo Hman,schau doch mal in die Express Tools, da gibt es viele Layertools auch das Layermerge. Das vermischt die Layer miteinander. Das brauchst du aber nur, wenn der neue Layer schon in der Zeichnung verendet wird. Ansosnten ist das Umbenennen die einfachste Lösung.Grüße Holger------------------Holger BrischkeCAD on demand GmbHIndividuelle Lösungen von Heute auf Morgen.
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : und-color: #FFFF99'>Suchen
BerndE am 02.10.2004 um 01:19 Uhr (0)
Hi Forum, ich möchte mittels VBA den Befehl und-color: #FFFF99'>suchen bzw _find aufrufen. Mittels Sendcommand gelingt mir das auch. Gibts aber nen direkten VBA-Befehl? Falls nein, wie kann ich dem Code me.SendCommand _find & vbCr gleich mitgeben, daß er nach XYZ und-color: #FFFF99'>suchen und darauf zoomen soll? Bernd ------------------ Bernd
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Text in Blockreferenz ersetzen
dk229 am 09.01.2008 um 12:45 Uhr (0)
Hallo Carsten,vielen Dank für die Antwort. Ich hatte zwischenzeitlich auch noch nen Geistesblitz.Wenn ich mir erst BlockRef.Name raussuche von der Blockreferenz die verändert werden soll und dannaus ThisDrawing.Blocks denjenigen Block raussuche mit dem gleichen Namen, habe ich den richtigen Block zur Bearbeitung. Und dann For Each Entity In Block ... usw.Es funktioniert als mittlerweile.Danke und TschüßDaniel
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Ersetzen von Blöcken mit Vba
basti19 am 18.06.2004 um 13:32 Uhr (0)
Hi Roland, ich hab so ein Programm fertig, ich hänge es an diesen Beitrag an. Wahrscheinlich mußt du ein bißchen was anpassen... Ich habe diese Funktion eigentlich für einen anderen Anwendungszweck geschrieben. Wenn du die Prozedur StartConvertion startest wirst du nach einem Pfad gefragt, es werden alle dort gefundenen DWGs geöffnet, die enthaltenen Blöcke aktualisiert (inkl. der Attributsdefinition), gespeichert und wieder geschlossen. Sollte dir das zu weit gehen, nimm dir einfach das, was du brauchst ( ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Text in Blockreferenz ersetzen
Carsten1210 am 09.01.2008 um 12:22 Uhr (0)
Hi Daniel,Probiers mal so:Code:Public Sub aaa()Dim Block As AcadBlockDim Object As AcadObjectDim Ausgabe As StringDim Pickedpoint As VariantOn Local Error Resume NextAusgabe = "Objekt wählen:"ThisDrawing.Utility.GetEntity Object, Pickedpoint, AusgabeSet Block = ThisDrawing.Blocks(Object.Name)Ab hier enthält "Block" die einzelnen Elemente des BlocksEnd SubGruß, Carsten
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Blockname automatisch generieren und Block einfügen/ersetzen
Arol am 14.02.2009 um 09:22 Uhr (0)
On Error Resume Next habe ich rausgenommen.Wenn ich das Programm in einer leeren Zeichnung, die noch keine Blöcke hat, starte, Zeigt er ein Fehler bei oder besser gesagt markiert er mir:Set Block = ThisDrawing.Blocks.Item(blockname)
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Ersetzen von Blöcken in VBA
mapcar am 17.06.2004 um 20:51 Uhr (0)
Roland, dass die Frage hier gleich dreimal hintereinander steht, erhöht die Wahrscheinlichkeit nicht, dass du eine Antwort bekommst. Könntest du denn das Problem mal etwas näher beschreiben, d.h. mal sagen, wo du nicht weiter kommst? Wäre auch hilfreich, wenn du präzise zwischen Blöcken und Blockdefinitionen unterscheiden würdest, denn wenn es um Attribut-Updates geht, sind natürlich die Definitionen betroffen. Gruß, Axel ------------------ Meine AutoLisp-Seiten Meine private Homepage Mein Angri ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Blockname automatisch generieren und Block einfügen/ersetzen
Arol am 13.02.2009 um 20:52 Uhr (0)
Ja KlaK,das ist bei mir im Quelltext dabei, ich habe versucht nur die relevanten Sachen einzufügen und habe diese eine Zeile vergessen.ich muss noch vielleicht dazu sagen, dass das Programm ohne: Set Block = ThisDrawing.Blocks.Item(blockname)If (Block Is Nothing) ThenEnd Ifproblemlos läuft.
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Ersetzen von Blöcken in VBA
rstu am 18.06.2004 um 10:56 Uhr (0)
Hallo, dass meine Frage hier gleich drei mal erscheint ist natürlich ärgerlich ( nach dem Abschicken des Beitrages erhiehlt ich eine Fehlermeldung, also hab ich es nocheinmal .... Wie krieg ich den überflüssigen Kram wieder weg?) zu meiner Frage: mit der Anweisung ThisDrawing.ModelSpace.InsertBlock(currInsertionPoint, sBlock, dXScaleFactor, ..... kann ich einen neuen Block einfügen, dabei steht in sBlock entweder der Name eines sich in der Zeichnung befindlichen Blockes oder der Pfad/Name.dwg einer dwg- ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Ersetzen von Blöcken in VBA
mapcar am 18.06.2004 um 13:13 Uhr (0)
Jetzt kommen wir der Sache näher - mit Sache meine ich jetzt das Problem, nicht die Lösung. Also nicht das simple Einfügen, sondern ein Block-Import aus einer anderen Zeichnung. Da fällt mir spontan dieser Weg ein: Die Quellzeichnung zusätzlich zur Zielzeichnung aufmachen und die Blockdefinition abkopieren - anschließend die Quellzeichnung wieder schließen. Du kannst aber auch den quick and dirty -Weg gehen: Quelle insgesamt als Block in die Zielzeichnung einfügen und das Insert wieder löschen. Dann hast ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Blockname automatisch generieren und Block einfügen/ersetzen
Arol am 14.02.2009 um 14:01 Uhr (0)
Ich habe nochmal den 1. Vorschlag von Alfred angeguckt und herumexperementiert. Nun klappt es.So sieht es jetzt aus:blockname = "Langloch " + Replace(laenge, ",", ".") + "x" + Replace(breite, ",", ".") + "_r" + Replace(radius, ",", ".") Blockname automatisch erstellenSet Block = ThisDrawing.Blocks.Item(blockname)If (Block Is Nothing) ThenBpkt(0) = laenge / 2: Bpkt(1) = breite / 2: Bpkt(2) = 0Set Block = ThisDrawing.Blocks.Add(Bpkt, blockname)...Quellcode fürs Langloch...End ifMe.Hidetext1 = vbCrLf & "Einfü ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Blockname automatisch generieren und Block einfügen/ersetzen
KlaK am 14.02.2009 um 10:20 Uhr (0)
Und das ist auch richtig so, denn wenn Du einen Block zuweisen möchtest, den es nicht gibt, ist das eben ein Fehler.Deshalb mache ich es entweder so wie Du am Anfang mit:on error resume nextSet Block = ThisDrawing.Blocks.Add(Bpkt, blockname)If Err 0 then Set Block = ThisDrawing.Blocks.Item(blockname)End Ifon error goto 0oder (die sauberste Lösung) ich verwende eine Unterroutine, die alle Blöcke in Blocks durchsucht. Wenn der Block nicht vorhanden ist wird er erzeugt. Die Funktion gibt dann den Block (vor ...
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Mittelpunkt und-color: #FFFF99'>suchen?
Moony am 05.11.2004 um 10:46 Uhr (0)
Sorry, es sind in der Zeichnung Layer mit Namen Chip1 bis Chip8 vorhanden, die alle Polylinienobjekte Rechtecke darstellen. Die wollte ich und-color: #FFFF99'>suchen (s. 1.Beitrag) und aktivieren. Im aktivierten Zustand, war jetzt meine Idee das ich die Eckpunkte ermitteln kann, um dann die Mitte zu bekommen ohne Getpoint usw. In der Zeichnung geht es über: Eigenschaft == das Rechteck wählen Scheitelpunkt 1 - 4 auswählen Scheitelpunkt X == 2.34 Scheitelpunkt Y == 9.87 usw. Aus diesen Werten könnte ich die Mitte des Rechtec ...
|
| In das Form Autocad VBA wechseln |