Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Los puntos se dibujan sin antialiasing. Elegí específicamente el métodoPixelSetAA- dibujar puntos con antialiasing.
Intenta dibujar una línea usandoPixelSetAA.
El método PolylineAA utiliza el método LineAA. El método LineAA utiliza el método PixelSetAA. Al dibujar un solo punto, no se verá el efecto del antialiasing.
Intenta dibujar una línea usandoPixelSetAA.
No. No tiene efecto. No hay puntos cercanos de alisado. Las esquinas afiladas son como los ladrillos:
No. No tiene efecto. No hay puntos cercanos de alisado. Las esquinas afiladas son como los ladrillos:
He complementado el mensaje anterior. Observe cómo se implementan los métodos anteriores y utilícelos si necesita el suavizado.
Como este método dibuja un punto con antialiasing, debería obtener una imagen como ésta si dibujo varios puntos seguidos:
Pero no consigo puntos suaves.
No voy a tocar el método de dibujar una línea con suavizado -PolylineAA por ahora. Quiero entender lo que se indica en la ayuda sobrePixelSetAA:
Como este método dibuja un punto con antialiasing, debería obtener una imagen como esta si dibujo varios puntos seguidos:
Pero no consigo puntos suaves.
Por eso te sugiero que compares el código de los métodos con y sin antialiasing. El código está abierto para su estudio.
Para entenderlo hay que estudiar a fondo los algoritmos utilizados en estos métodos.
Incluso podría escribir un artículo sobre este tema. Me encantaría leerlo yo mismo. )
Un punto no se puede suavizar, es una "partícula elemental" en cierto sentido )
Así que esa es la cuestión: hay dos métodos(PixelSet yPixelSetAA). Estoy muy interesado enPixelSetAA, pero quizá no entiendo cómo funciona el suavizado de puntos.
Si todo lo demás falla, lee la ayuda ;)
PixelSet simplemente establece el color del punto.
Leemos la ayuda. Así que la pregunta es: "¿DebePixelSetAA dibujar incluso un solo punto utilizando el antialiasing?". Quiero escuchar una opinión.
La respuesta es: el métodoPixelSetAAdebería dibujar incluso un solo punto utilizando el antialiasing, y dibuja ese único punto utilizando el antialiasing. Para ello, he tenido que buscar en el código del CCanvas:
y me di cuenta de que el suavizado sólo aparece si se pasa un número de tipo double como coordenadas, y no un valor redondeado, sino con una "cola". Algo así como 200,4; 125,6; 200,7.
Aquí hay una parábola dibujada con puntos usando el métodoPixelSetAA y sí empieza a dibujarse con antialiasing: