Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Benutzer über den Pfad abfragen

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 PTC CREO
Autor Thema:  Benutzer über den Pfad abfragen (1469 mal gelesen)
Inkognito
Mitglied


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

Beiträge: 3
Registriert: 22.07.2004

erstellt am: 31. Aug. 2004 15:02    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!

Hab folgendes Problem:

:local-functions
'((doit ()
(progn
(create_thumbnail :vp viewport :size :user :size_x xsize :size_y ysize :fit :off :filename (format nil "c:/temp/SD_anim/Bild~3,'0D.jpg" 1))
(loop for i from 2 to (+ schritt 1)
do
(sd-call-cmds (position_pa Objekt :rotate :axis (nth 0 achse) (nth 1 achse) :rotation_angle (sd-deg-to-rad grad) :done)
;;:failure (display "Fehler bei Drehung")
;;:success (display "Drehung war OK")
)
(create_thumbnail :vp viewport :size :user :size_x xsize :size_y ysize :fit :off :filename (format nil "c:/temp/SD_anim/Bild~3,'0D.jpg" i))
)
(when (not Bilder)
(delete-file (format nil "c:/temp/SD_anim/Bild~3,'0D.jpg" (+ Schritt 1)))
)
(oli::sd-sys-exec "C:/Programme/ImageMagick-6.0.5-Q16/CONVERT.EXE -delay 10 C:/temp/SD_anim/Bild*.jpg C:/temp/SD_anim/rotate.gif")
(sd-sys-background-job (format nil "del ~a" (sd-convert-filename-to-platform "C:/temp/SD_anim/*.jpg")))
;;(sd-sys-background-job (format nil "explorer ~a" (sd-convert-filename-to-platform "C:/Temp")))
(sd-sys-background-job (format nil "explorer ~a" (sd-convert-filename-to-platform "C:/temp/SD_anim/rotate.gif")))
;;(sd-sys-background-job (format nil "C:/Programme/Internet Explorer/IEXPLORE.EXE C:/temp/SD_anim/rotate.gif")))
)
)
)
:ok-action

Mit dem Image Magick kann man die "Screenshots" zu einem animierten GIF konvertierten. Das Problem ist, dass OSD alle JPG's in den Ordner "C:/temp/SD_anim/". Jetzt versuch ich irgendwie, dass OSD den Benutzer abfrägt wo er die JPG's abspeichern soll bevor er eine rotate.gif macht. Und am Ende sollte er am besten die JPG's, die nicht mehr benötigt werden rauslöschen. Wie könnte man dies am besten realisieren?

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

RainerH
Mitglied
Techn. Ang. (Konstruktion)


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

Beiträge: 736
Registriert: 22.01.2003

OSDM 14.00A
OSDD 14.50
MM 14.00A
Windows-XP Pro x64 Edition
--------------------------
HP xw6400
Intel Xeon 3.00 GHz
4.00 GB RAM
ATI FireGL V7200

erstellt am: 31. Aug. 2004 16: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 Nur für Inkognito 10 Unities + Antwort hilfreich

@inkognito

So bekommst du den Benutzername:

(display (oli::sd-sys-getenv "USERNAME"))

Gruss
RainerH.

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

Dorothea
Mitglied



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

Beiträge: 242
Registriert: 22.11.2001

erstellt am: 31. Aug. 2004 16:31    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 Inkognito 10 Unities + Antwort hilfreich

Hallo Inkognito,

Du koenntest z.B. in deinen Dialog eine Variable einfuegen, die den Nutzer einen Filenamen eingeben laesst. Dieser Filename enthaelt dann auch das Verzeichnis. Und das Ergebnis-Bild heisst dann nicht notwendigerweise 'rotate.gif' sonden so wie der Nutzer einen Filenamen ausgewaehlt hat.
Viele Infos ueber Filenamen findest du im Developers Kit bei
:value-type :filename
(documentation/integration_kit/reference/dg_manual.html#file-selection)

Die unnoetigen Files koenntest du evtl. mit Standard Lisp Funktionen loeschen. Ich kenne mich damit auch nicht genug aus um dir da wesentlich weiter helfen zu koennen.

Gruss Dorothea

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

Walter Geppert
Moderator
Frank und Frei




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

Beiträge: 2143
Registriert: 12.12.2000

Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.4, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf
HP ZBook 17 G4, Windows 10 Pro 64

erstellt am: 31. Aug. 2004 16:52    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 Inkognito 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Dorothea:
Die unnoetigen Files koenntest du evtl. mit Standard Lisp Funktionen loeschen.

(delete-file path)
löscht die durch path angegebene Datei und gibt t zurück

Das Sternchen als Joker nimmt diese Funktion leider nicht!

------------------
meine LISP-Makros sind auf Heikos Hilfeseite
Grüße aus Wien

Walter
DC4 Technisches Büro GmbH

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

Inkognito
Mitglied


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

Beiträge: 3
Registriert: 22.07.2004

erstellt am: 01. Sep. 2004 09:31    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

Danke für eure Antworten!!!
Aber eine Frage hab ich noch:
und zwar die Zeile "sd-convert-filename-to-platform" ... Soll diese Funktion für die Umwandlung zwischen / und \ sorgen oder versteh ich da was falsch?

Grüße aus Stuttgart
Inkognito

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

Dorothea
Mitglied



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

Beiträge: 242
Registriert: 22.11.2001

erstellt am: 01. Sep. 2004 12:11    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 Inkognito 10 Unities + Antwort hilfreich

Im Prinzip ja. Nach dem Aufruf der Funktion kannst du dir sicher sein, dass der Pfadname von der Anwendung auch gelesen werden kann. Initial arbeitet das System ja immer mit '/'. Und der String wird dann richtig umgewandelt.

Beispiel aus der Doku:
NT platform:
  (sd-convert-filename-to-platform "/tmp/example.lsp")
    => "\\tmp\\example.lsp"

Dorothea

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

Inkognito
Mitglied


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

Beiträge: 3
Registriert: 22.07.2004

erstellt am: 01. Sep. 2004 13: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

Ja aber wieso lässt dann OSD bzw LISP nicht zu, dass ich es gleich mit "\" editiere (dann brauch ich ja diese Funktion nicht). Kurz davor hab ich versucht den Pfad mit "\" anzugeben und OSD hat es nicht akzeptiert. Ach ja ... kann ich in Help die Funktion für Translation finden? Was ich bis jetzt gefunden habe war TRANSLATION_3D und das hat mich nicht wirklich weitergebracht.

Gruß Inkognito

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

clausb
Ehrenmitglied V.I.P. h.c.



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

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 01. Sep. 2004 14:47    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 Inkognito 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Inkognito:
Ja aber wieso lässt dann OSD bzw LISP nicht zu, dass ich es gleich mit "\" editiere (dann brauch ich ja diese Funktion nicht).

LISP akzeptiert sehr wohl auch Backslashes in Dateipfaden. Man muss sie halt nur verdoppeln, um sie vom einfachen Escape-Zeichen zu unterscheiden. Siehe dazu auch die Dokumentation zum Common-LISP-Standard (beispielsweise unter http://www.lisp.org/HyperSpec/Body/sec_2-1-4-6.html).

Wenn Dich die doppelten Backslashes stoeren, dann gib halt keine ein und verwende / im Pfad und konvertiere den Pfad hinterher mit sd-convert-to-platform. Du hast die Wahl.

sd-convert-to-platform ist dringend empfohlen fuer plattformunabhaengigen Code - und zwar dann, wenn Du den Pfad an externe Tools (also beispielsweise eine DOS-Shell oder in Deinem Fall an ImageMagick) weitergibst.

  Claus

[Diese Nachricht wurde von clausb am 01. Sep. 2004 editiert.]

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