83 lines
2.2 KiB
Java
83 lines
2.2 KiB
Java
package org.insa.drawing ;
|
|
|
|
/**
|
|
* Classe abstraite pour dessiner a l'ecran.
|
|
* Deux implementations : une sous-classe DessinVisible qui dessine vraiment a l'ecran
|
|
* et une sous-classe DessinInvisible qui ne dessine rien (pour ne pas ralentir les tests avec l'affichage).
|
|
*/
|
|
|
|
import java.awt.* ;
|
|
|
|
public interface Drawing {
|
|
|
|
/**
|
|
* Enable auto-repaint mode - When this mode is enable, call to
|
|
* drawing function will automatically repaint the drawing, which
|
|
* may be very slow in some case.
|
|
*
|
|
* @param autoRepaint Use true to enable auto-repaint, false to disable.
|
|
*
|
|
*/
|
|
public void setAutoRepaint(boolean autoRepaint);
|
|
|
|
/**
|
|
* Repaint the drawing.
|
|
*
|
|
*/
|
|
public void repaint();
|
|
|
|
/**
|
|
* Set the pencil width.
|
|
*
|
|
* @param width Width for the pencil.
|
|
*
|
|
*/
|
|
public void setWidth(int width);
|
|
|
|
/**
|
|
* Set the pencil color.
|
|
*
|
|
* param color Color for the pencil.
|
|
*
|
|
*/
|
|
public void setColor(Color col);
|
|
|
|
/**
|
|
* Indique les bornes de la fenetre graphique.
|
|
* Le calcul des coordonnees en pixel se fera automatiquement
|
|
* a l'appel des methodes drawLine et autres.
|
|
*
|
|
* @param long1 longitude du bord gauche
|
|
* @param long2 longitude du bord droit
|
|
* @param lat1 latitude du bord bas
|
|
* @param lat2 latitude du bord haut
|
|
*
|
|
*/
|
|
public void setBB(double long1, double long2, double lat1, double lat2);
|
|
|
|
/**
|
|
* Trace un segment.
|
|
* @param long1 longitude du premier point
|
|
* @param lat1 latitude du premier point
|
|
* @param long2 longitude du second point
|
|
* @param lat2 latitude du second point
|
|
*/
|
|
public void drawLine(float long1, float lat1, float long2, float lat2);
|
|
|
|
/**
|
|
* Trace un point.
|
|
* @param lon longitude du point
|
|
* @param lat latitude du point
|
|
* @param width grosseur du point
|
|
*/
|
|
public void drawPoint(float lon, float lat, int width);
|
|
|
|
/**
|
|
* Ecrit du texte a la position indiquee.
|
|
* @param lon longitude du point ou positionner le texte.
|
|
* @param lat latitude du point ou positionner le texte.
|
|
* @param txt le texte a ecrire.
|
|
*/
|
|
public void putText(float lon, float lat, String txt);
|
|
|
|
}
|