Metoda zwracająca aktualną wartość w ciągu określonego czasu

0

Cześć,

Mam pytanie - czy pomoglibyście w napisaniu metody/funkcji która zwracałaby wartość z zakresów zdeklarowanych w określonym czasie zwiększając ją lub zmniejszając.

wartość aktualna = Funkcja(wartość poczatkowa, wartość docelowa, czas zmiany w minutach);

Pozdrawiam,
A.

1

Pokaż co masz. Jak to jest wszystko co masz to szału nie ma.

0

W taki sposób w jaki chcesz to zrobić, to będzie trudne, jeśli nie niemożliwe. Tu musisz oprzeć się na zdarzeniu albo jakimś delegacie chociaż (callbacku). I teraz pytanie, co chcesz robić z tą wartością? Czy wrzucać ją gdzieś na GUI? Czy to jest aplikacja desktopowa, mobilna, czy web?

0

@UglyMan: @Juhas:

static float Pwms(int lastColor, int targetColor, int fadeHours, int fadeMins, bool fade_state)
        {
            //long fadeTimeLeftMinutes = 0;
            float currentColor = 0;
            float elapsedTime;
            long fadeDurationMillis;
            if (fade_state == true)
            {
                long fadeDurationSeconds = ((fadeHours * 60 * 60) + (fadeMins * 60));
                fadeDurationMillis = (fadeDurationSeconds * 1000);
                elapsedTime = WiringPi.Timing.millis() - fadeStartTime;
                float fadeLevel = elapsedTime / fadeDurationMillis;
                // var fadeTimeLeft = fadeDurationMillis - Convert.ToInt64(elapsedTime * 1000) / 1000;
                // fadeTimeLeftMinutes = (((fadeTimeLeft / 1000) / 60) + 1);
                int fadeAmountColor = lastColor - targetColor;
                currentColor = lastColor - (fadeAmountColor * fadeLevel);
                if (fadeAmountColor >= 0 && currentColor <= targetColor) { }
                else if (fadeAmountColor <= 0 && currentColor >= targetColor) { }
                else
                    return currentColor;
            }
            return currentColor;
        }  

to mam i działa - trochę skomplikowanie ale jest ok. Chciałbym to uprościć do minimum.

chodzi o plynne zmiany wartości pwm o okreslonej godzinie uruchamia sie ten kod i zmienia przez okreslony czas od wartosci do wartosci

0

Co to jest WiringPi? Co chesz uzyskać (konkretnie, np. chcę, żeby label zmieniał kolor)? W jakiej technologii?

0

@Juhas: To biblioteka dla Raspberry bo to na tym ma działać

1 użytkowników online, w tym zalogowanych: 0, gości: 1