sharp operator not diferente bitwise c# vb6 xor-drawing

operator - Dibujo XOR en C#



if xor c# (2)

Estoy tratando de aprender C # .Net.

Hace algún tiempo escribí una aplicación de reloj analógico pequeña (afición) en VB (edición: VB6, para ser precisos), y pensé que volvería a escribir en C # .NET, como parte de mi proceso de aprendizaje .

En la aplicación VB, dibujé las manecillas del reloj en XOR Drawmode, de modo que tuve que mover la manecilla de los segundos, solo tuve que volver a dibujarla en la posición anterior y luego dibujar la posición actual. No necesito actualizar todo el formulario. . Todo lo que hice fue

Me.DrawMode = vbNotXorPen

y entonces

Me.Line...

en un formulario VB

En C # no encuentro un modo Xor Pen Draw equivalente.

encontré

ControlPaint.DrawReversibleLine

en algún lugar de la red, pero no estoy seguro de si ControlPaint está destinado a tales fines (y no lo entiendo según el sistema de coordenadas que esté dibujando ControlPaint )

¿Hay un equivalente al dibujo XOR en C # .NET? ¿O hay una mejor manera de hacer lo que estoy haciendo (con el mejor rendimiento)?

(Tanto VB como C # son mis pasatiempos. Así que siéntete libre de corregirme donde sea que esté mal)



En mi humilde opinión, hasta que, a menos que esté apuntando a algunas computadoras realmente lentas, no necesita optimizar el rendimiento mediante el uso de la técnica XOR.

Como estarás dibujando la segunda mano solo una vez en un segundo, un redibujado completo del reloj sería mucho mejor. Además, la manecilla de los segundos se verá "bien" si se dibuja directamente, y usará el modo de suavizado configurado en Anti alias para una apariencia más limpia.

Para optimizar el rendimiento, puede crear un bmp para el reloj cada minuto y luego dibujar la segunda mano sobre él.