Pregunta

necesito para pintar la línea que une dos puntos.

lo estoy haciendo, en Java. Puedo recibir dos puntos como parámetros y tengo que calcular si la línea recta entre ellos, está dentro de la figura de negro.

he desarrollado mi propia solución utilizando la ecuación de la línea recta, pero mis resultados son diferentes de utilizar los programas de "profesionales" (como GIMP o incluso MS Paint).

Este es un ejemplo de lo que quiero:

alt text http://img411.imageshack.us/img411/788/img1q .png

Pero mi algoritmo hace lo siguiente:

alt text http://img267.imageshack.us/img267/1908/img2d .png

* El punto verde es de la figura y esto no es posible.

Algunas ideas? conozco a nadie que codifican está estado utilizando para esto, en aplicaciones "profesionales"?

Gracias! Daniel.

Edit: Imágenes

¿Fue útil?

Solución

Parece que usted está truncando en lugar de redondeo al píxel más cercano. Difícil de ver en esas pequeñas manchas de tinta negra. Podría publicar el código?

Otros consejos

Programas de "profesionales" uso más probable de Bresenham algoritmo de línea de .

Straignt líneas se dibujan usando el algoritmo de Bresenham general. No he tenido su punto sobre el punto verde de estar fuera de la figura -. Hay recorte a no perder el tiempo dibujo fuera del área visible

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top