| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Blöcke auf vorhanden Blöcke setzten (1082 mal gelesen)
|
GWH Mitglied
Beiträge: 549 Registriert: 08.06.2001 AutoCAD ab R14, Civil 3D 20xx BricsCAD ab V20 Win 10 Pro 64bit, ...
|
erstellt am: 18. Feb. 2005 16:06 <-- editieren / zitieren --> Unities abgeben:
Hallo CADler. Folgende Aufgabenstellungen: A)In einer Zeichnung sind Blöcke vorhanden. An deren Position (Basispunkt) sollen neue Blöcke dazugesetz werden - nicht tauschen. Die neuen Blöcke auf eigenem Layer, Bereich wählbar. Ideal wäre auch eine Auflistung. B) Blöcke auf die Schnittpunkte einer Polyline setzen. Kennt dazu jemand entsprechende Tools? Suche im Forum ergebnslos. ------------------ Ciao Günter -------------------------------------------------------------------------------- "Es gibt keine Probleme, sondern Aufgaben zu lösen." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hoppenstedt Mitglied
Beiträge: 86 Registriert: 30.08.2003 Autocad 2008, Windows XP SP2, P4 2,8 Ghz, 2GB RAM, Quadro4 980XGL, Gips 5.1, Office 2007, Adobe Standard 8
|
erstellt am: 18. Feb. 2005 16:36 <-- editieren / zitieren --> Unities abgeben: Nur für GWH
Hallo Günter Zu A) Eine Möglichkeit wäre mit Express tools "Copy to Layer" die Blöcke auf anderen Layer kopieren. Anschliessend die Blöcke auf diesem Layer in leere Zeichnung kopieren (mit Basispunkt), dort mit ddrename Blocknamen ändern, dann Express tools "replace Block with another Block" und zum Schluss das Ganze wieder in die Originaldatei einfügen. Habe leider keine Ahnung von Lisp. Das würde sicher einfacher funktionieren. Aber so wie ich das Forum kenne (und liebe) kommt da sicher nochwas :-) Schönes WE Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
flaschenpost Mitglied Architekt
Beiträge: 497 Registriert: 29.09.2004 ADT 2004 / Windows XP
|
erstellt am: 18. Feb. 2005 18:06 <-- editieren / zitieren --> Unities abgeben: Nur für GWH
Hallo Günter, zu Problem A) habe ich eine vorhanden Routine etwas abgeändert. Wußte aber nicht, ob Du die Auswahl am Bildschirm wolltest oder per Eingabe des Blocknamens. Auflistung gibt es, wenn Du den Blocknamen des Ergänzungsblockes nicht weißt (Enter). Probier mal. (edit) Wenn ich schon mal dabei bin zu Problem B): (defun c:BAPL (/ blockw n elem linwahl punkte) (prompt "\nBlock wählen") (setq blockw (car (entsel))) (prompt "\nPlinien wählen !") (setq linwahl (ssget '((0 . "*POLYLINE")) )) (setq n -1) (repeat (sslength linwahl) (setq elem (entget (ssname linwahl (setq n (1+ n)))) ) (while (setq punkte (member (assoc 10 elem) elem)) (command "_.copy" blockw "" (cdr (assoc 10 (entget blockw)))(cdar punkte)) (setq elem (cdr punkte)) );while );repeat (princ) ) Gruß Carsten [Diese Nachricht wurde von flaschenpost am 18. Feb. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GWH Mitglied
Beiträge: 549 Registriert: 08.06.2001
|
erstellt am: 18. Feb. 2005 20:22 <-- editieren / zitieren --> Unities abgeben:
Hallo Carsten. Funktionieren beide perfekt. Wäre es bei A möglich, eine Bereichsauswahl zu definieren, sodass nicht alle Blöcke in der Zeichnung belegt werden und diese auf dem aktuellen Layer sind? 10 points vorab. ------------------ Ciao Günter -------------------------------------------------------------------------------- "Es gibt keine Probleme, sondern Aufgaben zu lösen." [Diese Nachricht wurde von GWH am 18. Feb. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
flaschenpost Mitglied Architekt
Beiträge: 497 Registriert: 29.09.2004 ADT 2004 / Windows XP
|
erstellt am: 18. Feb. 2005 22:46 <-- editieren / zitieren --> Unities abgeben: Nur für GWH
|
GWH Mitglied
Beiträge: 549 Registriert: 08.06.2001
|
erstellt am: 19. Feb. 2005 10:21 <-- editieren / zitieren --> Unities abgeben:
|
GWH Mitglied
Beiträge: 549 Registriert: 08.06.2001 AutoCAD ab R14, Civil 3D 20xx BricsCAD ab V20 Win 10 Pro 64bit, ...
|
erstellt am: 21. Feb. 2005 20:59 <-- editieren / zitieren --> Unities abgeben:
Hallo Carsten. Nun ist folgendes Problem aufgetreten: Wenn es sich bei den existierenden Blöcken, um Blöcke mit Attributen handelt, funktioniert es nicht - "Ungültiges komplexes Objekt". Wenn aber der zu einfügende Block Attribute enthält, und der bestehende keine, dann funktioniert es. ------------------ Ciao Günter -------------------------------------------------------------------------------- "Es gibt keine Probleme, sondern Aufgaben zu lösen." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
flaschenpost Mitglied Architekt
Beiträge: 497 Registriert: 29.09.2004 ADT 2004 / Windows XP
|
erstellt am: 21. Feb. 2005 22:23 <-- editieren / zitieren --> Unities abgeben: Nur für GWH
|