Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  PTC Creo Elements/Programmierung
  LISP: Maßstabsfaktor korrekt umwandeln

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
  
Besichtigung der MAIT.Cloud in Frankfurt | 17.09.2025, eine Veranstaltung am 17.09.2025
Autor Thema:  LISP: Maßstabsfaktor korrekt umwandeln (1842 mal gelesen)
holt
Mitglied
Systembetreuer CAD


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

Beiträge: 720
Registriert: 07.08.2003

Lenovo ThinkStation P360
Core i7-12700@2.10 GHz, 32GB
NVIDIA RTX A2000 12 GB
Creo Elements/Direct Modeling 20.5
Creo Elements/Direct Drafting 20.5
Creo Elements/Direct ModelManager 20.5

erstellt am: 12. Jan. 2007 15: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

Hallo,

ich kämpfe wieder einmal mit der LISP Format-Funktion.
Problem:
Maßstabsfaktor in einem ansehnlichen Format anzeigen

Code:

(setf Masstab (sd-am-view-struct-scale (sd-am-inq-view Ansicht)))
(if (>= Masstab 1)
  (setf Txt (format nil "M ~D:1" (/ (round (* Masstab  10)) 10)))
  (setf Txt (format nil "M 1:~D" (/ (round (* (/ 1 Masstab) 10)) 10)))
)


Bei Verwendung von ~A oder ~D liefert (display Txt) bei bestimmten Maßstäben eine Bruchzahl!
Masstab    Txt
0.3333333  M1:3
0.4        M1:5/2  statt M1:2.5
0.2857    M1:7/2  statt M1:3.5

Bei Verwendung von ~F wird auch bei ganzzahligen Maßstäben eine Dezimalzahl geliefert.

Gibt es dafür eine einfache Lösung? (Ich weiß, die angegebenen Maßstäbe sind nicht unbedingt normgerecht, aber in der Not werden auch solche verwendet.)

------------------
Gruß aus dem Salzkammergut

Thomas Hollerweger

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: 12. Jan. 2007 16: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 holt 10 Unities + Antwort hilfreich

Weil Fliesskommazahlen in heutigen Rechnern grundsaetzlich verlustbehaftet sind (jedenfalls potentiell), versucht Lisp ihre Verwendung so weit wie moeglich hinauszuzoegern, um eben diese Verluste zu vermeiden. Rationale Zahlen werden daher soweit moeglich als Brueche dargestellt.

Wenn man das nicht mag, muss man Lisp dazu zwingen, aus der rationalen Zahl eine reelle zu machen. Die Formatspezifikation ~F ist einer von vielen Wegen dazu.

Versuche mal sowas wie dieses:

Code:

  (format nil "~A" (oli:sd-num-to-string num)))

Claus

------------------
CoCreate OneSpace Modeling FAQ: http://www.clausbrod.de/OneSpaceModeling/

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

holt
Mitglied
Systembetreuer CAD


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

Beiträge: 720
Registriert: 07.08.2003

Lenovo ThinkStation P360
Core i7-12700@2.10 GHz, 32GB
NVIDIA RTX A2000 12 GB
Creo Elements/Direct Modeling 20.5
Creo Elements/Direct Drafting 20.5
Creo Elements/Direct ModelManager 20.5

erstellt am: 15. Jan. 2007 07: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

funktioniert wie gewünscht!

  und 10Us

------------------
Gruß aus dem Salzkammergut

Thomas Hollerweger

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

3d_oli
Mitglied
Konstrukteur/Techniker


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

Beiträge: 20
Registriert: 25.05.2005

XP Prof x64
AMD Opteron 252
2.61 GHz
16.0 GB RAM<P>OSD 13
OSD 14B 64 BIT

erstellt am: 30. Jan. 2007 11: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 holt 10 Unities + Antwort hilfreich

[QUOTE]Original erstellt von holt:
[B]Hallo,

ich kämpfe wieder einmal mit der LISP Format-Funktion.
Problem:
Maßstabsfaktor in einem ansehnlichen Format anzeigen.

Sitz gerade an einem ähnlichen Problem, und bin durch Dich auf die richtige Spur gekommen.

Danke !!


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