AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas
Thema durchsuchen
Ansicht
Themen-Optionen

100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

Ein Thema von holle · begonnen am 21. Sep 2006 · letzter Beitrag vom 21. Sep 2006
Antwort Antwort
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#1

100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:12
Hi, ich habe ein großen Problem. Ich habe eine Ampelkreuzung erstellt mit einer Grafik als Hintergrund auf die ich die verschiedenen Autos alle 10 ms zeichne. Das ganze ist allerdings so aufwendig, dass es meinen PC (2 GHz, 256 MB) vollkommen auslastet. Was kann ich tun, um den Rechenaufwand zu verringern? (Ich habe das Programm angehangen.)

mfg holle
Angehängte Dateien
Dateityp: zip ampelkreuzung_159.zip (45,8 KB, 20x aufgerufen)
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von vlees91
vlees91

Registriert seit: 19. Apr 2004
843 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:29
Kann es sein, dass bei sowas die Prozessorauslastung immer sehr hoch ist, denn bei eigenen Projekten hatte ich das Problem auch
vlees91
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#3

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:33
HI,
wie wäre es denn einfach damit seltener zu zeichnen. Alle 10 ms sind immerhin 100 Hertz, die erreichen ja schonmal alle Flachbildschirme (häufig bei 60 Hz) gar nicht. Das Auge kann da auch nicht mithalten, ist also eh nicht sehr sinnvoll.
Da solltest du es mal mit deutlich höheren Intervalen versuchen. Wenn es zu sehr ruckelt, dann liegt das eher an der Art zu zeichnen, da lohnt sich dann dir Forensuche nach zeichenroutinen und -bibliotheken (wie die Grafics32 und GDI+), die können dass dann eigentlich recht schön und schnell.

Gruß Der Unwissende
  Mit Zitat antworten Zitat
uwewo

Registriert seit: 14. Jul 2004
Ort: Karlsruhe
479 Beiträge
 
Delphi 2006 Professional
 
#4

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:37
Hi,

warum verwendest Du kein Array für Dein TFahrzeug

  Fahrzeug : Array [1..12] of TFahrzeug; das macht Deinen Code doch viel übersichtlicher.

Desweiteren könntest Du doch auch 3 Grafiken der Ampeln erstellen Rot, Grün, Gelb die man
doch je nach Zustand laden könnte, dann muß nich soviel gezeichnet werden.
Uwe
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:42
danke für die antworten

ich werde versuchen das intervall zu vergrößern, ich hoffe es fängt dann nicht an zu ruckeln.

mit dem array werde ich das mal probieren (hatte ich auch schon dran gedacht)

Zitat von uwewo:
Desweiteren könntest Du doch auch 3 Grafiken der Ampeln erstellen Rot, Grün, Gelb die man
doch je nach Zustand laden könnte, dann muß nich soviel gezeichnet werden.
die ampeln werden ja nicht gezeichnet, das sind shapes...

mfg holle
Marcel
  Mit Zitat antworten Zitat
Benutzerbild von vlees91
vlees91

Registriert seit: 19. Apr 2004
843 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:51
20hertz sind auch genug
vlees91
  Mit Zitat antworten Zitat
uwewo

Registriert seit: 14. Jul 2004
Ort: Karlsruhe
479 Beiträge
 
Delphi 2006 Professional
 
#7

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 14:55
Zitat von holle:
die ampeln werden ja nicht gezeichnet, das sind shapes...
Schon klar aber jede Ampel besteht aus mehreren Shapes, immer anderen Fall hast Du
3 Bilder im Speicher die Du an die gewünschten Stellen kopierst.
Uwe
  Mit Zitat antworten Zitat
Gandalfus

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

Re: 100% CPU-Auslastung beim Zeichnen auf PainBox.Canvas

  Alt 21. Sep 2006, 19:05
Zitat:
Wenn es zu sehr ruckelt, dann liegt das eher an der Art zu zeichnen, da lohnt sich dann dir Forensuche nach zeichenroutinen und -bibliotheken (wie die Grafics32 und GDI+), die können dass dann eigentlich recht schön und schnell.
gdi+ ist nur ein wrapper klasse für die GDI. Also nicht schneller.
Besucht doch mal meine Homepage
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:37 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