Einzelnen Beitrag anzeigen

Benutzerbild von cumi
cumi

Registriert seit: 27. Jun 2004
Ort: Schweiz
27 Beiträge
 
#19

Re: schnellerer Zugriff auf Tbitmap

  Alt 7. Dez 2004, 20:56
Zitat von dizzy:
Immerhin ca. Faktor 3 (bei einfacher Addition). Hab hier mal einen Test mit so ziemlich allen Typen gemacht.
Hmm, hab jetzt mal alles in Double umgewandelt und ich hol ca. einen Faktor 2 an Zeit raus. Daher denke ich werd ich von jetzt an Double benutzen. Und wenn ichs dann doch mal noch genauer haben will ist es ja ein kleines das Programm nochmals schnell mit Extended zu compilieren.
Mal noch eine Frage. Was machst du eigentlich beruflich? Informatik ist nicht nur dein Hobby, oder? Ich bin immerwieder aufs neue erstaunt wie genau, dass du über all diese Dinge bescheid weisst.... Und hier gleich noch der absolut passende Test

Zitat von dizzy:
Das geht, allerdings nicht via TBitmap32.Pixels[], da du damit den Pixel incl. Alphawert ganz neu setzt. Du müsstest dir ein zweites TBitmap32 machen, und dort dein zu überblendendes Bitmap mit Transparenzen rein schreiben. (TBitmap32.BlendMode muss dann auf dmBlend gesetzt werden.) Dann kannst du das mit DrawTo() auf das erste drauf malen, mit Berücksichtigung der Alphawerte.
Kann ich mal ausprobieren, ja.
Jetzt bin ich gleich an einem Problem angelangt das eigentlich auch hierhinein gehört und zwar:
Ich habe zwei Farben (TColor32). Nun möchte ich einen Übergang von der einen in die andere berechnen. Ich nehme an, dass es hierfür von der GR32 auch Möglichkeiten gibt. Ich hab sie leider nur noch nicht gefunden

Zitat von dizzy:
Das ständige Freigeben und Neuerstellen ist imho sehr unsauber, zumal der Speichermanager von Delphi dazu neigt einmal alloziierten Speicher nicht umgehend an Windows zurück zu geben (zur Geschwindigkeitsoptimierung). Nimm besser eine einzige Variable vom Typ TBitmap32 und mache vor dem Neuzeichnen ein Clear(Color32(0,0,0));
Äh also das geht leider nicht weil ich immerwieder die Gröse ändere, also .Width und .Height neu setze (resize des Forms)...

Zitat von dizzy:
btw: Du schreibst "Stack". Objekte werden doch aber auf dem Heap angelegt, oder?
äh jo stimmt, so genau hab ichs nicht genommen Sagen wir einfach mal im Speicher


Zitat von dizzy:
Zitat von cumi:
Ah ja und gibts kei Tool von Delphi her welches einem anzeigt wo wieviel Speicher gebraucht wird? Ich benutze bis jetzt (ich weiss, dass es nichts dümmeres gibt ) den Taskmanager von WinXP. Ich zweifle jedoch an dessen Richtigkeit.....
Ich habe hier schon öfters Hier im Forum suchenmemproof gelesen. Benutzt hab ich es allerdings noch nicht.
Werd ich auch mal ausprobieren... Wäre schon noch schön ein genaueres Abbild des Speichers zu sehen.


Zum Schluss möcht ich dir, Fabian, nochmals ganz herzlich danken für deine Geduld mir alle Fragen zu beantworten. Bin ich echt mega super froh Denn wenn ich das alles in Büchern oder im Netz zusammensuchen müsste würd ichs glaub ich gar nicht finden oder dann hätte ich ein halbes Jahr

Greez cumi
Lorenz
  Mit Zitat antworten Zitat