import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
public class CatDrawing extends JPanel {
public CatDrawing() {
setPreferredSize(new Dimension(700, 700));
setBackground(Color.BLACK);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g.create();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// Center the drawing a little better
g2.translate(180, 90);
// -------- COLORS --------
Color whiteFur = new Color(252, 248, 240);
Color blackFur = new Color(55, 48, 45);
Color orangeTail = new Color(242, 178, 105);
Color orangeShadow = new Color(224, 145, 70);
Color pinkEar = new Color(235, 195, 185);
// -------- MAIN CAT SHAPES --------
// Body outline glow / sticker border
Shape body = new Ellipse2D.Double(120, 140, 230, 300);
Shape head = new Ellipse2D.Double(210, 40, 110, 110);
Shape tailBase = new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50);
Arc2D tailCurve = new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN);
g2.setStroke(new BasicStroke(18f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(whiteFur);
g2.draw(body);
g2.draw(head);
g2.draw(tailBase);
g2.draw(tailCurve);
// Body
g2.setColor(blackFur);
g2.fill(body);
// Head
g2.setColor(whiteFur);
g2.fill(head);
// Ears
Polygon ear1 = new Polygon(
new int[]{235, 255, 275},
new int[]{60, 25, 75},
3
);
Polygon ear2 = new Polygon(
new int[]{275, 305, 315},
new int[]{70, 35, 95},
3
);
g2.setColor(whiteFur);
g2.fillPolygon(ear1);
g2.fillPolygon(ear2);
// Inner ears
Polygon innerEar1 = new Polygon(
new int[]{245, 255, 265},
new int[]{62, 42, 72},
3
);
Polygon innerEar2 = new Polygon(
new int[]{287, 300, 306},
new int[]{74, 52, 88},
3
);
g2.setColor(pinkEar);
g2.fillPolygon(innerEar1);
g2.fillPolygon(innerEar2);
// Tail
g2.setColor(orangeTail);
g2.fill(new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50));
g2.setStroke(new BasicStroke(42f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN));
// Tail darker center line for depth
g2.setColor(orangeShadow);
g2.setStroke(new BasicStroke(10f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(145, 425, 120, 120, 215, 190, Arc2D.OPEN));
// Chest/neck blend
g2.setColor(new Color(245, 240, 232));
g2.fill(new Ellipse2D.Double(220, 110, 75, 55));
// Body shading to make it look softer
GradientPaint bodyShade = new GradientPaint(
220, 150, new Color(70, 60, 55),
260, 420, new Color(35, 30, 28)
);
g2.setPaint(bodyShade);
g2.fill(new Ellipse2D.Double(140, 150, 190, 280));
// Small back highlight
g2.setColor(new Color(95, 85, 78, 90));
g2.fill(new Ellipse2D.Double(185, 170, 65, 210));
// Face turned to the side
g2.setColor(whiteFur);
g2.fill(new Ellipse2D.Double(260, 62, 52, 40));
// Nose area
g2.setColor(new Color(248, 242, 236));
g2.fill(new Ellipse2D.Double(285, 80, 25, 20));
// Eye
g2.setColor(new Color(40, 30, 30));
g2.fill(new Ellipse2D.Double(285, 75, 4, 4));
// Whiskers
g2.setStroke(new BasicStroke(1.8f));
g2.setColor(new Color(240, 240, 240, 220));
g2.drawLine(300, 92, 333, 85);
g2.drawLine(300, 94, 336, 94);
g2.drawLine(300, 97, 332, 103);
// Soft sticker edge around body/head again for cleaner look
g2.setStroke(new BasicStroke(6f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(new Color(255, 250, 240, 180));
g2.draw(body);
g2.draw(head);
g2.dispose();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame("Cat Drawing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(new CatDrawing());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
public class CatDrawing extends JPanel {
public CatDrawing() {
setPreferredSize(new Dimension(700, 700));
setBackground(Color.BLACK);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g.create();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// Center the drawing a little better
g2.translate(180, 90);
// -------- COLORS --------
Color whiteFur = new Color(252, 248, 240);
Color blackFur = new Color(55, 48, 45);
Color orangeTail = new Color(242, 178, 105);
Color orangeShadow = new Color(224, 145, 70);
Color pinkEar = new Color(235, 195, 185);
// -------- MAIN CAT SHAPES --------
// Body outline glow / sticker border
Shape body = new Ellipse2D.Double(120, 140, 230, 300);
Shape head = new Ellipse2D.Double(210, 40, 110, 110);
Shape tailBase = new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50);
Arc2D tailCurve = new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN);
g2.setStroke(new BasicStroke(18f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(whiteFur);
g2.draw(body);
g2.draw(head);
g2.draw(tailBase);
g2.draw(tailCurve);
// Body
g2.setColor(blackFur);
g2.fill(body);
// Head
g2.setColor(whiteFur);
g2.fill(head);
// Ears
Polygon ear1 = new Polygon(
new int[]{235, 255, 275},
new int[]{60, 25, 75},
3
);
Polygon ear2 = new Polygon(
new int[]{275, 305, 315},
new int[]{70, 35, 95},
3
);
g2.setColor(whiteFur);
g2.fillPolygon(ear1);
g2.fillPolygon(ear2);
// Inner ears
Polygon innerEar1 = new Polygon(
new int[]{245, 255, 265},
new int[]{62, 42, 72},
3
);
Polygon innerEar2 = new Polygon(
new int[]{287, 300, 306},
new int[]{74, 52, 88},
3
);
g2.setColor(pinkEar);
g2.fillPolygon(innerEar1);
g2.fillPolygon(innerEar2);
// Tail
g2.setColor(orangeTail);
g2.fill(new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50));
g2.setStroke(new BasicStroke(42f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN));
// Tail darker center line for depth
g2.setColor(orangeShadow);
g2.setStroke(new BasicStroke(10f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(145, 425, 120, 120, 215, 190, Arc2D.OPEN));
// Chest/neck blend
g2.setColor(new Color(245, 240, 232));
g2.fill(new Ellipse2D.Double(220, 110, 75, 55));
// Body shading to make it look softer
GradientPaint bodyShade = new GradientPaint(
220, 150, new Color(70, 60, 55),
260, 420, new Color(35, 30, 28)
);
g2.setPaint(bodyShade);
g2.fill(new Ellipse2D.Double(140, 150, 190, 280));
// Small back highlight
g2.setColor(new Color(95, 85, 78, 90));
g2.fill(new Ellipse2D.Double(185, 170, 65, 210));
// Face turned to the side
g2.setColor(whiteFur);
g2.fill(new Ellipse2D.Double(260, 62, 52, 40));
// Nose area
g2.setColor(new Color(248, 242, 236));
g2.fill(new Ellipse2D.Double(285, 80, 25, 20));
// Eye
g2.setColor(new Color(40, 30, 30));
g2.fill(new Ellipse2D.Double(285, 75, 4, 4));
// Whiskers
g2.setStroke(new BasicStroke(1.8f));
g2.setColor(new Color(240, 240, 240, 220));
g2.drawLine(300, 92, 333, 85);
g2.drawLine(300, 94, 336, 94);
g2.drawLine(300, 97, 332, 103);
// Soft sticker edge around body/head again for cleaner look
g2.setStroke(new BasicStroke(6f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(new Color(255, 250, 240, 180));
g2.draw(body);
g2.draw(head);
g2.dispose();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame("Cat Drawing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(new CatDrawing());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.geom.*;
public class CatDrawing extends JPanel {
public CatDrawing() {
setPreferredSize(new Dimension(700, 700));
setBackground(Color.BLACK);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g.create();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// Center the drawing a little better
g2.translate(180, 90);
// -------- COLORS --------
Color whiteFur = new Color(252, 248, 240);
Color blackFur = new Color(55, 48, 45);
Color orangeTail = new Color(242, 178, 105);
Color orangeShadow = new Color(224, 145, 70);
Color pinkEar = new Color(235, 195, 185);
// -------- MAIN CAT SHAPES --------
// Body outline glow / sticker border
Shape body = new Ellipse2D.Double(120, 140, 230, 300);
Shape head = new Ellipse2D.Double(210, 40, 110, 110);
Shape tailBase = new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50);
Arc2D tailCurve = new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN);
g2.setStroke(new BasicStroke(18f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(whiteFur);
g2.draw(body);
g2.draw(head);
g2.draw(tailBase);
g2.draw(tailCurve);
// Body
g2.setColor(blackFur);
g2.fill(body);
// Head
g2.setColor(whiteFur);
g2.fill(head);
// Ears
Polygon ear1 = new Polygon(
new int[]{235, 255, 275},
new int[]{60, 25, 75},
3
);
Polygon ear2 = new Polygon(
new int[]{275, 305, 315},
new int[]{70, 35, 95},
3
);
g2.setColor(whiteFur);
g2.fillPolygon(ear1);
g2.fillPolygon(ear2);
// Inner ears
Polygon innerEar1 = new Polygon(
new int[]{245, 255, 265},
new int[]{62, 42, 72},
3
);
Polygon innerEar2 = new Polygon(
new int[]{287, 300, 306},
new int[]{74, 52, 88},
3
);
g2.setColor(pinkEar);
g2.fillPolygon(innerEar1);
g2.fillPolygon(innerEar2);
// Tail
g2.setColor(orangeTail);
g2.fill(new RoundRectangle2D.Double(165, 390, 70, 130, 50, 50));
g2.setStroke(new BasicStroke(42f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(130, 410, 160, 150, 210, 210, Arc2D.OPEN));
// Tail darker center line for depth
g2.setColor(orangeShadow);
g2.setStroke(new BasicStroke(10f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.draw(new Arc2D.Double(145, 425, 120, 120, 215, 190, Arc2D.OPEN));
// Chest/neck blend
g2.setColor(new Color(245, 240, 232));
g2.fill(new Ellipse2D.Double(220, 110, 75, 55));
// Body shading to make it look softer
GradientPaint bodyShade = new GradientPaint(
220, 150, new Color(70, 60, 55),
260, 420, new Color(35, 30, 28)
);
g2.setPaint(bodyShade);
g2.fill(new Ellipse2D.Double(140, 150, 190, 280));
// Small back highlight
g2.setColor(new Color(95, 85, 78, 90));
g2.fill(new Ellipse2D.Double(185, 170, 65, 210));
// Face turned to the side
g2.setColor(whiteFur);
g2.fill(new Ellipse2D.Double(260, 62, 52, 40));
// Nose area
g2.setColor(new Color(248, 242, 236));
g2.fill(new Ellipse2D.Double(285, 80, 25, 20));
// Eye
g2.setColor(new Color(40, 30, 30));
g2.fill(new Ellipse2D.Double(285, 75, 4, 4));
// Whiskers
g2.setStroke(new BasicStroke(1.8f));
g2.setColor(new Color(240, 240, 240, 220));
g2.drawLine(300, 92, 333, 85);
g2.drawLine(300, 94, 336, 94);
g2.drawLine(300, 97, 332, 103);
// Soft sticker edge around body/head again for cleaner look
g2.setStroke(new BasicStroke(6f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
g2.setColor(new Color(255, 250, 240, 180));
g2.draw(body);
g2.draw(head);
g2.dispose();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame("Cat Drawing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setContentPane(new CatDrawing());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
Cat
Follow on X

Contract Address

Coming Soon...