자바 (for문과 if문) 코딩 쌩기초질문 내공100

자바 (for문과 if문) 코딩 쌩기초질문 내공100

작성일 2023.10.12댓글 1건
    게시물 수정 , 삭제는 로그인 필요


안녕하세요 프로세싱으로 자바 공부중인 학생입니다.
기본적인 그라데이션을 만들고 있는데, 
for문과 if문을 이용한 그라데이션을 만들어보고자 합니다!

이런 식으로 만들어봤는데 가운데에서 사방으로 퍼져나가는 듯한 그라데이션도 for문과 if문을 이용해서 제작이 가능한가요??

부탁드립니다ㅠ







int eSize = 10;
float c;

size(400, 400);
background(255);
noStroke();

for (int y = 0; y <= height; y += 10) {
  for (int x = 0; x <= width; x += 10) {

    if (x < width/2 && y < height/2) {
      c = map(x, 0, width/2, 0, 255);
      fill(c, 255, 255);

    } else if (x >= width/2 && y < height/2) {
      c = map(y, 0, height/2, 0, 255);
      fill(255, c, 255);

    } else if (x < width/2 && y >= height/2) {
      c = map(y, height/2, height, 0, 255);
      fill(255, 255, 255-c);

    } else if (x >= width/2 && y >= height/2) {
      c = map(x, width/2, width, 0, 255);
      fill(255, 255-c, 255-c); 
    }

    rect(x, y, eSize, eSize);
  }
}



profile_image 익명 작성일 -

import javax.swing.*;

import java.awt.*;

import java.awt.image.BufferedImage;

public class RadialGradientExample {

public static void main(String[] args) {

JFrame frame = new JFrame("Radial Gradient Example");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(800, 600);

frame.add(new RadialGradientPanel());

frame.setVisible(true);

}

}

class RadialGradientPanel extends JPanel {

@Override

protected void paintComponent(Graphics g) {

super.paintComponent(g);

Graphics2D g2d = (Graphics2D) g;

int width = getWidth();

int height = getHeight();

int centerX = width / 2;

int centerY = height / 2;

Color centerColor = Color.RED; // 중앙 색상 (빨간색)

Color outerColor = Color.BLUE; // 바깥 색상 (파란색)

RadialGradientPaint gradient = new RadialGradientPaint(centerX, centerY, width / 2, new float[]{0.0f, 1.0f}, new Color[]{centerColor, outerColor});

g2d.setPaint(gradient);

g2d.fillRect(0, 0, width, height);

}

}

FOR 문을 굳이 사용하시겠다면

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Graphics2D;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class RadialGradientExample {

public static void main(String[] args) {

JFrame frame = new JFrame("Radial Gradient Example");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(800, 600);

frame.add(new RadialGradientPanel());

frame.setVisible(true);

}

}

class RadialGradientPanel extends JPanel {

@Override

protected void paintComponent(Graphics g) {

super.paintComponent(g);

Graphics2D g2d = (Graphics2D) g;

int width = getWidth();

int height = getHeight();

int centerX = width / 2;

int centerY = height / 2;

for (int x = 0; x < width; x++) {

for (int y = 0; y < height; y++) {

double distance = Math.sqrt((x - centerX) * (x - centerX) + (y - centerY) * (y - centerY));

int maxDistance = (int) Math.sqrt(centerX * centerX + centerY * centerY);

// 중앙에서 바깥으로 갈수록 색상 변경

int r = (int) (255 * (1 - (double) distance / maxDistance));

int g1 = 0;

int b = (int) (255 * (double) distance / maxDistance);

g2d.setColor(new Color(r, g1, b));

g2d.fillRect(x, y, 1, 1);

}

}

}

}

자바 공부방법

... 만들고 코딩을 해볼려고 하면 전혀 손도 못데는 상태 입니다. 연산자 빼노코는 거의 생각이 나질 않네요. if문 for문도 수업시간때 잘듣었는데 잘 기억이 안나요. 도대체 자바...

드림위버와 플래시관련 질문욤..

... 내용은 자바스크립트 또는 jQuery를 사용함으로써 해결 가능합니다. 질문을 수정하셔서 답변을... IF 문과 FOR 문, Switch 문만 알아도 웬만한 것은 다 만들어 낼 수...

인터넷용어

... 2개 써드리면 감사내공도 드릴께욤 정확한 뜻을... 자바, 비주얼 베이직, 비주얼 씨플러스 플러스 등의... 방식으로 코딩된 음성 데이터 파일은 WAV과 AIFF처럼...

[내공올인!] 간단한 JAVA에서 break문...

... 그냥 무식하게 코딩해놓은 자바소스입니다.... 출력하는 기초 반복문입니다. 여기에서는 if문 안에있는 break문을 만나게되면 for문을 아예빠져나가고...

코딩에 오류를 찾아주세요 ㅜㅜ

자바스크립트를 강의를 들으면서 코딩을했는데 자꾸 오류가... 있는내공 탈탈털어 질문올립니다. 소스코드에서 오류를 찾아주세요..그리고 for문과 핸들러에서 함수로...

자바기초적인 부분들 질문!!

공부하는 학생입니다 기초부터 꼼꼼히 배우고싶어서여 .. 답변부탁해영.. 1 while 문과 do 문의... for(int i = 1; i <= 100; i++) { if(i % 3 == 0) { sum = sum + i; } } 7)...

(그냥IT쪽아시면 들어와주세요)내공100

... 질문합니다(그냥IT쪽아시면 들어와주세요)내공100 제가... 현재 FOR , IF 문 정도만 만질수 있는 초짜입니다 포인터... 부질문) 4. 삼성같은경우 코딩시험본다는데...

c언어 공부[내공100]

... 질문 하겠습니다 . 워드,한글,엑셀,c언어,c++언어,자바... c언어와 c++ 언어 자바 프로그래밍언어는 결국 기초는 다똑같습니다. 조건문 if문 switch 반복문 for while 등등...