Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Dateiname aus Attributen bilden

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Dateiname aus Attributen bilden (819 mal gelesen)
HansGeorg
Mitglied
Konstrukteur


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

Beiträge: 187
Registriert: 26.11.2002

SWX 2009
Pro/E WF 3
XP SP3
4 GB RAM
NVIDIA Quadro FX 1800

erstellt am: 10. Nov. 2003 09:56    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 zusammen,

wie kann man bei der Ausgabe eines wblock's den Dateinamen aus Attributen zusammensetzen.
Soll die neue Datei den Dateinamen der jetzigen Zeichnung erhalten gehe ich folgendermaßen vor:
(strcat "c:/temp/" (substr (getvar "DWGNAME") 1 (- (strlen (getvar "DWGNAME")) 4)) ".dwg")

Wie kann man vorhandene Attribute als Dateiname verwenden?
Und wie kann man "dwgname" mit dem Wert des Attributs "A" kombinieren?
Z.B. dwgname ergibt XX und Attribut A ergibt Z - Ergebnis XX-Z

Vielen Dank!

Grüße
HansGeorg

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 10. Nov. 2003 10:05    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 HansGeorg 10 Unities + Antwort hilfreich

also erstmal ist die Vorgehenswiese, wie du es bisher machst 'von hinten durch die Brust ins Auge'!
so ist das etwas einfacher: (strcat "c:/temp/" (getvar "DWGNAME"))

zu 2.
Das wäre etwas einfacher, wenn du das näher beschreinem könntest.
willst du den Attributwert, oder den Attributnamen als Namensbestandteil?
Hängt das Attribut an einem Block, der immer gleich ist, oder meinst du eine Attributdefinition, die in der Zeichnung vorhanden ist?

Prinzipiell funzt das auch mit strcat.

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

HansGeorg
Mitglied
Konstrukteur


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

Beiträge: 187
Registriert: 26.11.2002

SWX 2009
Pro/E WF 3
XP SP3
4 GB RAM
NVIDIA Quadro FX 1800

erstellt am: 10. Nov. 2003 10:17    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,

und wieder was dazugelernt - Danke!

Der Attributwert soll Namesbestandteil werden.
Das Attribut hängt an einem Block.
Der Block ändert den Namen.
Der Attributname ist immer gleich, nur der Wert ändert sich.

Hoffentlich verständlich erklärt.

Viele Grüße
HansGeorg

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

CADwiesel
Moderator
CAD4FM UG




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

Beiträge: 1968
Registriert: 05.09.2000

AutoCAD, Bricscad
Wir machen das Mögliche unmöglich

erstellt am: 10. Nov. 2003 12:43    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 HansGeorg 10 Unities + Antwort hilfreich

soo, weiterlernen..
das Attribut hängt ganz sicher NICHT an einem Block
höchstens an einer Blockreferenz.

hier mal eine Möglichkeit um an deinen Attributwert zu kommen:
Das Ergebniss steht in der Variablen erg.

  (setq EARX_BTAA (tblnext "BLOCK" T)
        elist    nil
        ) ;_ end of setq
  (while
    (/= EARX_BTAA nil)
    (setq elem (cdr (assoc -2 EARX_BTAA)))
    (while (/= elem NIL)
      (setq tt (entget elem))
      (cond
        ((and (= (cdr (assoc 0 tt)) "ATTDEF")
              (= (cdr (assoc 2 tt)) "QM")
              ) ;_ end of and
          (progn
            (if(and
              (setq elist
                    (ssget "_X" (list (cons 0 "INSERT")(assoc 2 EARX_BTAA))))
              (= (sslength elist) 1)
              )
              (progn
              (setq hm (ssname elist 0))
              (While
               
                (/=(cdr(assoc 0(entget hm)))"SEQEND")
                (if(and
                    (=(cdr(assoc 0(entget hm)))"ATTRIB")
                  (=(cdr(assoc 2 (entget hm)))"QM")
                    )
                  (setq erg (cdr(assoc 1 (entget hm))))
                  )
                        (setq hm (entnext hm))
                  )
              )
              )
            ) ;_ end of progn
          ) ;_ end of if
        ) ;_ end of cond
      (setq elem (entnext elem))
      ) ;_ end of while
    (setq EARX_BTAA (tblnext "BLOCK"))
    erg
    ) ;_ end of while

------------------
Gruß
CADwiesel
Besucht uns im CHAT

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

HansGeorg
Mitglied
Konstrukteur


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

Beiträge: 187
Registriert: 26.11.2002

SWX 2009
Pro/E WF 3
XP SP3
4 GB RAM
NVIDIA Quadro FX 1800

erstellt am: 21. Nov. 2003 22:05    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 CADwiesel,

danke für Deine Mühe.
Ich dachte, daß man sowas mit einem Makro hinter einem Icon lösen kann.

Vielen Dank.

Grüße
HansGeorg

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)2023 CAD.de | Impressum | Datenschutz