Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ejercicios de Clase y Asignaciones
Ejercicios de Clase y Asignaciones
Asignatura
Programación avanzada I
Catedrático
PhD. Carlos Hugo Estrada
Alumno
Marco Antonio Vásquez Mendoza
Número de Cuenta:
202220110037
Tarea:
Ejercicios de clase y asignaciones
setVisible(true);
}
import javax.swing.*;
import java.awt.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.GeneralPath;
// Triángulo superior
int[] xPointsSuperior = {arbolX, arbolX + 40, arbolX + 80}; // Coordenadas X del
triángulo superior
int[] yPointsSuperior = {arbolY, arbolY - 100, arbolY}; // Coordenadas Y del
triángulo superior
Polygon trianguloSuperior = new Polygon(xPointsSuperior, yPointsSuperior, 3);
g2d.setColor(new Color(34, 139, 34)); // Color verde oscuro para la copa del
árbol
g2d.fill(trianguloSuperior);
// Triángulo inferior
int[] xPointsSuperiorr = {arbol2X, arbol2X + 40, arbol2X + 80}; // Coordenadas X
del triángulo superior
int[] yPointsSuperiorr = {arbol2Y, arbol2Y - 100, arbol2Y}; // Coordenadas Y del
triángulo superior
Polygon trianguloSuperiorr = new Polygon(xPointsSuperiorr, yPointsSuperiorr,
3);
g2d.setColor(new Color(34, 139, 34)); // Color verde oscuro para la copa del
árbol
g2d.fill(trianguloSuperiorr);
// Union 1
int roadWidth = 20;
int roadHeight = 10;
int roadX = 300;
int roadY = 340;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(roadX, roadY, roadWidth, roadHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(roadX, roadY, roadWidth, roadHeight);
// Union 2
int road2Width = 20;
int road2Height = 10;
int road2X = 420;
int road2Y = 340;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(road2X, road2Y, road2Width, road2Height);
g2d.setColor(Color.BLACK);
g2d.drawRect(road2X, road2Y, road2Width, road2Height);
// Union 3
int road3Width = 20;
int road3Height = 10;
int road3X = 540;
int road3Y = 340;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(road3X, road3Y, road3Width, road3Height);
g2d.setColor(Color.BLACK);
g2d.drawRect(road3X, road3Y, road3Width, road3Height);
// Cabina
int CabinaWidth = 100;
int CabinaHeight = 80;
int CabinaX = 120;
int CabinaY = 300;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(CabinaX, CabinaY, CabinaWidth, CabinaHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(CabinaX, CabinaY, CabinaWidth, CabinaHeight);
// Ventana
int VentanaWidth = 70;
int VentanaHeight = 50;
int VentanaX = 225;
int VentanaY = 250;
g2d.setColor(new Color(51, 51, 51));
g2d.fillRect(VentanaX, VentanaY, VentanaWidth, VentanaHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(VentanaX, VentanaY, VentanaWidth, VentanaHeight);
// Borde 1
int BordeWidth = 100;
int BordeHeight = 20;
int BordeX = 210;
int BordeY = 220;
g2d.setColor(new Color(204, 0, 0));
g2d.fillRect(BordeX, BordeY, BordeWidth, BordeHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(BordeX, BordeY, BordeWidth, BordeHeight);
// Tapa
int TapaWidth = 20;
int TapaHeight = 80;
int TapaX = 140;
int TapaY = 220;
g2d.setColor(new Color(204, 0, 0));
g2d.fillRect(TapaX, TapaY, TapaWidth, TapaHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(TapaX, TapaY, TapaWidth, TapaHeight);
// Borde tapa
int BordetWidth = 30;
int BordetHeight = 20;
int BordetX = 135;
int BordetY = 220;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(BordetX, BordetY, BordetWidth, BordetHeight);
g2d.setColor(Color.BLACK);
g2d.drawRect(BordetX, BordetY, BordetWidth, BordetHeight);
// Tapa vagon 1
int Tapav1Width = 110;
int Tapav1Height = 20;
int Tapav1X = 315;
int Tapav1Y = 280;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(Tapav1X, Tapav1Y, Tapav1Width, Tapav1Height);
g2d.setColor(Color.BLACK);
g2d.drawRect(Tapav1X, Tapav1Y, Tapav1Width, Tapav1Height);
// Tapa vagon 2
int Tapav2Width = 110;
int Tapav2Height = 20;
int Tapav2X = 435;
int Tapav2Y = 280;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(Tapav2X, Tapav2Y, Tapav2Width, Tapav2Height);
g2d.setColor(Color.BLACK);
g2d.drawRect(Tapav2X, Tapav2Y, Tapav2Width, Tapav2Height);
// Tapa vagon 3
int Tapav3Width = 110;
int Tapav3Height = 20;
int Tapav3X = 555;
int Tapav3Y = 280;
g2d.setColor(new Color(255, 102, 0));
g2d.fillRect(Tapav3X, Tapav3Y, Tapav3Width, Tapav3Height);
g2d.setColor(Color.BLACK);
g2d.drawRect(Tapav3X, Tapav3Y, Tapav3Width, Tapav3Height);
//Ruedas
g2d.setColor(Color.YELLOW);
int r1Radius = 20;
int r1X = 120;
int r1Y = 370;
g2d.fillOval(r1X, r1Y, r1Radius * 2, r1Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r1X, r1Y, r1Radius * 2, r1Radius * 2);
g2d.setColor(Color.YELLOW);
int r2Radius = 20;
int r2X = 170;
int r2Y = 370;
g2d.fillOval(r2X, r2Y, r2Radius * 2, r2Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r2X, r2Y, r2Radius * 2, r2Radius * 2);
g2d.setColor(Color.YELLOW);
int r3Radius = 30;
int r3X = 230;
int r3Y = 355;
g2d.fillOval(r3X, r3Y, r3Radius * 2, r3Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r3X, r3Y, r3Radius * 2, r3Radius * 2);
g2d.setColor(Color.YELLOW);
int r4Radius = 20;
int r4X = 320;
int r4Y = 370;
g2d.fillOval(r4X, r4Y, r4Radius * 2, r4Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r4X, r4Y, r4Radius * 2, r4Radius * 2);
g2d.setColor(Color.YELLOW);
int r5Radius = 20;
int r5X = 380;
int r5Y = 370;
g2d.fillOval(r5X, r5Y, r5Radius * 2, r5Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r5X, r5Y, r5Radius * 2, r5Radius * 2);
g2d.setColor(Color.YELLOW);
int r6Radius = 20;
int r6X = 440;
int r6Y = 370;
g2d.fillOval(r6X, r6Y, r6Radius * 2, r6Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r6X, r6Y, r6Radius * 2, r6Radius * 2);
g2d.setColor(Color.YELLOW);
int r7Radius = 20;
int r7X = 500;
int r7Y = 370;
g2d.fillOval(r7X, r7Y, r7Radius * 2, r7Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r7X, r7Y, r7Radius * 2, r7Radius * 2);
g2d.setColor(Color.YELLOW);
int r8Radius = 20;
int r8X = 560;
int r8Y = 370;
g2d.fillOval(r8X, r8Y, r8Radius * 2, r8Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r8X, r8Y, r8Radius * 2, r8Radius * 2);
g2d.setColor(Color.YELLOW);
int r9Radius = 20;
int r9X = 620;
int r9Y = 370;
g2d.fillOval(r9X, r9Y, r9Radius * 2, r9Radius * 2);
g2d.setColor(Color.BLACK); // Borde negro
g2d.drawOval(r9X, r9Y, r9Radius * 2, r9Radius * 2);
frame.setSize(400, 180);
frame.setVisible(true);
}
}
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
this.setBackground(Color.WHITE);
g.setColor(Color.BLUE);
g.fillRect(15, 75, 100, 20);
g.setColor(Color.RED);
g.drawOval(15, 75, 100, 20); // Ovalo dentro del tercer rectángulo
g.drawString("RGB actual: " + g.getColor(), 130, 90);
// Rectangulo azul
g.setColor(Color.BLUE);
g.drawRect(5, 10, getWidth() - 17, getHeight() - 30);
// Linea morada
g.setColor(Color.MAGENTA);
g.drawLine(15, 15, getWidth() - 17, 15);
// Linea roja
g.setColor(Color.RED);
g.drawLine(15, 20, getWidth() - 17, 20);
}
import javax.swing.*;
import java.awt.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.GeneralPath;
setVisible(true);
}
import javax.swing.*;
import java.awt.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.GeneralPath;
g2d.setColor(Color.PINK);
g2d.fill(triangulo);
g2d.setColor(Color.BLACK);
g2d.draw(triangulo);
import javax.swing.*;
import java.awt.*;
import java.awt.geom.Ellipse2D;
import java.awt.geom.GeneralPath;
setVisible(true);
}
import javax.swing.*;
import java.awt.*;
class CasaPanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
// TRONCO DE ARBOL
g2d.setColor(new Color(139, 69, 19));
int trunkWidth = 30;
int trunkHeight = 200;
int trunkX = 510;
int trunkY = 196;
g2d.fillRect(trunkX, trunkY, trunkWidth, trunkHeight);
//SOL
g2d.setColor(Color.YELLOW);
int sunRadius = 40;
int sunX = 20;
int sunY = 20;
g2d.fillOval(sunX, sunY, sunRadius * 2, sunRadius * 2);
// HOJAS TRIÁNGULO
g2d.setColor(new Color(0,204, 0));
int[] xPoints = {440, 535, 620};
int[] yPoints = {200, 50, 200};
Polygon triangle = new Polygon(xPoints, yPoints, 3);
g2d.fill(triangle);
// HOJAS ROMBO
int diamondWidth = 120;
int diamondHeight = 150;
int xOffset = 65;
int yOffset = -60;
int[] xPointss = {600 - diamondWidth / 2 + xOffset, 600 + xOffset, 600 + diamondWidth / 2 +
xOffset, 600 + xOffset}; // Coordenadas X de los vértices del rombo
int[] yPointss = {322 + yOffset, 322 - diamondHeight / 2 + yOffset, 322 + yOffset, 322 +
diamondHeight / 2 + yOffset}; // Coordenadas Y de los vértices del rombo
Polygon diamond = new Polygon(xPointss, yPointss, 4);
g2d.setColor(new Color(0, 128, 0));
g2d.fill(diamond);
// PENTÁGONO ARBOL
g2d.setColor(new Color(139, 69, 19));
int trunk3Width = 30;
int trunk3Height = 200;
int trunk3X = 750;
int trunk3Y = 136; // Ajuste para subir el pentágono
g2d.fillRect(trunk3X, trunk3Y, trunk3Width, trunk3Height);
int sideLength = 100; // Longitud de un lado del pentágono
int[] xPointsCentral = {
trunk3X + trunkWidth / 2,
trunk3X + trunkWidth / 2 + (int) (sideLength * Math.cos(Math.toRadians(18))),
trunk3X + trunkWidth / 2 + (int) (sideLength * Math.cos(Math.toRadians(54))),
trunk3X + trunkWidth / 2 - (int) (sideLength * Math.cos(Math.toRadians(54))),
trunk3X + trunkWidth / 2 - (int) (sideLength * Math.cos(Math.toRadians(18)))
}; // Coordenadas X de los vértices del pentágono
int[] yPointsCentral = {
trunk3Y - 20 - (int) (sideLength * Math.sin(Math.toRadians(18))),
trunk3Y - 20 - (int) (sideLength * Math.sin(Math.toRadians(18))),
trunk3Y - 20 + (int) (sideLength * Math.sin(Math.toRadians(54))),
trunk3Y - 20 + (int) (sideLength * Math.sin(Math.toRadians(54))),
trunk3Y - 20 - (int) (sideLength * Math.sin(Math.toRadians(18)))
}; // Coordenadas Y de los vértices del pentágono
Polygon pentagonCentral = new Polygon(xPointsCentral, yPointsCentral, 5); // Crear un polígono
con los vértices del pentágono
g2d.setColor(new Color(113, 226, 48)); // Verde oscuro para las hojas
g2d.fill(pentagonCentral); // Rellenar el pentágono
// TALLOS DE FLOR
g2d.setColor(new Color(139, 69, 19));
int trunk5Width = 3;
int trunk5Height = 70;
int trunk5X = 50;
int trunk5Y = 438;
g2d.fillRect(trunk5X, trunk5Y, trunk5Width, trunk5Height);
// FLOR HEXÁGONO
drawFlower(g2d, flowerPosX, flowerPosY, flowerSize);
// FLOR HEXÁGONO
drawFlower(g2d, flower2PosX, flower2PosY, flowerSize);
// FLOR HEXÁGONO
drawFlower(g2d, flower3PosX, flower3PosY, flowerSize);
// FLOR HEXÁGONO
drawFlower(g2d, flower4PosX, flower4PosY, flowerSize);
// FLOR HEXÁGONO
drawFlower(g2d, flower5PosX, flower5PosY, flowerSize);
// FLOR HEXÁGONO
drawFlower(g2d, flower6PosX, flower6PosY, flowerSize);
}
private void drawFlower(Graphics2D g2d, int posX, int posY, int size) {
// FLOR HEXÁGONO
int radiusFlower = size; // Radio del círculo exterior de la flor
int[] xPointsFlower = new int[6];
int[] yPointsFlower = new int[6];
for (int i = 0; i < 6; i++) {
double angleRad = Math.toRadians(60 * i);
xPointsFlower[i] = (int) (posX + radiusFlower * Math.cos(angleRad));
yPointsFlower[i] = (int) (posY + radiusFlower * Math.sin(angleRad));
}
g2d.setColor(new Color(255, 51, 153)); // Color amarillo para los pétalos
g2d.fillPolygon(xPointsFlower, yPointsFlower, 6); // Rellenar el hexágono exterior
// Posición del hexágono interior en el eje X y en el eje Y
int innerPosX = posX; // Posición en X del hexágono interior
int innerPosY = posY; // Posición en Y del hexágono interior
// CASA
g2d.setColor(new Color(255, 204, 0));
int houseWidth = 330;
int houseHeight = 150;
int houseX = 70;
int houseY = 245;
g2d.fillRect(houseX, houseY, houseWidth, houseHeight);
// PENTÁGONO TECHO
g2d.setColor(new Color(153, 102, 0)); // Color naranja para el techo
int roofWidth = 200;
int roofHeight = 100;
int roofX = 132;
int roofY = houseY - houseHeight + 60; // Ajuste para bajar más el techo
int[] xPointsRoof = {
roofX,
roofX + roofWidth,
roofX + roofWidth + roofWidth / 2,
roofX - roofWidth / 2,
roofX
}; // Coordenadas X de los vértices del pentágono
int[] yPointsRoof = {
roofY,
roofY,
roofY + roofHeight,
roofY + roofHeight,
roofY
}; // Coordenadas Y de los vértices del pentágono
Polygon pentagonRoof = new Polygon(xPointsRoof, yPointsRoof, 5); // Crear un polígono con los
vértices del pentágono
g2d.fill(pentagonRoof); // Rellenar el pentágono
}
}
import javax.swing.JFrame;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
g.setColor(Color.RED);
g.drawRect(15, 35, 80, 80);
g.setColor(Color.BLACK);
g.drawArc(15, 35, 80, 80, 0, 360);
g.setColor(Color.BLACK);
g.drawArc(100, 35, 80, 80, 0, 110);
g.setColor(Color.BLACK);
g.drawArc(185, 35, 80, 80, 0, -270);
import java.awt.Graphics;
import java.awt.Polygon;
import javax.swing.JPanel;
marco.add(figurasJPanel);
marco.setSize(425, 200);
marco.setVisible(true);
}
}
import java.awt.Color;
import java.awt.Graphics;
import java.awt.BasicStroke;
import java.awt.GradientPaint;
import java.awt.TexturePaint;
import java.awt.Rectangle;
import java.awt.Graphics2D;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Rectangle2D;
import java.awt.geom.RoundRectangle2D;
import java.awt.geom.Arc2D;
import java.awt.geom.Line2D;
import java.awt.image.BufferedImage;
import javax.swing.JPanel;
public class FigurasJPanel extends JPanel {
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setPaint(Color.RED);
g2d.setStroke(new BasicStroke(10.0f));
g2d.draw(new Rectangle2D.Double(80, 30, 65, 100));
Graphics2D gg = imagenBuf.createGraphics();
gg.setColor(Color.YELLOW);
gg.fillRect(0, 0, 10, 10);
gg.setColor(Color.BLACK);
gg.drawRect(1, 1, 6, 6);
gg.setColor(Color.BLUE);
gg.fillRect(1, 1, 3, 3);
gg.setColor(Color.RED);
gg.fillRect(4, 4, 3, 3);
g2d.setPaint(Color.WHITE);
g2d.setStroke(new BasicStroke(6.0f));
g2d.draw(new Arc2D.Double(240, 30, 75, 100, 0, 270, Arc2D.PIE));
g2d.setPaint(Color.GREEN);
g2d.draw(new Line2D.Double(395, 30, 320, 150));
// ejecuta la aplicación
public static void main(String[] args) {
marco.add(lineasRectsOvalosJPanel);
marco.setSize(400, 210);
marco.setVisible(true);
}
}
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
this.setBackground(Color.WHITE);
g.setColor(Color.RED);
g.drawLine(5, 30, 380, 30);
g.setColor(Color.BLUE);
g.drawRect(5, 40, 90, 55);
g.fillRect(100, 40, 90, 55);
g.setColor(Color.CYAN);
g.fillRoundRect(195, 40, 90, 55, 50, 50);
g.drawRoundRect(290, 40, 90, 55, 20, 20);
g.setColor(Color.GREEN);
g.draw3DRect(5, 100, 90, 55, true);
g.fill3DRect(100, 100, 90, 55, false);
g.setColor(Color.MAGENTA);
g.drawOval(195, 100, 90, 55);
g.fillOval(290, 100, 90, 55);
}
}
import javax.swing.JFrame;
frame.setSize(400, 180);
frame.setVisible(true);
}
}
import java.awt.Graphics;
import java.awt.Color;
import javax.swing.JPanel;
g.setColor(Color.BLUE);
g.fillRect(15, 75, 100, 20);
g.drawString("RGB actual: " + g.getColor(), 130, 90);
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JColorChooser;
import javax.swing.JPanel;
public MostrarColores2JFrame() {
super("Uso de JColorChooser");
if (color == null) {
color = Color.LIGHT_GRAY;
}
coloresJPanel.setBackground(color);
}
});
add(coloresJPanel, BorderLayout.CENTER);
add(cambiarColorJButton, BorderLayout.SOUTH);
setSize(400, 130);
setVisible(true);
}
}