| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Intelligenter Workflow von Köln bis Delhi mit SAP PLM - KHD Humboldt Wedag (CIDEON, SAP, PLM, ERP, Autodesk Inventor, AutoCAD), ein Anwenderbericht
|
Autor
|
Thema: mehrere Blöcke automatisch umbenennen (3750 mal gelesen)
|
CADSURFER Mitglied Techn. Zeichner
Beiträge: 3 Registriert: 20.10.2004 AutoCAD 2004
|
erstellt am: 20. Okt. 2004 13:20 <-- editieren / zitieren --> Unities abgeben:
hallo Lispler, ich suche ein Lisproutine mit der ich mehrere Blöcke auswählen kann, diese müssen dann alle automatisch einen neuen Namen bekommen. Der Name spielt keine Rolle es sollte ein Zufallsname zb. aus Datum und Uhrzeit sein. Er muß nur einmalig sein. Ich denke so etwas gibt es schon, nur habe ich es nach Tagelanger Suche noch nicht entdeckt. Grüße von cadsurfer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd P Ehrenmitglied V.I.P. h.c. cook-general
Beiträge: 3424 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 20. Okt. 2004 13:33 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
CADSURFER Mitglied Techn. Zeichner
Beiträge: 3 Registriert: 20.10.2004 AutoCAD 2004
|
erstellt am: 21. Okt. 2004 08:09 <-- editieren / zitieren --> Unities abgeben:
hallo Bernd, der Tip war nicht schlecht hilft mir aber nicht. Ich habe in der Zeichnung 100 und mehr Blöcke viele davon haben den gleichen Namen (dies sind Zufallsnamen aus Datum und Uhrzeit) Jetzt möchte ich über ein Fenster alle auf einmal auswählen und die Blocknamen auf einen Rutsch ändern. Wobei mir der Blockname egal ist, er darf jedoch nur einmal vorkommen. Wenn ich dies nicht mache und ich ändere bei einem Block die Farbe, ändert sich diese bei allen gleichnamigen mit. Vielleicht habe ich mich jetzt deutlicher ausgedrückt. Gruß Jürgen Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd P Ehrenmitglied V.I.P. h.c. cook-general
Beiträge: 3424 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 21. Okt. 2004 08:23 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
Servus Achso *lichtaufgeh* Du hast 100 Blöcke mit gleichen Namen in der Zeichnung, es sollen 50 davon anders heissen (wegen umdefinieren der anderen 50 Blöcke). Nur mit einer Zeichnung wirst du wahrscheinlich eh nicht auskommen da man nicht 50 von 100 (oder 2 von 3 ist egal) gleichnamigen Blöcken in einer Zeichnung umbennen kann. Hier gilt das Motto "Einer für alle" Wenn du es nicht zu oft brauchst würde ich die ausgewählten Blöcke mit strg+X (original koor..) in eine Zeichnung kopieren, dort umbennen (Format>Rename (Platzhalter verenden "*") und wieder einfügen. edit zum umbennen in der neuen Zeichnug kann wahrscheinlich was basteln, leider kann ich zu wenig Lisp.
------------------ schöne Grüsse aus der Steiermark Bernd P. Warum Einfach es geht auch kompliziert Bitte Supportangaben eintragen, warum siehst du hier [Diese Nachricht wurde von Bernd P am 21. Okt. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AsSchu Ehrenmitglied Konstrukteur
Beiträge: 1632 Registriert: 27.06.2003 ACAD 2012
|
erstellt am: 21. Okt. 2004 08:28 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 21. Okt. 2004 08:38 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
Zitat: Original erstellt von CADSURFER: hallo Bernd, Ich habe in der Zeichnung 100 und mehr Blöcke viele davon haben den gleichen Namen (dies sind Zufallsnamen aus Datum und Uhrzeit) ...Wobei mir der Blockname egal ist, er darf jedoch nur einmal vorkommen.... Gruß Jürgen
Jeder Block kommt in der Zeichnung nur einmal vor! Er kann jedoch mehrmals referenziert sein. Das nennt man dann Blockreferenzen bzw. Inserts! ... und du willst nun , das jedes Insert einen eigenen Block referenziert! Das widerspricht eigentlich der Blocklogik und dafür gibts in Acad Gruppen. Das Tool , das du willst, muß also die Blöcke nicht umbenennen , sondern mit neuen Namen duplizieren und dann das Insert entsprechend setzen. Na mal sehen ..
------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 21. Okt. 2004 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
probier mal dieses kleine Lisp aus (defun c:NeuBlock (/ ss1 i1 ename edate NameAlt NameNeu) (cond ((setq ss1 (ssget (list (cons 0 "INSERT")))) (setq i1 0)
(repeat (sslength ss1) (setq ename (ssname ss1 i1) edate (entget ename) NameAlt (cdr (assoc 2 edate)) NameNeu (HoleNeuenBlockName) i1 (1+ i1) ) (if (KopiereBlock NameAlt NameNeu) (entmod (subst (cons 2 NameNeu) (assoc 2 edate) edate)) ) ) ) ) ) ; ; Erstellen eines neuen Blocknames aufgrund Datum Uhrzeit ; (defun HoleNeuenBlockName (/ a1) (while (tblsearch "BLOCK" (setq a1 (strcat "NeuerBlockName-" (replace (rtos (getvar "CDATE") 2 6) "." ""))))) a1 ) ; ; ersetzten eines strings in einem string ; (defun Replace (String SearchString ReplaceString / ) (while (/= String (vl-string-subst ReplaceString SearchString String)) (setq String (vl-string-subst ReplaceString SearchString String)) ) String ) ; ; Kopieren einer Blockdefinition ; (defun KopiereBlock (alt neu / block ename edate ) (setq block (tblsearch "BLOCK" alt)) (setq ename (cdr (assoc -2 block))) (entmake) (entmake (subst (cons 2 neu) (assoc 2 block) block)) (while ename (setq edate (entget ename)) (entmake edate) (setq ename (entnext ename)) ) (entmake (list (cons 0 "ENDBLK"))) ) ------------------ WWW.FFZELL.AT.TC Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bernd P Ehrenmitglied V.I.P. h.c. cook-general
Beiträge: 3424 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 21. Okt. 2004 09:29 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
fuchsi Mitglied Programmierer c#.net Datawarehouse
Beiträge: 1201 Registriert: 14.10.2003 AutoCad Version 2012 deu/enu <P>Windows 7 64bit
|
erstellt am: 21. Okt. 2004 09:37 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
Bernd P Ehrenmitglied V.I.P. h.c. cook-general
Beiträge: 3424 Registriert: 07.06.2001 W10-64bit, AMD Ryzen 7 3700X,32GB RAM, Sapphire Pulse Radeon RX 570 8G G5, Canon TX-3000 MFP, Maus Cherry MW4500, Sub:Infrastructure Design Suite, Office 365
|
erstellt am: 21. Okt. 2004 09:46 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
AZSTANDEX Mitglied
Beiträge: 23 Registriert: 17.06.2004 2 * Autocad 2010 3 * Autocad Architecture 2010 1 * Max Design 2011
|
erstellt am: 21. Okt. 2004 10:56 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
CADSURFER Mitglied Techn. Zeichner
Beiträge: 3 Registriert: 20.10.2004 AutoCAD 2004
|
erstellt am: 28. Okt. 2004 07:39 <-- editieren / zitieren --> Unities abgeben:
hallo Fuchsi, ein bischen spät aber besser wie nie. ICH KANN MICH AN DIESER STELLE NUR VERNEIGEN, super Lisp daß ist genau das was ich gesucht habe, ob ich auch mal da hin komme, glaub nicht, respekt. kannst du mir ein Lisp-buch empfehlen? spitze weiter so. grazie grazie grazie chiao chiao Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 11. Jul. 2006 09:34 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
Hallo Fuchsi - neee, bist echt 'n Fuchs! 1000 Dank, dein tool hilft mir weiter! Ein Kollege verändert es dahingehend, daß ich den neuen Blocknamen selber bestimmen kann (ich kann leider kein lisp) Ich werde das tool dann posten! LG Petra Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad4fun Ehrenmitglied
Beiträge: 1846 Registriert: 06.12.2004 privat ACAD 2013 und 2017 deutsch, Windows 7 64Bit HP Elite 7500 Series MT,Intel Cote i5-3470 CPU 3,20Ghz,16GB RAM ATI FirePro V (FireGL V) Graphics Adapter Treiberversion: 15.201.1151.1008
|
erstellt am: 11. Jul. 2006 11:11 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
Zitat: Original erstellt von CADSURFER:
Wenn ich dies nicht mache und ich ändere bei einem Block die Farbe, ändert sich diese bei allen gleichnamigen mit. Gruß Jürgen
Haben die Blöcke nur eine farbe? Dann mach doch verschiedene layer für die verschiedenen farben(vorausgesetzt die Blockobjekte sind ByBlock gesetzt) in der Form BLOCKLAYER_rot,BLOCKLAYER_grün usw. Vorteil1:die Dateigröße bleibt klein Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gigerota Mitglied
Beiträge: 561 Registriert: 17.01.2006 Windows 10 Pro AutoCAD LT 2019 Solidworks 2018
|
erstellt am: 16. Aug. 2006 12:10 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 16. Aug. 2006 12:17 <-- editieren / zitieren --> Unities abgeben: Nur für CADSURFER
Zitat: Original erstellt von Gigerota: @ Fuchsi: Zu früh gefreut....ich arbeite mit Mechanical und das tool macht arge Probleme. Z.B. funktioniert es nicht bei Blöcken, wo Power-Maße drin sind. :-(( Petra
P.S. "Power-Maße" gibts nicht. Das sind ganz gewöhnliche AutoCAD-Bemaßungen , bloß das für die Erstellung Mechanicalbefehle verwendet werden, die auch gleich den richtigen Layer ect. setzen. ------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |