Wenn ich in der "Processing" Umgebung weisse Linien auf den schwarzen Hintergrund ausgebe und diese dann durch Überschreiben mit schwarzen Linien an der gleichen Stelle löschen will bleiben teils graue Schatten von den weissen Linien übrig. Hat jemand eine Idee um das zu verhindern ?
Martin O. schrieb: > Hat jemand eine Idee um das zu verhindern > ? Jo, starr nich solange auf den Monitor!
Breiter drüber malen, ganzes Bild neu malen, Anti Aliasing beim Linien malen ausschalten,....
Ja, hängt mit dem Antialiasing zusammen. In Processing gibts eine Option, die irgendwas / irgendwie mit "...smooth ... " heisst. Mal in der Referenz nachlesen, kann abgeschaltet werden.
> Jo, starr nich solange auf den Monitor! Da kein Foto/Screenshot gepostet wurde, sondern nur eine rudimentäre Beschreibung liegt die Vermutung tatsächlich nahe, es handelt sich hier lediglich um eine Optische Täuschung ähnlich den Machschen Streifen. https://de.wikipedia.org/wiki/Machsche_Streifen Ungünstige Monitoreinstellung (Overdrive?) könnte das noch begünstigen, also mal mit einer anderen Glotze gegentesten. > Ja, hängt mit dem Antialiasing zusammen. Das könnte man am besten mit einem Bildschirmfoto/Screenshot belegen. Und dann wäre noch die Frage, woher das vermutete Antialiasing stammt - OS ?, library ?, Monitor ?, GraKa ?, ... PS: "Processing" ist Programmierlernsystem für "blutige Anfänger": https://www.heise.de/ratgeber/Programmieren-fuer-Anfaenger-4106608.html Der Beschreibung nach ein "kastriertes Java": https://de.wikipedia.org/wiki/Processing
:
Bearbeitet durch User
Ich habe es selber noch nicht benutzt, würde es aber so versuchen: Es gibt eine Funktion CreateGraphics die einen Rendering Context liefert. Das ist ein Buffer in den man zeichnet und dieser Buffer wird dann am Stück in die Anzeige kopiert. Damit muss man nicht aufwändig altes löschen und es vermeidet auch Geflacker.
Bradward B. schrieb: > PS: "Processing" ist Programmierlernsystem für "blutige Anfänger": > https://www.heise.de/ratgeber/Programmieren-fuer-Anfaenger-4106608.html Klingt im ersten Moment etwas abfällig, aber der Artikel ist wirklich gut! Ich verwende Processing seit einigen Jahren für Kurse von Programmier-Anfängern, weil es gut motivieren kann. Ich nenne es "Erlebnis-Programmieren". Klassischer Fall: Der Dozent erzählt etwas über Variablen, Datentypen, Unterscheidungen, Schleifen. Dazu kleine Testprogramme mit Ausgabe in die Konsole. Viele Azubis: "Oh ... wie spannened ... eine Liste Zahlen im DOS-Fenster ..." Steigt man dagegen mit Processing ein, hat man in Null-Komma-Nix ein Fenster mit grafischen Effekten und das sieht sogar aus wie ein "richtiges Programm". Das motiviert die meisten Einsteiger ganz anders! Natürlich führt an den "trockenen" Grundlagen nix vorbei, aber so herum wird mehr Interesse geweckt! Kleines Spiel mit Maus-Steuerung gefällig? Kein Problem ... 50 Zeilen ... usw. Es gibt auch ein nettes Buch dazu, leider schon ein wenig veraltet, aber immer noch nutzbar: https://www.amazon.com/Processing/dp/3897219972 Und Processing ist durchaus auch praktisch verwendbar. Ich habe z.B. für die Kinder-Animation in einem Museum ein "digitales Schattentheater" in Processing gemacht, ordentlich gegliedert in Klassen, mit Preferenzen, Setup etc. Also das geht schon. Die Software mischt ein Live-IR-Kamerabild (USB) mit einem Animationsfilm und stellt beides zusammen als Rückpro über einen Beamer in Lebensgröße dar. Ich wüsste bis heute nicht, wie das hätte einfacher und zuverlässiger gehen sollen, dank mächtiger und trotzdem simpel verwendbarer Frameworks. Am Ende kommt ein jar-Container dabei heraus, der seit 3 Jahren tagtäglich zuverlässig per Autostart läuft ... Ach ja, zum Thema: Es ist sind diese Befehle "schuld": https://processing.org/reference/noSmooth_.html https://processing.org/reference/smooth_.html Übrigens ist Processing allemal schnell genug, das gesamte Bild im Hintergrund neu zu zeichnen und dann nur in den sichtbaren Context zu swappen. Das nennt man, glaube ich, "double buffer painting"? Auch ganz ohne Smooth kann es passieren, dass einzelne "Restpixel" aufgrund von Rundungsfehlern stehenbleiben, wenn man versucht Linien (in gleicher Stärke) wieder zuzumalen. Das gibts auch in anderen Programmier-Umgebungen.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.