Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


Hallo Gerhard,

herzlichen Dank für den ausführlichen Kommentar zu den Eingabewerten bei Größenangaben. Ich hätte es wissen oder zumindest argwöhnen müssen, dass intern möglicherweise mit Twips gerechnet wird. Aber es war für mich eine Art Schock, nach einer Eingabe von
oSheet.getCellByPosition(0, 1).Rows.Height = 350
die Ausgabe
oSheet.getCellByPosition(0, 1).Rows.Height '349
zu finden, die ich zuerst gar nicht auf dem Schirm hatte.

Vielleicht bin ich ja nicht der einzige, der zu unbedarft mit diesen Werten umgeht, zumal in den allermeisten Fällen eine Differenz von einem Hundertstel Millimeter völlig unerheblich ist. So mag dieser Dialog dem einen oder anderen eine Hilfe sein.

Schöne Grüße
Volker

Am 11.11.2017 um 02:03 schrieb Gerhard Weydt:
Hallo Volker,

ich mische mich erst verspätet in die Diskussion ein, in späteren Mails als der, auf die ich diese Antwort schicke, ist schon vieles gesagt, insbesondere Thomas Krumbeins Hinweis auf "ma" oder "twips" - findest du auch etwas ausführlicher in seinem Buch über Makros - bringt den eigentlichen Kern des Problems herein, nämlich die Notwendigkeit der Umrechnung in geräteabhängige Maßeinheiten. Aber die Mail, auf die ich antworte, ist für mich der Kern der Fragestellung. Die Gleichsetzung der Eingabe eines ganzahligen Wertes mit dem abstrakten Konzept einer Ganzzahl ist nicht schon nicht ganz ohne. Das sieht so aus, weil die zugehörige Maßeinheit z.B. 1/100 mm ist, aber ist das dann eine saubere Ganzzahl? In welchem Kontext? Ganze Zahlen kommen meiner Meinung nach vom Zählen, und von da zum Messen von Abständen, wofür du ja die Gannzahl verwendest, ist ein weiter Weg. Bedenke: wir sind hier mit praktischen Dingen beschäftigt und nicht mit Theorie (ich bin selbst Mathematiker!), und man muss immer den Kontext bedenken. Du könntest sagen, es sei eine Dezimalzahl mit z.B. 3 fixen Nachkommastellen, das sei fast das gleiche. Das Problem ist, dass du diese Zahl meist mit einer anderen in Beziehung setzen musst (schon wenn du z.B. eine Tabelle mit drei Spalten auf einer Seite darstellen willst, da hast du gleich ein Verhältnis mit einem unendlichen, wenn auch periodischen Dezimalbruch, auch im Binärsystem, und den kann man nicht mit endlich vielen Nachkommastellen darstellen, die es einfach braucht wenn man ein allgemein verwendbares System bereitstellen will), und damit bist du sebst bei der vereinfachenden Annahme, dass alles im metrischen System läuft, schon beim Problem von Rundungen und den daraus folgenden Ungenauigkeiten, mit denen du rechnen musst.  Mag sein, dass man ein geschicktes System für die Behandlung von Brüchen mit EDV entwerfen könnte, aber dann brauchen wir ja auch mal Quadratwurzeln und sonstige algebraische Zahlen und mit Sinus u.ä. auch transzendente Zahlen, und dann landen wir pragmatisch wieder bei Annäherungen durch endliche Brüche. Hinzukommen die Berücksichtigung unterschiedlicher Maßsysteme (Zoll!) und die schon genannten Geräte-spezifischen Anforderungen. Die Programmierer müssen all das berücksichtigen, und wenn sie das mit Double-Variablen tun, nützen sie den Typ, der die höchste Präzision hergibt. Das funktioniert ja auch annähernd bzw. ziemlich genau, und wer mehr will, muss sich selber bemühen. Du weißt das ja auch und tust das entsprechend, mir geht es nur darum, ein Verständnis für die Schwierigkeiten zu wecken, die in dem Thema stecken. Dabei ist das auch nur eine Außenansicht, ich bin in diesen Themen nicht aktiv, ich versuche nur, die Prinzipien nachzuvollziehen.

Gruß

Gerhard

--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.