Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Umwandlung von (getvar DWGNAME)

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:  Umwandlung von (getvar DWGNAME) (2130 mal gelesen)
Waldemar
Mitglied
Applikationsingenieur


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

Beiträge: 264
Registriert: 06.09.2001

erstellt am: 29. Sep. 2006 10:20    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 Kollegen/innen,

erstelle nachfolgende Variable:
  (setq DATNAME (getvar "DWGNAME"))

Das Ergebnis lautet XXX.dwg

Wie kann ich DATNAME so abkürzen, dass nur der Dateiname (ohne ".dwg") angezeigt wird. XXX


Grüße
Waldemar

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

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



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

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 29. Sep. 2006 10:22    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 Waldemar 10 Unities + Antwort hilfreich

Siehe dir hierzu dieses Beispiel an:
http://ww3.cad.de/foren/ubb/Forum145/HTML/000050.shtml#000002 

------------------
Grüsse

Thomas

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 29. Sep. 2006 10:29    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 Waldemar 10 Unities + Antwort hilfreich

es gibt auch die Funktionen
(cadr(fnsplitl(getvar "DWGNAME")))
oder
(vl-filename-base (getvar "DWGNAME"))

das mit dem
(- (strlen (getvar "DWGNAME")) 4))
funktioniert zwar auch, aber die anderen Funcs sind besser für die anderen Eventualitäten gerüstet
------------------
      - 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

Waldemar
Mitglied
Applikationsingenieur


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

Beiträge: 264
Registriert: 06.09.2001

erstellt am: 29. Sep. 2006 10:48    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

Hi Thomas,

es funktioniert !!!

Danke...

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

Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 30. Sep. 2006 22:16    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 Waldemar 10 Unities + Antwort hilfreich

Hallo Thomas,

"fnsplitl" kenne ich nicht.
Wo ist diese Funktion?

Gruß
Theodor

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 01. Okt. 2006 12:38    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 Waldemar 10 Unities + Antwort hilfreich

fnsplitl ist eine undokumentierte Funktion .. die Suche in der Lisphilfe bringt da auch bloß einen eher nicht beabsichtigten Treffer.

Als Beschreibung mal:
fnsplitl .. Zerlegt Dateinamen in Verzeichnis, Dateiname und Extension.
Parameter ist ein String, Rückgabe eine Liste mit 3 Strings.

------------------
  - 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

Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 01. Okt. 2006 16:42    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 Waldemar 10 Unities + Antwort hilfreich

Danke Thomas,

ich habe es gleich auch bei ICAD getestet, da geht es leider nicht.

Guß
Theodor

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

Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 04. Okt. 2006 16: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 Waldemar 10 Unities + Antwort hilfreich

super funktioniert bei mir ....

aber  

meine Zeichnungsnamen sind folgende zB.:

HZ2060230-FA-etwasText.dwg

nur das fettgeschriebene will ich als Text haben ???
also:

2060230 etwasText

geht das überhaupt ???

[Diese Nachricht wurde von Angeltoni am 04. Okt. 2006 editiert.]

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 04. Okt. 2006 16:18    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 Waldemar 10 Unities + Antwort hilfreich

ja mit den Funktionen vl-string-search , substr und strcat kommst du weiter. -> F1 !
Aber ohne zu wissen, wie deine Dateinamen im Allgemeinen aufgebaut sind, enden hier auch schon die Hilfsmöglichkeiten.

------------------
  - 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

Ex-Mitglied
Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 04. Okt. 2006 23:54    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 Waldemar 10 Unities + Antwort hilfreich

Hallo,

mit den Beispielen wie: "STR_DIV" und "STR_TOK"
von Axel, funktioniere die folgenden Beispiele sehr gut.

;; Den ersten Teilsting ausgeben
(setq ERST_STR (car (STR_DIV STRING "\\")))

;; Den letzten Teilsting ausgeben
;; Dateiname aus Dateiname mit Pfad
(setq DATNAM (last (STR_TOK FILENAME "\\")))

Wenn, wie bei ICAD, keine VL-Befehle möglich.

Gruß
Theodor Schönwald

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

Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 05. Okt. 2006 07:49    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 Waldemar 10 Unities + Antwort hilfreich

oh danke ... werde gleich mal herum experimentieren

wegfallen sollen folgende positionen im Dateinamen:
1, 2, 10, 11, 12 und am ende .dwg

ersten beiden z.B.
HZ = Hauptzeichnung
SF = Stanzform
AA = Aufbauanleitung  usw..

10, 11, 12 = Namenskürzel

sind also immer an gleicher Stelle

für 1:1 Transparent Ausdrucke brauch ich halt am Rand nur
die Nummer und den Text also Namenskürzel und die beiden Zeichnungsbuchstaben entfallen.

Dateiname kann sein:

HZ3060113-FA-Bodendisplay Tesa.dwg
und soll werden:
3060113-Bodensteller Tesa

oder

AA2040465-UH-Schaufensterplakat Euzerin.dwg
und soll werden:
2040465-Schaufensterplakat Euzerin


thx
Angeltoni

[Diese Nachricht wurde von Angeltoni am 05. Okt. 2006 editiert.]

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

Ex-Mitglied
Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 05. Okt. 2006 09:21    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 Waldemar 10 Unities + Antwort hilfreich


habe jetzt rumgespielt und den Code erstellt:

Code:
(defun C:name ()
  (SETQ P0 (GETPOINT "Einfügepunkt: "))
  (SETQ TH (GETREAL "Texthöhe: "))
  (SETQ TW (GETREAL "Textwinkel: "))
  (SETQ dwgname (vl-filename-base (getvar "DWGNAME")))
  (setq dwgname (vl-string-right-trim ".dwg" dwgname))
  (setq dwgname
(strcat
  (substr dwgname
  3
  (- (vl-string-position (ascii "-") dwgname) 2)
  )
  (substr dwgname
  (+ 1 (vl-string-position (ascii "-") dwgname nil T))
  )
)
  )
  (command "dtexted" "1")
  (setq TX (strcat dwgname))
  (command "LAYER" "SE" schrift "")
  (command "text" P0 TH TW TX)
)

klappt auch soweit aber die Zeichen in der Mitte bleiben erhalten.

kommt : nil

mfg

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

Ex-Mitglied
spider_dd
Mitglied



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

Beiträge: 1111
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 05. Okt. 2006 10:01    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 Waldemar 10 Unities + Antwort hilfreich

Hallo Angeltoni,

teste doch mal Deine einzelnen Codezeile (auch abschnittsweise) im Lisp-Editor / VL-Konsole. Da siehst Du was die einzelnen substr Anweisungen liefern.
Das erhaltenbleiben der mittleren Zeichen: Kann es sein, dass Dein aktueller Dateiname das zweite "-" Zeichen nicht hat? Das wird nämlich gesucht.
Wenn Deinen Dateinamenstruktur immer so "starr" ist wie angegeben brauchst Du auch nur die gewünschten Abschnitte rausgreifen.

Code:

(setq dwgname (vl-string-right-trim ".dwg" dwgname))
(setq TX (strcat (substr dwgname 3 7) (substr dwgname 13)))

Wie Thomas (Cadmium) schon sagte, mal die Hilfe zu strcat und substr lesen.

Noch was, (command "Text" ...) kann Probleme bereiten, wenn Stil mit fest vorgegebener Texthöhe verwendet wird, dann ist diese nämlich nicht mit anzugeben.

HTHHope this helps (Hoffe, es hilft weiter)
LG
Thomas

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

Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 05. Okt. 2006 10:04    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 Waldemar 10 Unities + Antwort hilfreich

Mein Dateiname heisst:

HZ3060224-FA tesa Bodensteller.dwg

es sollte dann beim Einfügepunkt erscheinen:

3060224 tesa Bodensteller

es steht aber:

3060224-FA tesa Bodensteller

und copy der Befehlszeile:

Code:
Befehl: name2
Einfügepunkt: Texthöhe: 20
Textwinkel: 0
dtexted
Neuen Wert für DTEXTED eingeben <1>: 1
Befehl: text
Aktueller Textstil:  "Standard"  Texthöhe:  90.00
Startpunkt des Texts angeben oder [Position/Stil]:
Höhe angeben <90.00>: 20.00000000000000
Drehwinkel des Texts angeben <0>: 0.000000000000000
Text eingeben: 3060224-FA tesa Bodensteller
Befehl: nil


[Diese Nachricht wurde von Angeltoni am 05. Okt. 2006 editiert.]

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

Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 05. Okt. 2006 10:13    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 Waldemar 10 Unities + Antwort hilfreich

@spider ... stimmt das 2te - ist nicht da ^^

ich teste mal weiter

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

Angeltoni
Mitglied
Display Designer


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

Beiträge: 18
Registriert: 05.01.2006

AutoCAD 2007
Inventor 11
Display Bereich <P>Marbach + Wild Plotter

erstellt am: 05. Okt. 2006 10:41    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 Waldemar 10 Unities + Antwort hilfreich

hat geklappt ... dankeschön


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