Zeichnug fortsetzen
-
Danke für Eure promten Antworten!
Das mit der Schleife hatte ich schon mal.Ist aber nicht ganz das was ich meine.
Für jedes Pixel gibt es andere x+y-Werte und daraus ergibt sich dann eine Kurve.
Es soll also ein Pixel gezeichnet werden,danach werden x+y-Wert neu gesetzt und es wird wieder ein Pixel gezeichnet.Das "alte" Pixel soll dabei erhalten bleiben.Was versteht man darunter? Kann ich dazu noch ein paar Erläuterungen bekommen?!
Mach die Zeichnung in einen Memory-DC und bei WM_PAINT blittest du den ganzen.
-
<Zonk> meinte du sollst so vorgehen:
1. Pixel zeichnen in Tempbuffer 2. Tempbuffer auf das Fenster zeichnen 3. Komplettes Bild sichern in Tempbuffer 4. Neue Pixel berechnen 5. Und wieder zu 1.
So habe ich das verstanden.
Erklär mal genauer dein Problem, dann kann ich dir vielleicht helfen.
Es könnte ja schließlich u. U. auch eine ganz andere lösung für dein Problem geben...cu para
-
wofür punkt 3 ?
da ist doch schon das komplette drin, wenn er da immer mit SetPixel draufmalt
-
Hier mal mein Ziel etwas genauer!
Ich möchte gern ein Programm schreiben, welches ähnilch dem Windows-Taskmanager die Arbeitsspeicher-Belegung grafisch darstellt.
Die Speicherbelegung auslesen ist nicht das Problem!Das klappt wunderbar.
Bloß halt das zeichnen der kurve klappt noch nicht!
-
Du könntest die ausgelesenen Werte z.B. in einem Array ablegen und dann mit Polyline die Kurve zeichnen
Du musst doch eigentlich eh immer alles neu zeichnen, da die Kurve ja nach links wandert
-
Original erstellt von <punkt>:
**wofür punkt 3 ?da ist doch schon das komplette drin, wenn er da immer mit SetPixel draufmalt**
deshlab brauchst du nicht gleich so böse gucken... :p
Das mit dem Array ist wohl ne gute Idee....
-
Also ich schätze du willst das machen beim Taskmanager mit dem Speicher da...
Dann würde ich das so machen:
Sagen wir mal dein Feld wo du das Diagramm zeichnen willst ist 300 Pixel lang, dann mach einfach ein Array mit den jeweiligen Werten, also iAuslastung[300]
Das ist jetzt praktisch eine Zuordnungstabelle.Dann zeichnest du, wie flenders bereits erwähnt mit PolyLine das Array.
Dann willst du den neuen Wert auch zeichnen, folglich den Inhalt des Array vom Ende zum Anfang hin um eins verschieben und den neuen Wert am Ende einfügen.Dann kannst du jedesmal alles löschen (DC) und den Array neu malen. Müsste gehen
cu para
[ Dieser Beitrag wurde am 02.04.2003 um 14:19 Uhr von paranoiac.org editiert. ]
-
Besten Dank für Eure Vorschläge!
Das mit dem Array werde ich Versuchen und mich dann nochmal melden!
:p
-
Original erstellt von paranoiac.org:
Dann kannst du jedesmal alles löschen (DC) [...]Kleine Nebenfrage: wie geht das ohne ein neues DC zu erstellen und das alte zu löschen?
-
Vielleicht klapp es, wenn man einfach WM_ERASEBKGND abfängt