2014-02-26 5 views
-1

원의 둘레에 관한 질문. 원 (원주)의 외부 색상을 변경하려면 내가 어디에 가서 그냥 정확히 어떻게 잘 모릅니다 Public void drawArc below..after 다음 코드 후 시작하지arcAngle을 사용하여 원의 바깥 쪽을 칠하기

drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) 

을 사용

public void paintComponent(Graphics g) { 
    super.paintComponent(g); 

    Dimension d = getSize(); 

    for(int i = 0; i < 100; ++i) {       
     Color color = new Color(generator.nextInt(255), generator.nextInt(255), generator.nextInt(255)); 
     g.setColor(color); 

     int circleSize = generator.nextInt(d.width/4); 
     int x = generator.nextInt(d.width - circleSize); 
     int y = generator.nextInt(d.height - circleSize); 
     g.fillOval(x, y, circleSize, circleSize); 
     g.drawArc(x, y, circleSize, circleSize, 0, 360); 
    } 
} 
+1

과제를 잘못 이해했을 가능성이 있습니까? 선생님은 당신이'Graphics' 클래스의'drawArc' 메소드를 사용하기를 원합니다. –

+0

@DavidWallace 동의하고 이것이 내가 그것을 바꿨지 만 지금은 다시 붙어 있습니다 .. –

+0

@DavidWallace는 색을 바꾸기 위해 성명을 추가해 주셔서 감사합니다! –

답변

0

독자적인 drawArc 메서드가 필요하지 않으므로 Graphics.drawArc() 메서드를 호출해야합니다. xy은 원의 중심이며, widthheight은 원의 직경이고 startAnglearcAngle은 원 그리기를 시작하고 중지 할 위치입니다. 0시는 3시입니다. 완전한 원을 그리려면 startAnglearcAngle에 0과 360을 사용합니다.

1

사이의 색상을 변경하지 않고 원의 본문을 그린 다음 윤곽선을 그립니다. 즉, 원의 윤곽을 실제로 볼 수 없다는 의미입니다.

개요를 그리기 전에 그래픽 컨텍스트의 색을 변경해야한다고 생각합니다. 한 가지 방법은 drawArc 호출하기 전에

color = new Color(generator.nextInt(255), generator.nextInt(255), generator.nextInt(255)); 
g.setColor(color); 

를 삽입하는 것입니다.

관련 문제