package imageanalyser; import javax.swing.JComponent; import com.sun.xml.internal.ws.api.message.Attachment; import java.awt.event.MouseMotionListener; import java.awt.geom.*; import java.awt.*; /** *
Title: Analyseur d'image
*Description: Ce programme analyse les images et en créer une autre à partir de propre
*Copyright: Copyright (c) 2004
*Company:
* @author Parchet Michaël * @version 1.0 */ public class Selector extends JComponent { private boolean Selected; private ColorRectangle[] attatche = new ColorRectangle[8]; public Selector () { this.setBounds(50,50,50,50); } public Selector (int x, int y,int width,int height) { this(new Rectangle(x,y,width,height)); for (int i = 0; i < attatche.length ; i++) { attatche[i] = new ColorRectangle(Color.BLACK); attatche[i].setVisible(false); } } public Selector (Rectangle rect) { this.setBounds(rect); } public void paintComponent(Graphics g) { Graphics2D g2d = (Graphics2D) g; Rectangle2D rect = new Rectangle2D.Float(0,0,this.getWidth(),this.getHeight()); g2d.setPaint(Color.BLUE); // motif float[] motif = {10,5,10,5,10,5}; g2d.setStroke(new BasicStroke(5, BasicStroke.CAP_BUTT ,BasicStroke.JOIN_BEVEL, 10, motif, 0)); g2d.draw(rect); } /* public Rectangle getRealBounds() { Rectangle rect = new Rectangle(this.getBounds()); ImageViewer image = (ImageViewer)this.getParent(); int[] rappprt = image.calculerRaport(); rect.x -= rappprt[0] / 2; rect.y -= rappprt[1] / 2; rect.width += rappprt[0] / 2; rect.height += rappprt[1] / 2; return rect; }*/ public boolean IsSelected () { return Selected; } public void SetSelected (boolean selected) { for (int i = 0; i < attatche.length; i++) { attatche[i].setVisible(selected); } this.Selected = selected; } }