Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Attribute in Text wandeln

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:   Attribute in Text wandeln (5279 mal gelesen)
richard01
Mitglied
Bereichsleiter Projektierung und Konstruktion


Sehen Sie sich das Profil von richard01 an!   Senden Sie eine Private Message an richard01  Schreiben Sie einen Gästebucheintrag für richard01

Beiträge: 40
Registriert: 29.10.2007

AutoCAD 2014

erstellt am: 09. Sep. 2009 17:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo!

Ich müsste vorhandene Attributswerte in Texte wandeln.
Leider wird mit Burst aus den E-Tools auch der Block aufgelöst.
Gibt es eine Möglichkeit, dass der Block ganz bleibt?

Danke für Eure Hilfe.

MfG

Richard

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



Sehen Sie sich das Profil von CAD-Huebner an!   Senden Sie eine Private Message an CAD-Huebner  Schreiben Sie einen Gästebucheintrag für CAD-Huebner

Beiträge: 9560
Registriert: 01.12.2003

AutoCAD 2.5 - 2017, Civil 3D, MAP 3D, LDD, MDT, ARD
Inventor AIP 4-201x
Win7x64, Win 10

erstellt am: 09. Sep. 2009 18:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für richard01 10 Unities + Antwort hilfreich

Die Frage kommt öfter mal.
Vor ein ppar jahren war das schon mal Thema: http://ww3.cad.de/foren/ubb/Forum54/HTML/008274.shtml#000008
Dabei gabs dann auch gleich eine kleine Lisp-Routine http://ww3.cad.de/foren/ubb/uploads/Juergen55/attrtxt.lsp.txt
Die den
Befehl: ATTRTOTXT_NOEXP 
zur Verfügung stellt.

C:ATTRTOTXT_NOEXP
Wandelt sichtbare Blockattribute in Text und setzt
alle Attributwerte des Blocks auf "", der Block
wird nicht zerlegt

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

richard01
Mitglied
Bereichsleiter Projektierung und Konstruktion


Sehen Sie sich das Profil von richard01 an!   Senden Sie eine Private Message an richard01  Schreiben Sie einen Gästebucheintrag für richard01

Beiträge: 40
Registriert: 29.10.2007

AutoCAD 2014

erstellt am: 10. Sep. 2009 09:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Testblock.zip

 
Hallo!

Ich habe das Lisp Tool ausprobiert.

Leider kommt folgende Fehlermeldung:

Ungültiger Feldtyp in 280 in (entmake).

Im Anhang sind Musterblöcke.


Vielen Dank für Euere Unterstützung!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



Sehen Sie sich das Profil von CAD-Huebner an!   Senden Sie eine Private Message an CAD-Huebner  Schreiben Sie einen Gästebucheintrag für CAD-Huebner

Beiträge: 9560
Registriert: 01.12.2003

AutoCAD 2.5 - 2017, Civil 3D, MAP 3D, LDD, MDT, ARD
Inventor AIP 4-201x
Win7x64, Win 10

erstellt am: 10. Sep. 2009 11:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für richard01 10 Unities + Antwort hilfreich

Habe mal 2 BUGs im Code gefixt, nun sollte es laufen
Code:
;*************************************************************************
;** Datei ATTRTXT.LSP
;** Dient zum Umwandeln von sichtbaren Blockattributen in Text
;*************************************************************************
;** Funktionen
;** C:ATTRTOTXT_EXP    Wandelt sichtbare Blockattribute in Text um und
;**                    zerlegt den Block
;** C:ATTRTOTXT_NOEXP  Wandelt sichtbare Blockattribute in Text und setzt
;**                    alle Attributwerte des Blocks auf "", der Block
;**                    wird nicht zerlegt
;*************************************************************************
;** Autor: NAVRATIL Heinz
;** Stand: 04.11.1998
;** Ver.:  4.2 -- AutoCAD Ver. 13 / 14
;** email: hnavratil@KGH.KABA.com
;*************************************************************************
;** Update/Bugfixing Udo Hübner Udo@CAD-Huebner.de 10.09.09
;** getestet mit AutoCAD 2008

;*************************************************************************

;** ----------------------------------------------------------------------
;** C:ATTRTOTXT_EXP
;** ----------------------------------------------------------------------
(defun C:attrtotxt_exp( / as i e el bn nl l1 l2)
  (if (setq as (ssget))
    (progn
      (setq i 0)
      (while (setq e (ssname as i))
        (setq el (entget e))
        (if (/= (assoc 66 el) nil)
          (progn
            (setq bn e)
            (while (/= (cdr (assoc 0 (setq el (entget e)))) "SEQEND")
              (if (and (= (cdr (assoc 0 el)) "ATTRIB")
                      (/= (logand (cdr (assoc 70 el)) 1) 1)
                  )
                (progn
                  (setq nl (cdr el))
                  (setq nl (subst '(0 . "TEXT") (assoc 0 nl) nl))
                  (setq l1 (cdr (member (assoc 2 nl) nl)))
                  (setq l2 (reverse (cdr (member (assoc 2 nl) (reverse nl)))))
                  (setq nl (append l2 l1))
                  (setq l1 (cdr (member (assoc 70 nl) nl)))
                  (setq l2 (reverse (cdr (member (assoc 70 nl) (reverse nl)))))
                  (setq nl (append l2 l1))
                  (setq nl (subst (cons 73 (cdr (assoc 74 nl))) (assoc 74 nl) nl))
                  (entmake nl)
                )
              )
              (setq e (entnext e))
            )
            (setq le (entlast))
            (command "._EXPLODE" bn)
            (while (setq le (entnext le))
              (if (= (cdr (assoc 0 (entget le))) "ATTDEF")
                (entdel le)
              )
            )
          )
        )
        (setq i (1+ i))
      )
      (command "._REGEN")
    )
  )
  'DANKE
)


;** ----------------------------------------------------------------------
;** C:ATTRTOTXT_NOEXP
;** ----------------------------------------------------------------------
(defun C:attrtotxt_noexp( / as i e el bn nl l1 l2)
  (if (setq as (ssget))
    (progn
      (setq i 0)
      (while (setq e (ssname as i))
        (setq el (entget e))
        (if (/= (assoc 66 el) nil)
          (progn
            (setq bn e)
            (while (/= (cdr (assoc 0 (setq el (entget e)))) "SEQEND")
              (if (and (= (cdr (assoc 0 el)) "ATTRIB")
                      (/= (logand (cdr (assoc 70 el)) 1) 1)
                  )
                (progn
                  (setq nl (cdr el))
                  (setq nl (subst '(0 . "TEXT") (assoc 0 nl) nl))
                  (setq l1 (cdr (member (assoc 2 nl) nl)))
                  (setq l2 (reverse (cdr (member (assoc 2 nl) (reverse nl)))))
                  (setq nl (append l2 l1))
                  (setq l1 (cdr (member (assoc 70 nl) nl)))
                  (setq l2 (reverse (cdr (member (assoc 70 nl) (reverse nl)))))
                  (setq nl (append l2 l1))
                  (setq nl (subst (cons 73 (cdr (assoc 74 nl))) (assoc 74 nl) nl))
               
                  ; Eintrag Code 280 aus neueren Attributsdef. für den Text entfernen
                  ; www.CAD-Huebner.de  10.09.09
                  (setq nl (vl-remove (assoc 280 nl) nl))
                 
                  (entmake nl)
                ; hier noch BUG korrigiert assoc 1 el statt assoc 2 el
                  (setq el (subst '(1 . "") (assoc 1 el) el))

                  (entmod el)
                )
              )
              (setq e (entnext e))
            )
          )
        )
        (entupd bn)
        (setq i (1+ i))
      )
      (command "._REGEN")
    )
  )
  'DANKE
)

(princ "\nAufruf mit: attrtotxt_exp oder attrtotxt_noexp\n")
(princ)


------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 19822
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 07. Mai. 2020 09:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für richard01 10 Unities + Antwort hilfreich


ATTRTOTXT.LSP

 
Uralt, aber da ich gerade für jemandem darauf verlinken wollte und gesehen habe das hier noch
die alte unvollständige Korrektur online steht:

Hier die gefixte Version der gefixten Version (ohne die 280er Fehlermeldung)
[grundsätzliche Funktion ist gleich, habe nur Udos Versuch zum unterdrücken der Fehlermeldung umgesetzt]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2020 CAD.de | Impressum | Datenschutz