AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 15:02

Parameter dieser Suchanfrage:

Suche in Thema: Farbwert zu Dezimal
Suche alle Beiträge, die von "Klaus01" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 24 von insges. 24 Treffern
Suche benötigte 0.001s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 30. Mär 2019
    Hab' mich verlesen/ es falsch verstanden.
    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 30. Mär 2019
    . ein 32bit Value and $FF maskiert den 32bit auf ein Byte.
    $FFCCDD01 and $FF ($000000FF) ergibt $01
    Bit Algebra :
    0 and 0 = 0
    0 and 1 = 0
    1 and 0 = 0
    1 and 1 = 1
    Grüße Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    ein letztes update
    alpha ist wieder ein Byte (ich fühl mich wohler damit)

    for y:= 0 to h do
    for x := 0 to w do
    begin

    alpha := ((imgSpectrum and $FF000000) shr 24) and $FF;
    c := imgSpectrum and $FFFFFF;
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    Je näher fading zur 1 rückt desto häufiger geht es in den else Zweig.
    Bei d = 153 (f=0.6) kann _alpha nicht mehr größer als 127 werden.

    alpha max = 255 und _alpha = alpha - d

    Wenn man mit der Hilfsvariablen arbeitet muss alpah noch in der Berechnung angepasst werden.

    if _alpha > 127 then
    imgSpectrum := c or (((alpha - d) -256) shl 24)
    ...
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    Ja, aber mit dem Fadingwert von 0.32 häufiger in den else Zweig.
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. das mit der Hilfsvariablen ist eine gute Idee:

    for y:= 0 to h do
    for x := 0 to w do
    begin

    alpha := ((imgSpectrum and $FF000000) shr 24) and $FF;
    _alpha := alpha - d;
    // if alpha < 0 then
    // alpha := 0;
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. der verändert sich nicht, in der Routine,

    Hatte das round falsch angewendet. round(0.4) -> 0
    Nun mit round(0.25 * 255) ist d dann 64

    und ja, auch mit diesen Werten wird der else Zweig aufgerufen.
    Wenn alpha und d entsprechende Werte haben.

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. wenn für fade 0.4 nehme (geht das erstmal nicht dem Integer zuzuweisen)
    Wenn ich da ein round drumpacke dann wird das auf 0 gerundet.

    Damit hängt es dann vom alpha Wert von imgSpectrm ab wie groß
    der alpha - d Wert wird.

    d pendelt eigentlich immer zwischen 0 und 1.
    Soll das so sein?

    Mit den Zufallswerten in imgSpectrum und d wird auch ab und an der else Zweig aufgerufen.
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. mach aus Deinem alpha: Integer mal ein alpha: Byte


    0: begin
    d := fade * 255;
    // nur für Tests
    //d := round((random(10) /10)) *255;
    for y:= 0 to h do
    for x := 0 to w do
    begin
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. wenn es da funktioniert, dann kann imgSpectrumData nicht nur mit Nullen gefüllt sein.

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. aber wenn d einen wert größer als 0 hat
    und alpha so berechnet wird ->
    alpha := ((imgSpectrum and $FF000000) shr 24) and $FF;
    alpha := alpha - d

    ist dann nicht alpha immer < 0?

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. kannst Du nit die "fade" oder "d" Werte in eine Datei schreiben lassen?

    Mit den Werten könnte man die Funktion dann testetn.

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. ich ging davon aus, das Daten im imgSpectrum vorhanden sind.
    Wenn das Array leer ist, bzw mit 0en gefüllt, dann kann alpha nie > 127 sein.
    Oder vielleicht, doch das ist dann aber abhängig von "fade".

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    Sauer sein macht Falten..

    Setze doch mal eine Breakpoint auf
    alpha := ((imgSpectrum and $FF000000) shr 24) and $FF;

    Markiere imgSpectrum, drücke ctrl+F5
    das gleiche mache mit alpha.
    Editiere die beiden Watcheinträge, und lass sie als Hexwert ausgeben.

    Jetzt schau mal was in den imgSpectrum Array drin steht.
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    es hat noch eine Zeile gefehlt:

    alpha := (alpha div 9) - d

    Habe es oben ergänzt.

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    ein Schreibfehler meinerseits: sollte imgSpectrum heißen nit

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. ein Versuch:
    var
    imgSpectrum: Array of Integer;
    h,w: Integer;
    x, dx ,y, dy: Integer;
    c,d,red,green,blue: Integer;
    alpha: Integer;

    fade: Integer;
    mEffect: Byte;
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 29. Mär 2019
    .. in VB6 ist long ein signed 32bit Datentyp.
    Ab VB2005 ist long ein signed 64bit Datentyp.

    Grüße Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    Nö, das bleiben 32Bit Werte, wenn c ein 32Bit Wert ist.

    32Bit and $FF000000 bleibt ein 32Bit Wert, c wird nur mit $FF000000 maskiert.
    Anschließend 24Bit nach rechts verschoben. Links von dem verschoben Wert stehen Nullen.
    Es ist aber weiterhin ein 32Bit Wert.
    mit and $FF wird er zu einem Byte.

    Grüße
    Klaus
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    var
    test32Bit: cardinal;
    test8Bit: Byte;
    begin
    try
    { TODO -oUser -cConsole Main : Insert code here }
    test32Bit := $ABCDEF89;
    test8Bit := (test32Bit shr 24) and $FF;
    writeLn(intToHex(test8Bit));
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    a := ((Buf shr 24) and 256) - d

    $AAbbggrr shr 24
    $000000AA and $FF
    $AA

    wenn Du 256 verwendst - passt das nicht in ein Byte


    $AAbbggrr shr 24
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    .. wieso rechnest Du mit 256 - $FF entspricht 255

    a := ((Buf shr 24) and 256) - d; // muss 256 hier addiert werden oder nicht!

    es werden hier nicht 256 addiert - das ist eine logische Verknüpfung.
    Hier wird schlicht eine Wert maskiert, vor dem "and " war der Value noch 32bit breit
    mit der makierung wird erreicht das er nur noch 8Bit breit ist.

    Daher nehme ich auch an, dass mit 255...
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    .. kein Problem.


    if a > 127 then
    SpectrumData2D := c or ((a - 256) * $1000000) // hier komm ich nicht klar wegen den $1000000
    else
    SpectrumData2D := c or (a * $1000000); // hier komm ich nicht klar wegen den $1000000
    end;

    sollte in etwas so aussehen:
  • Forum: Multimedia

    AW: Farbwert zu Dezimal

      Delphi
      by Klaus01, 28. Mär 2019
    ..ist noch früh aber solltest Du nicht nach rechts shiften?
    Du willst aus einem 32bit Value das Highbyte haben.

    Grüße Klaus


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=Klaus01&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=200198
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz