| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: ATT ändern (2071 mal gelesen)
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 07:34 <-- editieren / zitieren --> Unities abgeben:
Morgen Habe eine Frage Soll Blöcke tauschen mit Att. die so aufgebaut sind. TYP: Text von neuen Block übernehmen Stromkreis: von alten Block Verteilerbereich: von alten Block Bezeichnung:Text von neuen Block übernehmen Tuerschildnummer: von alten Block Laenge: Text von neuen Block übernehmen Leistung: Text von neuen Block übernehmen LV-Pos: von alten Block jetzt soll Block getauscht werden wo bei wie oben beschrieben nur gewisse ATT. von neuen Block übernommen werden sollen. Gibt es so was, oder kann mir einer Helfen das schnell zu lösen ein wenig Lisp kann ich. Sollte schnell sein brauche Pläne schon, wie immer halt son so 2000 Lampen die ich tauschen soll. Lampen sind immer verschieden aber der Aufbau ist immer Gleich. Danke Danke ------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 .
|
erstellt am: 14. Feb. 2007 08:03 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Zitat: Original erstellt von Dober Heinz: Gibt es so was, oder kann mir einer Helfen das schnell zu lösen ein wenig Lisp kann ich.
Da das Universum wohl unendlich ist , besteht wohl eine endliche Wahrscheinlichkeit größer 0, dass es so ein Tool gibt. .. bei mir auf der Platte aber nicht.( Jedenfalls nicht fertig ).. Machbar ist es ohne größere Probleme. ...aus der Ferne ( und aus deinen bisherigen Posts) schätzte ich aber deine Lispkenntnisse so ein, dass du das nicht alleine gebacken bekommtst, also die Hilfe nur mit einem fertigen Tool helfen würde... ..da das Teil auch nicht mit einem 5-Zeiler erschlagen ist, übersteigt es (meiner Meinung nach) das, was ich unter Forenhilfe verstehe... Nix für ungut, vielleicht erbarmt sich ja trotzdem jemand. ------------------ - 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 |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 08:07 <-- editieren / zitieren --> Unities abgeben:
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 .
|
erstellt am: 14. Feb. 2007 08:11 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
anfangen würde ich mit (defun .. im Ernst, ich würde mir zuerst Gedanken um Zugriff auf Blockrefenzen und die dranpappenden Attribute machen .. Code dafür solltest du eigentlich im Forum finden ( auch in "Rund um Autocad") ------------------ - 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 |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 08:15 <-- editieren / zitieren --> Unities abgeben:
ja So (defun c:Blocktausch () ja ich weiss das es im Internet so was gibt, habe ja schon ein paar Programme, att drehn und so, aber das mit mehreren ATT durch handeln kann ich nicht.
------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADwiesel Moderator CAD4FM UG
Beiträge: 1968 Registriert: 05.09.2000 AutoCAD, Bricscad Wir machen das Mögliche unmöglich
|
erstellt am: 14. Feb. 2007 08:42 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
:hmm ich kann mir noch nicht so wirklich vorstellen, wie das Funktionieren soll. Sind die neuen Blockreferenzen denn schon mit ausgefüllten Attributwerten in der Zeichnung vorhanden? Oder was bedeutet ' Text von neuen Block übernehmen' sind das die Attributdefinitionen, - die eine Blockdef hat 4 Attdefs und die neue soll dann 8 haben? vielleicht hilft dir ja auch der Befehl attredef weiter?
------------------ Gruß CADwiesel Besucht uns im CHAT
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 08:51 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 08:51 <-- editieren / zitieren --> Unities abgeben:
Hallo Wiesel Alle Blöcke aben 8 ATT. Nur die Stromkreisnummer und das Türschild sind schon von uns eingetragen worden. Jetzt will der Herr Arch. das wir andere Lampentypen einzeichnen sollen. Wobei wir aber unsere Stronkreisnummern uns Türschildnummern behalten wollen. sonst muss ich ja wieder die Stromkreisnummer und das Türschild neu eingtagen. Der Leuchtentyp heist dann statt ELE526 eben ELE20 und ist ein anders Symbol. ------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 14. Feb. 2007 08:54 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Zitat: Sollte schnell sein brauche Pläne schon
Rechne (wem auch immer) einfach vor wie lange es "per Hand" dauert, dann solltest du Ruhe genug haben etwas zu programmieren Aber was solls, sehe diese "Aufgabe" lieber mal so als würdest du kein Gramm Lisp verstehen ! (Meine Meinung)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 14. Feb. 2007 08:57 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 09:02 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
schnell, aber nicht ganz autocad-konform: Block für die neue Lampe definieren. Bei der alten Lampe einfach den Gruppencode 2 tauschen. Ergebnis: neue Lampe mit den alten Attributen. Ciao Georg PS. wurde schon öfters hier diskutiert ob man das machen darf, wenn's schnell gehen soll wär's mir aber egal :-)) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 09:12 <-- editieren / zitieren --> Unities abgeben:
@ gmk Neu definiern geht nicht, der neue Block heist ja anders. Und das symbol ist auch anders. oder Versteh ich dich nicht ganz, kann sein bin ja blöd wie man mir schon so oft schreibt heute :-) danke ------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 09:40 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 09:50 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 14. Feb. 2007 10:25 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Du solltest dich mal von dem Brett befreien oder mehr mit Blöcken beschäftigen Schonmal was von KONSTANTEN Attributen gehört ? Attributwert (innerhalb einer Datei) für eine Auswahl von Referenzen/Attributen auf den gleichen Wert setzen ? Umbennen oder ein Blocktauschprogramm - wie auch immer, du mußt wohl erst nochmal darüber nachdenken, dann fällt der Groschen bestimmt ähhhm, EuroCENT natürlich.. Da ich aber Angst habe das wir da gleich noch über die Basics reden bin ich erstmal raus, bin etwas im Stress nebenbei. Viel Glück ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 10:26 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 10:53 <-- editieren / zitieren --> Unities abgeben:
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 11:35 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 11:57 <-- editieren / zitieren --> Unities abgeben:
|
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 14. Feb. 2007 12:31 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 12:46 <-- editieren / zitieren --> Unities abgeben:
|
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 Alles
|
erstellt am: 14. Feb. 2007 12:48 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 12:50 <-- editieren / zitieren --> Unities abgeben:
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 .
|
erstellt am: 14. Feb. 2007 12:52 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
[Moderator]: Offtopics und persönliches bitte per PM!! Auch Cheffs können (mit)lesen. ------------------ - 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 |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 12:54 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied | |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13508 Registriert: 30.11.2003 .
|
erstellt am: 14. Feb. 2007 13:26 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
"Danke" Rabbit für deinen Themenbezogenen Beitrag ..aber in meinen Augen war das meiste sachlich und Heinz hat es auch so verstanden. (dafür gibts ja die Zwinkersmilies) Und das Jörn , der sicher ne Menge Arbeit in so ein Tool gesteckt hat, das nicht verschenken möchte, verstehst sicher auch du. Oder bist du ein Samariter, der Jeden Tag in die Firma geht und auf'S Gehalt verzichtet, nur weil er Cheffe helfen will. Das ist nun mal ein Forum zur Hilfe und Selbsthilfe und keine Machmirmalplattform. Ich denke, ich kann zwischen Forenhilfe und Anfrage für ne Dienstleistung unterscheiden und poste auch entsprechend. Der Beitrag wär zwar auch besser als PM an dich gewesen, aber wenn du öffentlich zitierst, will ich auch öffentlich Stellung nehmen. ------------------ - 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 |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 14. Feb. 2007 13:32 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Hallo Rabbit, Zitat:
Und was soll das hier werden !!!!!!!!!!!!!!!!!! Zitat:Hallo Heinz, schau Dir mal das Ergebnis an, ist es das, was Du möchtest?? Dafür habe ich ein Tool, allerdings nicht umsonst.PFUI PFUI PFUI !!!!!
Ja ich habe es getan, ich habe das Forum für Werbung mißbraucht. Aber, vielleicht hast Du Dir auch Gedanken gemacht darüber, das Heiz sein Problemchen ziemlich komplex ist. Wenn ich ihm mit einem 3-Zeiler hätte helfen können, dann hätte ich das getan, solltest Du eigentlich wissen, denn wir beiden treiben uns hier ja schon länger rum. Aber dem ist nicht so. Und ich sehe auch nicht ein, das ich hier nur den Samariter spiele, damit alle zufrieden sind. Aber lassen wir das, das wird doch wieder eine endlose Diskussion. ------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 667 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 14. Feb. 2007 13:33 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
anbei die vlx leicht geändert, Du kannst jetzt eine Liste übergeben, in die Du die zu kopierenden Attribute einträgst. (in der Liste stehen die ATTRIBUTBEZEICHNUNGEN!!) z.B. so aufrufen: (at '("STROMKREIS" "VERTEILERBEZEICHNUNG" "TUERSCHILDNUMMER")) Ciao Georg Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2490 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 14. Feb. 2007 13:37 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 14. Feb. 2007 14:03 <-- editieren / zitieren --> Unities abgeben:
@ gmk Danke das geht schon, aber ich kann nur eine Block wählen und ich habe 100 solche blöcke in Zeichnung und der Block wird nicht getauscht. Nicht ganz was ich brauche. 1000 dank für deine Hilfe ------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 823 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 14. Feb. 2007 19:36 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Zitat: Original erstellt von Dober Heinz: Hallo WieselAlle Blöcke aben 8 ATT. Nur die Stromkreisnummer und das Türschild sind schon von uns eingetragen worden. Jetzt will der Herr Arch. das wir andere Lampentypen einzeichnen sollen. Wobei wir aber unsere Stronkreisnummern uns Türschildnummern behalten wollen. sonst muss ich ja wieder die Stromkreisnummer und das Türschild neu eingtagen. Der Leuchtentyp heist dann statt ELE526 eben ELE20 und ist ein anders Symbol.
Hallo Heinz, Du brauchst in der DXF-Entityliste der Blockreferenz nur den Wert unter Gruppencode 2 auszutauschen. Hier wird der Name der Blockreferenz gespeichert. Damit das Programm nicht crasht, musst Du vorher natürlich nachsehen, ob die neue Referenz auch vorhanden ist. Mit meinem kleinen Tool SSMOD bzw SSMODENT kannst Du das sehr einfach so machen: (ssmodent <blockreferenz-entity> 2 "NeueBlockReferenz") Mit SSMOD kannst Du gleich einen Auswahlsatz der alten Blockreferenz bilden: (ssmod (ssget "X" '((2 . "AlteReferenz"))) 2 "NeueBlockReferenz") Das SSMOD hab' ich Dir doch schon mal gegeben. Falls Du's nicht mehr hast, dann frag' nochmals nach. Gruß Tom [Diese Nachricht wurde von archtools am 14. Feb. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 15. Feb. 2007 06:11 <-- editieren / zitieren --> Unities abgeben:
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002 Autocad 2021/64B Win10 WORKSTATION Intel(R) CPU E5-1620 3.60GHz 32 GB Ram 64 Bit-Betriebssystem HP Designjet T7200 Grafik NVIDIA Quadro P4000 ZWCAD2021
|
erstellt am: 15. Feb. 2007 06:27 <-- editieren / zitieren --> Unities abgeben:
|
archtools Mitglied
Beiträge: 823 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 15. Feb. 2007 12:36 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Zitat: Original erstellt von Dober Heinz: @ archtoolsHabe gerade alles durchsucht die habe ich nicht mehr. danke
Hier ist es:
Code:
;; SSMOD und SSMODENT ;; zum Ändern von DXF-Gruppencodes an Elementen oder Auswahlsätzen ;; ;; Erlaubnis zum Kopieren und zur beliebigen freien Verwendung ;; gestattet, solange der Hinweis auf die Urheberschaft ;; angegeben wird ;; (c) Dr.-Ing. Thomas Berger, Kassel ;; ;; Verwendung: ;; (ssmod <selectionset> <dxf-group-code> <newvalue>;) ;; (ssmodent <entityname> <dxf-group-code> <newvalue>;) ;;(defun ssmod (ss dxf val) (mapent '(lambda (ename) (ssmodent ename dxf val) ) ss ) ) (defun mapent (fun ss / i) (repeat (setq i (sslength ss)) ((lambda (proc args / ss fun i) (apply proc args ) ) fun (list (ssname ss (setq i (1- i)))) ) ) ) (defun ssmodent (ename dxf val / old) (if (setq old (assoc dxf (entget ename))) (entmod (subst (cons dxf val) old (entget ename) ) ) (entmod (cons (cons dxf val) (entget ename))) ) )
Nehmen wir an, Du willst alle Referenzen von "AlterBlock" durch Referenzen auf "NeuerBlock" ersetzen, so dass alle Elementeigenschaften und alle Attribute beibehalten werden. Dann musst Du so vorgehen: 1. Den Block "NeuerBlock" erzeugen. Falls Du die Attribute weiterhin mit EATTEDIT bearbeiten willst, dann musst Du in dem Block dieselben Attributdefinitionen (ATTDEF!) einbauen wie in "AlterBlock" (IMO ist das ein Bug in den ExpressTools). 2. Du lädst obiges Programm in die Zeichnung und gibst ein: Befehl: (ssmod (ssget "X" '((2 . "AlterBlock"))) 2 "NeuerBlock") Das war's dann auch schon. Die Werte der Attribute verstecken sich ebenfalls in der DXF-Liste der Entities, die kannst Du dann auf dieselbe Weise ändern. Falls Du weitere Hilfe bei der Lösung Deines Problems brauchst, dann lass es mich wissen. Gruß Tom
[Diese Nachricht wurde von archtools am 15. Feb. 2007 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 15. Feb. 2007 12:39 <-- editieren / zitieren --> Unities abgeben:
|
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002 Autocad 2021/64B Win10 WORKSTATION Intel(R) CPU E5-1620 3.60GHz 32 GB Ram 64 Bit-Betriebssystem HP Designjet T7200 Grafik NVIDIA Quadro P4000 ZWCAD2021
|
erstellt am: 15. Feb. 2007 12:52 <-- editieren / zitieren --> Unities abgeben:
@ Archtool Danke aber das ist es nicht ganz, ich will ja bestimmte att von neuen Block übernehmen. von alten Block soll z.b. nur die Strommkreisnummer, Türschild übernommen werden den Rest vom neuen Block. danke sonst funkt das super kann ich sicher gebrauchen.
------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archtools Mitglied
Beiträge: 823 Registriert: 09.10.2004 Entwickler für AutoCAD, BricsCAD u.a., alle Systeme
|
erstellt am: 15. Feb. 2007 13:29 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Zitat: Original erstellt von Dober Heinz: @ ArchtoolDanke aber das ist es nicht ganz, ich will ja bestimmte att von neuen Block übernehmen. von alten Block soll z.b. nur die Strommkreisnummer, Türschild übernommen werden den Rest vom neuen Block.
Heinz, ich habe das im Schlussatz ausdrücklich erwähnt, wie Du das machen musst. SSMOD ist ein Allerweltstool, das ist sozusagen meine eierlegende Wollmilchsau. SSMOD ändert nur DXF-Gruppenwerte von Entities oder Auswahlsätzen, und wenn Du das für Dein komplizierteres Problem verwenden willst, dann musst Du schon selbst ein wenig basteln. Du musst also auch noch einige Attribute bearbeiten, und das kannst Du ganz genau so mit SSMODENT wie das Bearbeiten der Blockreferenzen. Kleiner Hinweis: die zu einer Blockreferenz gehörenden Attribute stehen in der Zeichnungsdatenbank immer direkt hinter der Blockreferenz und können von der Blockreferenz einfach mit ENTNEXT gefunden werden. Tom
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 15. Feb. 2007 13:36 <-- editieren / zitieren --> Unities abgeben:
@ Archtoll Mit diesen Zeilen komme ich an das erste ATT (setq Blockw (car(entsel))) (setq Att (entnext Blockw)) (setq Att1 (cdr (assoc 2(entget Att)))) "TYP" nur wie komme ich an die Restliche die mir dan in eine Liste schreibt. Daran scheitere ich. danke ------------------ Heinz Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1734 Registriert: 11.10.2004 Window 10 ACAD 2021 CIVIL 2021 BricsCAD V14-V22 Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz 16.0GB RAM NVIDIA GeForce GTX 1050<P>
|
erstellt am: 15. Feb. 2007 14:49 <-- editieren / zitieren --> Unities abgeben: Nur für Dober Heinz
Hallo Heinz, folgende Zeilen geben Dir die Attnamen in einer Liste wieder. Du fragst in einer While Schleife solange mit (entnext), bis das "SEQEND" kommt. Code:
(defun test ( / A ATT ATT_LISTE BLOCKW ) (if(setq Blockw (car(entsel))) (progn (setq Att Blockw) (while (and (setq Att (entnext Att)) (/= (cdr(assoc 0(entget Att)))"SEQEND")) (setq att_liste (cons (entget Att)att_liste))) (mapcar '(lambda(A) (cdr(assoc 2 A))) (reverse att_liste)))) )
------------------ viele Grüße Jörn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dober Heinz Mitglied Technischer Zeichner
Beiträge: 1143 Registriert: 20.12.2002
|
erstellt am: 15. Feb. 2007 15:18 <-- editieren / zitieren --> Unities abgeben:
|