studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones java swing awt graphics2d

java - programacion - Método de dibujo triangular



manual de programacion android pdf (6)

Tengo problemas dibujando un triángulo con el método draw(Graphics g) en Java. Puedo dibujar un rectángulo así:

public void draw(Graphics g) { g.setColor(colorFill); g.fillRect(p.x, p.y, width, height); g.setColor(colorBorder); g.drawRect(p.x, p.y, width, height); drawHandles(g);

Donde p representa "la esquina superior izquierda de las formas". ¿Cómo dibujaría el triángulo de la misma manera?

¿Podría alguien darme un ejemplo para un triángulo estándar?



No hay un método drawTriangle ni en Graphics ni Graphics2D. Tienes que hacerlo por ti mismo. Puede dibujar tres líneas usando el método drawLine o usar uno de estos métodos:

Estos métodos funcionan con polígonos. Puede cambiar el draw del prefijo para fill cuando desee llenar el polígono definido por el conjunto de puntos. Inserté los enlaces de documentación. Eche un vistazo para aprender cómo usarlos.

También está la clase GeneralPath . Se puede usar con Graphics2D, que es capaz de dibujar formas . Echar un vistazo:




no hay ningún comando directamente para dibujar Triangle. Para Dibujo de triángulo tenemos que usar el concepto de líneas aquí.

es decir, g.drawLines (Coordenadas de puntos)


Use un algoritmo de línea para conectar el punto A con el punto C, y en un bucle externo, deje que el punto A se desplace hacia el punto B con el mismo algoritmo de línea y con las coordenadas errantes, repita dibujando esa línea. Probablemente también pueda incluir az delta con el cual también se incrementa iterativamente. Para el algoritmo de línea, simplemente calcule dos o tres pendientes para el cambio delta de cada coordenada y establezca una pendiente en 1 después de cambiar las otras dos proporcionalmente para que estén por debajo de 1. Esto es muy importante para dibujar áreas geométricas cerradas entre partículas de malla conectadas. Eche un vistazo al ejemplo de Qt Elastic Nodes y ahora imagine dibujar triángulos entre los nodos después de estirarlo sobre un esqueleto. Mientras permanezca en línea