[자바프로그램] 자바(스윙)을 이용한 그림판 구현(사각형, 원, 타원, 폴리라인, 폴리곤, 텍스트, 이미지 로드, 객체복사, 붙여넣기, 객체이동, 리사이즈, 저장, 로드)
*경*
다운로드
장바구니
소개글
자바(스윙)을 이용하여 그림판을 구였하였으며 모든 도형을 객체로 구현하였습니다.또한 각 객체의 선 색깔, 굵기, 객체 선택, 이동, 리사이즈, 복사, 붙여넣기, 그린 객체 저장, 로드, jpg 로드가 됩니다.
총 13개 파일로 이루어져 있으며 메인 파일은 CPicture.java입니다.
CPicture.java : 스윙으로 구현한 메인
ColorTable.java : 선색깔 선택
ImageCanvas.java : 객체를 그리기위한 캔버스
PicDrawable.java : 선택한 객체 그리기
PicDrawableRectangle.java : move, resize를 하기위한 객체의 꼭지점 그리기
Ellipse.java : 타원
Line.java : 선
Rect.java : 사각형
Oval.java : 원
PolyGon.java : 다각형
PolyLine.java : 뚤린 다각형
Text.java : 텍스트를 쓰기위한 윈도우
TextLine.java : 텍스트
각 파일들의 관계와 주석, 실행내용 캡쳐화면은 한글파일로 따로 정리해놓았습니다.
목차
<총 46파일>본문내용
import java.awt.*;import javax.swing.*;
import java.util.*;
import java.awt.event.* ;
public class ImageCanvas extends Canvas {
protected Vector elements;
protected PicDrawable selectedOne;
protected int focusType, selectedItem = -1;
protected int x, y, w, h, count = 0,count1=0;
protected int polyX[] = new int[100];
protected int polyY[] = new int[100];
protected Polygon polyLine = new Polygon();
public ImageCanvas() {
super();
setSize(700, 500);
setBackground(Color.white);
elements = new Vector(10, 10);
selectedOne = null;
focusType = PicDrawableRectangle.NONE;
addMouseMotionListener(new MouseMotionHandler());
addMouseListener(new MouseHandler());
addKeyListener(new KeyHandler());
}
public void clear() {
elements.removeAllElements();
repaint();
}
public Vector getData() {
return elements;
}
import java.awt.*;
public class PolyGon extends PicDrawableRectangle
{
protected Color PicColor = new Color(0, 0, 0);
protected float PicBold = 1.0f;
public PolyGon(int x[], int y[])
{
super(x, y);
PicColor =ColorTable.getSelectedColor();
PicBold = CPicture.LINEBOLD;
super.kindOfPic = 7;
}
public void paint(Graphics g)
{
int count = 0;
for(int i=0;i<100;i++)
if(polyX[i] != 0)
count++;
Graphics2D g2 = (Graphics2D)g;
super.paint(g2);
g2.setColor(PicColor);
BasicStroke pen = new BasicStroke(PicBold, BasicStroke.CAP_BUTT,BasicStroke.JOIN_ROUND);
g2.setStroke(pen);
(polyX, polyY, count);
g2.drawPolygon(polyX, polyY, count);
}
}
참고 자료
없음압축파일 내 파일목록
circle.gif
BABY2.JPG
choosecolor.gif
그림판.hwp
ColorTable$1.class
ColorTable.class
ColorTable.java
CPicture$1.class
CPicture$2.class
CPicture$3.class
CPicture$4.class
CPicture.class
CPicture.java
Ellipse.class
ellipse.gif
Ellipse.java
ImageCanvas$KeyHandler.class
ImageCanvas$MouseEventHandler.class
ImageCanvas$MouseHandler.class
ImageCanvas$MouseMotionHandler.class
ImageCanvas.class
ImageCanvas.java
Line.class
line.gif
Line.java
Oval.class
Oval.java
PicDrawable.class
PicDrawable.java
PicDrawableRectangle.class
PicDrawableRectangle.java
pointer.gif
PolyGon.class
polygon.gif
PolyGon.java
PolyLine.class
polyline.gif
PolyLine.java
Rect.class
Rect.java
rectangle.gif
Text.class
text.gif
Text.java
TextLine.class
TextLine.java
BABY2.JPG
choosecolor.gif
그림판.hwp
ColorTable$1.class
ColorTable.class
ColorTable.java
CPicture$1.class
CPicture$2.class
CPicture$3.class
CPicture$4.class
CPicture.class
CPicture.java
Ellipse.class
ellipse.gif
Ellipse.java
ImageCanvas$KeyHandler.class
ImageCanvas$MouseEventHandler.class
ImageCanvas$MouseHandler.class
ImageCanvas$MouseMotionHandler.class
ImageCanvas.class
ImageCanvas.java
Line.class
line.gif
Line.java
Oval.class
Oval.java
PicDrawable.class
PicDrawable.java
PicDrawableRectangle.class
PicDrawableRectangle.java
pointer.gif
PolyGon.class
polygon.gif
PolyGon.java
PolyLine.class
polyline.gif
PolyLine.java
Rect.class
Rect.java
rectangle.gif
Text.class
text.gif
Text.java
TextLine.class
TextLine.java
이 자료와 함께 구매한 자료
[자바프로그래밍]Java로 구현한 그림판 92페이지
자바로 짠 그림판 9페이지
Java로 구현한 Vector를 사용해 객체직렬화로 파일입출력이 가능한 그래픽툴(그림판) 92페이지
[자바] 그래픽 에디터 21페이지
[Java Programming] java로 짠 그림판 2페이지