AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Zeichenroutine frisst zuviel Speicher
Thema durchsuchen
Ansicht
Themen-Optionen

Zeichenroutine frisst zuviel Speicher

Ein Thema von ak1 · begonnen am 26. Jan 2004 · letzter Beitrag vom 26. Jan 2004
Antwort Antwort
Seite 2 von 2     12   
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#11

Re: Zeichenroutine frisst zuviel Speicher

  Alt 26. Jan 2004, 18:36
@Dizziy, das ist eine beeindruckende Rechnung, komischerweise lassen sich die Bilder, welche nur halb so gross sin, anzeigen. Und 40GB hat die Auslagerungsdatei bestimmt nicht ....ich werde das Bild zerhacken, weil es anders wohl nicht geht.


Gruß
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Zeichenroutine frisst zuviel Speicher

  Alt 26. Jan 2004, 19:05
Ach du K***, hab mich da voll vertan an einer Stelle... Ich hab' die Kilobytes vergessen :\

Also heisst es:

718.248.960 Bit = 89.781.120 Byte = 87.677 kB = 85,62 MB

Mal für 32Bit-Bitmaps:
957.665.280 Bit = 119.708.160 Byte = 116.902,5 kB = 114,2 MB


Dann sieht das nicht mehr nach so viel aus
Aber trotz alle dem nicht gerade klein, und je nach dem was alles im Hintergrund mitläuft, und wieviel RAM dann noch über ist, können auch 100MB einem in die Suppe spucken.

Aber es kann grundsätzlich nicht schaden, solche Riesenausgaben wie beschrieben zu unterteilen.


gruss,
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#13

Re: Zeichenroutine frisst zuviel Speicher

  Alt 26. Jan 2004, 19:45
selbst wenn das unter XP läuft unter 98 geht das mit so grossen Bildern niemals. Das Bild muss zerteilt werden wie das jetzt in deinem Fall geht kann man ohne code nicht sagen.

Delphi-Quellcode:
ich würde das in etwa so machen:

type
  TBildteil = object;
  puplic
    width,height: integer;
    left,top: integer;
    Bild: TBitmap;
    constructor create;
    destructor destroy; override;
  end;

[..]

constructor TBildteil.create;
begin
  inherited;
  Bild := TBItmap.create;;
end;

destructor TBildteil.destroy;
begin
  Bild.free;
  inherited;
end;


var
  Bildteil : array [0..2,0..2] of TBildteil;

[..]
for x:=0 to 2 do
begin
  for y:=0 to 2 do
  begin
    Bildteil[x,y] := TBildteil.create;
    Bildteil.left := x;
    Bildteil.top := y;
  end;
end;

Bildteil[0,0].bild.asign(BIldteil1)
....


zeichnen:
for x:=0 to 2 do
begin
  for y:=0 to 2 do
  begin
    //hab im Moment keien Zeit mehr
  end;
end;
mfg
  Mit Zitat antworten Zitat
ak1

Registriert seit: 12. Okt 2003
243 Beiträge
 
#14

Re: Zeichenroutine frisst zuviel Speicher

  Alt 26. Jan 2004, 19:47
@Dizzi und Co.

ich hab aus einem andern forum einen interessanten Link zum Thema bekommen:
http://www.efg2.com/Lab/Graphics/VeryLargeBitmap.htm

Es liegt wohl weder an Delphi, sondern vielmehr an Windows, welches Probleme mit grossen bildern hat. Da kann der speicher nur bedingt etwas ausrichten, da ja in meinem Fall 512 MB hätten ausreichen müssen...aber lest selbst.
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Zeichenroutine frisst zuviel Speicher

  Alt 26. Jan 2004, 21:21
Hat ja keiner gesagt, dass es an Delphi läge
Die Seite kannte ich sogar schon - diesen Artikel hab ich mir zu meiner Schande aber noch nie angesehen - sehr hilfreiches Zeug da!

Aber das zeigt ja noch deutlicher, dass man auf jeden Fall splitten sollte, wenn das Programm auch noch auf älteren Rechnern lauffähig sein soll. Wahrscheinlich liegst du mit deiner Bildgröße mit im oberen Drittel (Wertemäßig, nicht der Position nach gesehen) der dort gezeigten Tabelle.

Danke aber für den Hinweis. Wer weiss, ob man nicht ganz fix selber vor dem gleichen Problemchen steht...


gruss,
dizzy
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  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 20:29 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