![]() |
Float wert an einen anderen "angleichen" über eine
Hi,
ich bin gerade dabei, mehr oder weniger, eine Funktion zu schreiben dir mir einen Wert an einen anderen angleicht, gibt es vllt. schon so etwas in der art:
Delphi-Quellcode:
ich möchte damit schwankende Werte weicher fallen oder ansteigen lassen, also z.B. nicht von 20 runter auf 5 sonder erst auf 15 oder der gleichen.
function Adapt(Value,Target,Tolerance:Extended):Extended;
Habt ihr eine Idee oder einen Denkanstoß dazu? Ich da gerade total das Logik Problem mit :gruebel: :drunken: Gruß Daniel |
Re: Float wert an einen anderen "angleichen" über
Könnte man mit DIV erreichen
|
Re: Float wert an einen anderen "angleichen" über
Meinst du vielleicht eine Interpolation?
|
Re: Float wert an einen anderen "angleichen" über
Zitat:
@Tubos Interpolation ist ja mehr für Grafiken, aber kann man sicher etwas für meine Zwecke von anwenden, aber gute Idee muss ich mal suchen. // Edit: ich glaub ich hab es jetzt soweit hingewurstet das es funktioniert...
Delphi-Quellcode:
vllt. hat ja trozdem etwas besseres? ;)
function Adapt(Value,Target,Tolerance:Extended):Extended;
var MinTolerance,MaxTolerance:Extended; begin Result:=Value; MinTolerance:=Target - ((Target / 100) * (Tolerance + 1)); MaxTolerance:=Target + ((Target / 100) * (Tolerance + 1)); if NOT ((Value >= MinTolerance) AND (Value <= MaxTolerance)) then begin Result:=(Target + Value) / 2; end; end; //Noch ein Edit: Ich glaub ich bin zu blöd dafür irgendwie geht das nicht so wie ich mir das vorstelle, oder ich sollte einfach schlafen gehen und Morgen weitermachen... |
Re: Float wert an einen anderen "angleichen" über
Zitat:
Zwischenwert = ZahlA + (ZahlB - ZahlA) * Faktor , wobei 0 < Faktor < 1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 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