Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
cartun
Anmeldungsdatum: 08.01.2009 Beiträge: 9
|
Verfasst am: 08.01.2009, 18:57 Titel: Bestimmte Grafiken/Draws löschen und andere nicht anrühren. |
|
|
Hallo@all,
angenommen ich erstelle eine Oberfläche die mit einer Skala/Gitternetz übern kompletten Bildschirm geht.
Nun möchte ich, dass der User nun Daten für Circle etc eingeben kann, am Gitternetz soll er sich nur Orientieren können.
Jetzt hat der User nun Circle (200,200),radius eingegeben, der Kreis ist nun Sichtbar... jetzt gibt er nochmals Circle (200,250),radius ein... der alte Circle soll verschwinden also nutze ich CLS....
Natürlich ist jetzt auch das Gitter weg.
Wie kann man es anstellen, dass dieses Gitter bleibt aber andere Grafiken (wie der Kreis) verschwinden?
Gibt es da tricks oder muss wirklich alles neu gezeichnet werden?
(Ich kenne sowas mit Layern die man schützen kann) |
|
Nach oben |
|
|
nemored
Anmeldungsdatum: 22.02.2007 Beiträge: 4609 Wohnort: ~/
|
Verfasst am: 08.01.2009, 19:07 Titel: |
|
|
Eine Möglichkeit wäre, vor dem Zeichnen des Kreises den Bildschirminhalt zu speichern (wie das genau in QBASIC geht, weiß ich nicht - zu lange her) und dann zum "Löschen" des Kreises wieder herzustellen. Sonst fällt mir noch die Zeichenroutine mit Schlüsselwort XOR ein - daszweite Mal Zeichnen setzt das erste Mal zurück - aber ob das einsetzbar ist, hängt davon ab, ob es Probleme mit der Hintergrundtextur gibt. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2510 Wohnort: Hofen SH (Schweiz)
|
Verfasst am: 08.01.2009, 20:43 Titel: |
|
|
Ein bekanntes Problem aus der CAD-Welt. Mit denjenigen Systemen, wo ich früher arbeitete, wurde QB-mässig beim Löschen und Verschieben/Transformieren das Element einfach mit der Hintergrundfarbe gezeichnet, d.h. in QB einfach denselben LINE und CIRCLE mit Farbe 0!
Damals war es daher vollkommen normal, dass schwarze Lücken bei von der Transformation unberührten Linien und Kreise, mit denen sich die bearbeiteten Linien und Kreise überschritten haben, optisch entstanden (im Arbeitsspeicher waren aber die Vektoren selbstverständlich immer noch komplett). Aus diesem Grund war bei praktisch jedem CAD-System auch damals ein REDRAW-Kommando (z.B. "neuzeich" bei AutoCAD) vorhanden.
Eigentlich erst mit der genügend hohen CPU-Rechenleistung hat der "Luxus" mit dem automatischen Regenerieren von dahinterliegenden Objekten begonnen. _________________ Teste die PC-Sicherheit mit www.sec-check.net |
|
Nach oben |
|
|
cartun
Anmeldungsdatum: 08.01.2009 Beiträge: 9
|
Verfasst am: 10.01.2009, 11:57 Titel: |
|
|
Aha Admin,
tolle Antwort. Sehr Interessant... danke, sehr Lehrreich.
Ich kenne diese komischen Lücken die früher bei vielen Grafikprogrammen enstanden sind... jetzt weiss ich auch Warum.
So in etwa habe ich es mir auch gedacht, einfach wieder die das gleiche Objekt am Hintergrund anpassen.... ich dachte nur, es gibt evtl. auch eine andere Lösung...
lg |
|
Nach oben |
|
|
|