![]() |
Brett vorm Kopf: Prozent(um-)rechnung/Maßstab
Hallo zusammen,
irgendwie habe ich ein Brett vorm Kopf. :wall: :wall: Ich benutze für eine Darstellung die ![]() ![]() ![]() Der freundliche Anwender kann über Eingabefelder (Absolut-)Werte im Bereich von -32768..+32768 frei eingeben, diese Werte jedoch müssen für die grafische Darstellung auf dem Komponentenbereich 0..100 (Prozent) skaliert bzw. umgerechnet werden. Bsp.-Eingaben des Anwenders: Max.: +200 Min.: -80 Schwellwert 1: -10 (untere Grenze) Schwellwert 2: +50 (obere Grenze) Ich weiß: Gesamt = (Max.) - (Min.) = 280 = 100% // Klammern bewusst gesetzt Die Schwellwertprozente: SW_P1 = (-10) * 100 % / 280 = -3,6% SW_P2 = (+50) * 100% / 280 = +17,9% Das ganze muss nun skaliert werden auf den Bereich der Komponenten von 0..100. Ich weiß: Min. = - 80 = 0% Max. = +200 = 100% SW1 = -10 = -3,6% SW2 = +50 = +17,9% Aber wie "hebe" ich jetzt die beiden SW-Angaben sinnvoll in den Bereich 0..100 der Komponente? Dank vorab und Gruß, Carsten |
Re: Brett vorm Kopf: Prozent(um-)rechnung/Maßstab
Du musst bei den Schwellwerten die untere Grenze berücksichtigen:
Max.: +200 => 100% Min.: -80 => 0% Schwellwert 1: -10 (untere Grenze) => 100%*((-10) - (-80))/((+200) - (-80)) = 25% Schwellwert 2: +50 (obere Grenze) => 100%*((+50) - (-80))/((+200) - (-80)) = 46,43% Allgemein: 100*(Wert - Min)/(Max - Min) = <Wert in Prozent> |
Re: Brett vorm Kopf: Prozent(um-)rechnung/Maßstab
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz