| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: entget & grosse Werte (1825 mal gelesen)
|
BBlackBird Mitglied
 Beiträge: 1 Registriert: 15.12.2004
|
erstellt am: 15. Dez. 2004 18:47 <-- editieren / zitieren --> Unities abgeben:         
Hi, ich habe folgendes Problem: Wenn ich z.B.mit "entget" von einer Linie den Start und Endpunkt abfrage und die Koordinaten der Linie über 35000 liegen bekomme ich max 1 Nachkommastelle. Bei Kleineren Werten bekomme ich mehrere Nachkommastellen, was reichen würde. Kennt jemand einen Weg, wie ich diese Werte mit mehr Genauigkeit bekomme? Bspielprogramm (setq el (entget (car (entsel "\nObjekt waehlen: "))))
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer

 Beiträge: 9808 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 15. Dez. 2004 19:00 <-- editieren / zitieren --> Unities abgeben:          Nur für BBlackBird
|
mapcar Mitglied CADmin

 Beiträge: 1250 Registriert: 20.05.2002 Time flies like an arrow, fruit flies like a banana (Groucho Marx)
|
erstellt am: 18. Dez. 2004 00:00 <-- editieren / zitieren --> Unities abgeben:          Nur für BBlackBird
Das kann ich mal wieder so nicht stehen lassen: > Wenn ich z.B.mit "entget" von einer Linie den Start und Endpunkt > abfrage und die Koordinaten der Linie über 35000 liegen bekomme ich > max 1 Nachkommastelle Das ist falsch! Die Anzahl der signifikanten Stellen des Datentyps Double ist > 14. Du bekommst immer die volle Genauigkeit einer doppelt genauen Fließkommazahl (deswegen heißt der Double nämlich Double). Bei 5 Stellen vor dem Komma hast du also noch mindestens 9 hinter dem Komma. > entget bringt unformatierte Zahlen mit 8 Ziffern Quatsch. Einzelheiten siehe oben. Dein Problem, Herr/Frau Namenlos bzw. Stotternder Schwarzer Vogel, ist die Lisp-Bildschirmausgabe, also die Anzeige-Genauigkeit. Die wird von Systemvariablen beeinflußt und ist tatsächlich auf max. 8 Stellen hinterm Komma begrenzt - aber das hat keinerlei Einfluß auf die interne Rechengenauigkeit! Wirf mal die Suche an mit Stichwörtern wie rtos, double usw., und du wirst einige interessante Threads dazu finden, nicht nur hier in diesem Forum. Gruß, Axel Strube-Zettler ------------------ (defun - Lisp over night - AutoLisp-Programmierung für AutoCad - Da weiß man, wann man's hat Meine AutoLisp-Seiten Mein Angriff auf dein Zwerchfell Mein Lexikon der Fotografie Mein gereimtes Gesülze
[Diese Nachricht wurde von mapcar am 18. Dez. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer

 Beiträge: 9808 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 18. Dez. 2004 10:54 <-- editieren / zitieren --> Unities abgeben:          Nur für BBlackBird
Zitat: Original erstellt von mapcar: Das kann ich mal wieder so nicht stehen lassen: ... > entget bringt unformatierte Zahlen mit 8 Ziffern : mein (Udos) Text Quatsch. Einzelheiten siehe oben. ... Dein Problem, ... ist die Lisp-Bildschirmausgabe, also die Anzeige-Genauigkeit. Die wird von Systemvariablen beeinflußt und ist tatsächlich auf max. 8 Stellen hinterm Komma begrenzt - aber das hat keinerlei Einfluß auf die interne Rechengenauigkeit! ... Gruß, Axel Strube-Zettler
Zu meiner Ehrenrettung: Ja, das war missverständlich formuliert und die Angabe von 8 Ziffern war falsch. Aber ich hatte ja auch auf einen anderen Beitrag verwiesen, da habe ich es so formuliert: http://ww3.cad.de/foren/ubb/Forum145/HTML/000819.shtml#000003 Zitat: Original erstellt von CAD-Huebner: ... AutoCAD rechnet intern mit 16 signifikanten Stellen. Die unformatierte Lispausgabe zeigt die Werte allerdings nur mit 7 Ziffern an. ...
<--- @Axel Ein Einfluss von Systemvariablen auf die Anzeige unformatierter Lispausdrücke konnte ich nicht nachvollziehen. Ebenso konnte ich die Angabe von 8 Nachkommastellen nicht nachvollziehen (maximal 5 bei Zahlen >1 und 9 bei Zahlen < 1 sind erreichbar), da hast du dann wohl meine erste Falschangabe übernommen. ---> Hier noch mal zur unformatierten Anzeige eines Lisp-Ausdruckes auf der Visual-Lisp-Konsole oder der Befehlszeile: Es werden max. 6 signifikante Ziffern angezeigt und ein Dezimaltrennzeichen (der Punkt). Zahlen größer gleich 1000000.0 und Zahlen kleiner 0.0001 werden in Exponentialschreibweise dargestellt. Befehl: (PROGN 0.12345678) 0.123457 Befehl: (PROGN 0.00012345678) 0.000123457 hier sind nur 6 Ziffern signifikant aber 9 Nachkommastellen!Befehl: (PROGN 123.0) 123.0 Befehl: (PROGN 123.01) 123.01 Befehl: (PROGN 123.012) 123.012 Befehl: (PROGN 123.0123) 123.012 Befehl: (PROGN 123.01234) 123.012 Befehl: (PROGN 123012.3) 123012.0 auch hier sind nur 6 Ziffern signifikant!Befehl: (PROGN 123012.7) 123013.0 Befehl: (PROGN 1230123.4) 1.23012e+006 Befehl: (PROGN 0.0000091) 9.1e-006 ------------------ Mit freundlichem Gruß Udo Hübner [Diese Nachricht wurde von CAD-Huebner am 18. Dez. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mapcar Mitglied CADmin

 Beiträge: 1250 Registriert: 20.05.2002 Time flies like an arrow, fruit flies like a banana (Groucho Marx)
|
erstellt am: 19. Dez. 2004 19:25 <-- editieren / zitieren --> Unities abgeben:          Nur für BBlackBird
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |