AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Graphics32-Frage!!

Ein Thema von bingo72 · begonnen am 25. Jul 2007 · letzter Beitrag vom 30. Aug 2007
Antwort Antwort
Seite 2 von 2     12   
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#11

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:06
Leider hilft auch Dein letzter Vorschlag nicht...

Es scheint wirklich so zu sein, daß bei Graphikkarten die keine 32bit- Farbtiefe darstellen können, eine Verwendung von Graphics32 nicht möglich ist??!!
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#12

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:09
sind bei der Graphics32 keine Quelltexte dabei? dann könntest du ja schauen wie der Resampling-Algorythmus aussieht
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#13

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:27
Ich hab jetzt nochmals alles durchdebugt und es stellt ihn beim Resampling in der Draw-Methode auf...
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#14

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:30
Aber es ist eben die Frage bei welchem Teil in der Resampling-Methode. Es muss ja versucht werden funktionen zu verwenden welche mit der aktuellen Farbtiefe zu tun haben (obwohl die aktuelle Farbtiefe eigentlich da nicht rein gehört weil es nicht um die anzeige geht)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#15

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:45
Delphi-Quellcode:
function BuildMappingTable(
  DstLo, DstHi: Integer;
  ClipLo, ClipHi: Integer;
  SrcLo, SrcHi: Integer;
  Kernel: TCustomKernel): TMappingTable;
var
  SrcW, DstW, ClipW: Integer;
  Filter: TFilterMethod;
  FilterWidth: TFloat;
  Scale, OldScale: TFloat;
  Center: TFloat;
  Count: Integer;
  Left, Right: Integer;
  I, J, K: Integer;
  Weight: Integer;
begin
  SrcW := SrcHi - SrcLo;
  DstW := DstHi - DstLo;
  ClipW := ClipHi - ClipLo;
  if SrcW = 0 then
  begin
    Result := nil;
    Exit;
  end
  else if SrcW = 1 then
  begin
    SetLength(Result, ClipW);
    for I := 0 to ClipW - 1 do
    begin
      SetLength(Result[I], 1);
      Result[I][0].Pos := 0;
      Result[I][0].Weight := 256;
    end;
    Exit;
  end;
  SetLength(Result, ClipW);
  if ClipW = 0 then Exit;

  if FullEdge then Scale := DstW / SrcW
  else Scale := (DstW - 1) / (SrcW - 1);

  Filter := Kernel.Filter;
  FilterWidth := Kernel.GetWidth;
  K := 0;

  if Scale = 0 then
  begin
    Assert(Length(Result) = 1);
    SetLength(Result[0], 1);
    Result[0][0].Pos := (SrcLo + SrcHi) div 2;
    Result[0][0].Weight := 256;
  end
  else if Scale < 1 then
  begin
    OldScale := Scale;
    Scale := 1 / Scale;
    FilterWidth := FilterWidth * Scale;
    for I := 0 to ClipW - 1 do
    begin
      if FullEdge then
        Center := SrcLo - 0.5 + (I - DstLo + ClipLo + 0.5) * Scale
      else
        Center := SrcLo + (I - DstLo + ClipLo) * Scale;
      Left := Floor(Center - FilterWidth);
      Right := Ceil(Center + FilterWidth);
      Count := -256;
      for J := Left to Right do
      begin
        Weight := Round(256 * Filter((Center - J) * OldScale) * OldScale);
        if Weight <> 0 then
        begin
          Inc(Count, Weight);
          K := Length(Result[I]);
          SetLength(Result[I], K + 1);
          Result[I][K].Pos := [b]Constrain(J, SrcLo, SrcHi - 1);[/b] --> hier stellt es ihn auf!!
          Result[I][K].Weight := Weight;
        end;
      end;
     [...]
[edit=SirThornberry]Delphi-Tags gesetzt - Mfg, SirThornberry[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:47
bist du mal mit F7 durchgesteppt an welcher stelle es genau knallt?

[Edit]Hab den Kommentaar im Quelltext gefunden.
Wie sieht das Meckern aus? welche Meldung kommt?

Kannst du mal in die Funktion/procedure/Methode "Constrain" rein steppen an welcher Stelle es dort knallt?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#17

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 16:59
Delphi-Quellcode:
function Constrain(const Value, Lo, Hi: Integer): Integer;
{$IFDEF USEINLINING}
begin
  if Value < Lo then Result := Lo
  else if Value > Hi then Result := Hi
  else Result := Value;
{$ELSE}
asm
        CMP EDX,EAX
        [b]db $0F,$4F,$C2 /// CMOVG EAX,EDX[/b] --> hier knallts!!
        CMP ECX,EAX
        db $0F,$4C,$C1 /// CMOVL EAX,ECX
{$ENDIF}
end;

Mit folgender Fehlermeldung:

Externe Exception C000001D
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#18

Re: Graphics32-Frage!!

  Alt 25. Jul 2007, 17:00
Ja hab mit F7 durchgesteppt, um an die Stelle zu kommen!!
  Mit Zitat antworten Zitat
bingo72

Registriert seit: 18. Aug 2006
Ort: Österreich
180 Beiträge
 
Delphi 5 Professional
 
#19

Re: Graphics32-Frage!!

  Alt 30. Aug 2007, 16:24
Der Grund wie sich später herausstellte:

Der PC konnte keine 32-bit-Farben darstellen und von daher kamen die Probleme!! Also Graphics32-Komponenten auch wirklich nur bei 32-bit-Graphikkarten verwenden!!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:49 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