Wie zeichnet sich mit dem Zeichnungsberatung in der ONRENDER-Arbeit hinter der Szene?

StackOverflow https://stackoverflow.com/questions/9519504

  •  14-11-2019
  •  | 
  •  

Frage

Ich male ein eher komplexes "Image" (das häufig aktualisiert werden muss, muss in einem WPF-Fenster in einem WPF-Fenster aufgefrischt werden, indem ich die ontrende Methode einer separaten Uielement überschreibt, und mit dem Zeichnungsberatung, um die Primitive direkt zu zeichnen.

Meine Frage ist, was genau hinter den Kulissen passiert?Soweit ich verstehe, ist dies nicht den einbehaltenen Modus (was der Fall wäre, wenn ich Formen in die Steuerung einfügen würde).Ich frage die Frage, weil ich eigentlich eigentlich bin, dass das Zeichnen von soziellem, so eigentlich GDI + auf der Rückseite verwenden wird, der mit eigenen Problemen bringt (z. Druckbedruckung, die mit GDI + gezeichnet wird, hat uns bereits Zeit und Anstrengung gekostet).

Gibt es gute Ressourcen (neben den offensichtlichen MSDN-Ressourcen, die mich nicht anschienen können, um mich aufzulösen?

oder habe ich alles völlig falsch bekommen?

Vielen Dank für alle Antworten, die mich in die richtige Richtung zeigen. [Bearbeiten: Rechtschreibung]

War es hilfreich?

Lösung

You are still using retained mode, you're just not using high level objects (no animating objects, etc..), but instead simple points, lines, etc..

I've dug into the sources of DrawingContext and from what I can tell, it seems to be pushing all those DrawXYZ commands into a queue using some low-level wizardry (the queue itself consists of arbitrarily sized structs, each denoting a certain command).

WPF then processes this queue on another thread, denoted the rendering thread in this question. I haven't verified this, but I'm guessing that WPF uses the StreamingContext for all its drawing.

Furthermore, WPF is using DirectX for rendering, as can be seen by this bogpost, which takes a better look at what WPF actually does.

I hope this clarifies things for you.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top