0
내 프로젝트에서 사용중인 일부 맞춤 구성 요소에 문제가 있습니다. 그리기에는 문제가 없지만, 이제는 특정 색상의 첫 번째 픽셀 좌표를 찾고 일부 문제가 발생합니다.자바 맞춤 구성 요소 픽셀 색상
여기 내 구성 요소 코드 :
class DrawPad extends JComponent {
private LinkedList<Line> lines = new LinkedList<>();
DrawPad() {
setDoubleBuffered(true);
addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
lines.add(new Line());
lines.getLast().add(e.getPoint());
}
});
addMouseMotionListener(new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent e) {
lines.getLast().add(e.getPoint());
repaint();
}
});
}
void clear() {
lines.clear();
repaint();
}
@Override
public void paint(Graphics g) {
super.paint(g);
g.setColor(Color.WHITE);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(Color.BLACK);
if (!lines.isEmpty()) {
for (Line line : lines) {
// TODO
LinkedList<Point> points = line.getPoints();
Point previous = points.getFirst(), current = previous;
for (int i = 1; i < points.size(); i++) {
current = points.get(i);
g.drawLine(previous.x, previous.y, current.x, current.y);
previous = current;
}
}
}
}
}
나는 아마 최적화 할 수 있습니다 알고 있지만, 지금은 그렇게 중요하지 않습니다.
특정 색상의 첫 번째 픽셀을 검색하는 방법을 작성하는 사람이 있습니까?
최근에 나는 BufferedImage
으로 뭔가를해야한다는 것을 알았지 만 그것을 구현하는 방법을 모른다. 어떤 도움을 주시면 감사하겠습니다.