package DrawJPG;
|
import java.awt.*;
|
|
import Method.BaoWenShow;
|
import Method.GetNowTime;
|
import PbuliClass.Get_Tb_Gass;
|
import PbuliClass.Leds;
|
import fence.Fences;
|
import fence.kaoqing.Dell_KaoQing;
|
import fence.kaoqing.TbRealKaoQing;
|
import tbDataModel.TbGas;
|
import tbDataModel.Tb_led;
|
|
/**
|
* »°å¹¤¾ß
|
*/
|
public class MyPanel2 {
|
public static final int XPOINT = 100;
|
public static final int YPOINT = 100;
|
|
static int gas=0;//ÆøÌå·Ò³´ÎÊý
|
static int kq=0;//¿¼ÇÚ·Ò³´ÎÊý
|
|
int shug=50;//ÊúÏߵļä¸ô
|
|
//ÐèÒªÏÔʾµÄ¿¼ÇÚ±êÌâÊýÁ¿
|
int kqtitlenum=Leds.kqtitlenum();
|
|
//ÐèÒªÏÔʾµÄÆøÌå±êÌâÊýÁ¿
|
int gastitlenum=Leds.gasnum();
|
|
//ģʽ1ÆøÌåºÍ¿¼ÇÚͨһ¸öÒ³ÃæÏÔʾ£¬Ä£Ê½2¿¼ÇÚÏÔʾÍê±ÏºóÔÙÏÔÊ¾ÆøÌåÒ³Ãæ
|
Tb_led led=Leds.get_tb_led();
|
|
//±í¸ñ×ó±ß¿òÆðµãXy
|
int x0=Integer.parseInt(Leds.get_tb_led().getJx());
|
int y0=Integer.parseInt(Leds.get_tb_led().getJy());
|
|
//±í¸ñµÄ³¤¶È
|
int WIDTH =Integer.parseInt(Leds.get_tb_led().getjW());
|
//±í¸ñµÄ¿í¶È
|
int HEIGHT =Integer.parseInt(Leds.get_tb_led().getJh());
|
|
//±í¸ñµÄÐÐ
|
int hang=Integer.parseInt(Leds.get_tb_led().getTh());
|
|
//±í¸ñµÄÁÐ
|
int lie=Integer.parseInt(Leds.get_tb_led().getTl());
|
|
//ÿ¸öµ¥Ôª¸ñµÄ¿í¶È
|
int dyw=(int) Math.ceil(WIDTH/lie);
|
//ÿ¸öµ¥Ôª¸ñµÄ¸ß¶È
|
int dyh=(int) Math.ceil(HEIGHT/hang);
|
|
static boolean gaskq=true;
|
|
public MyPanel2(Graphics g) {
|
paintComponent(g);
|
}
|
|
|
//ÿҳÐèÒªÏÔʾµÄÐÐÊý
|
int hangnum=hang-3;
|
|
/**¿¼ÇÚÐèÒª·Ò³µÄ´ÎÊý*/
|
public int kaoqingpage() {
|
int page=0;
|
int size=Dell_KaoQing.getrealkaoqings().size();
|
if(size<=hangnum && size!=0) {
|
page=1;
|
}else if(size>hangnum) {
|
double j=size/hangnum;
|
page=(int) Math.ceil(j);
|
if((size%hangnum) !=0) {
|
page=page+1;
|
}
|
}
|
return page;
|
}
|
|
/**¿¼ÇÚ×îºóÒ»Ò³µÄÊýÁ¿*/
|
public int getkqzh() {
|
int size=Dell_KaoQing.getrealkaoqings().size()%hangnum;
|
return size;
|
}
|
|
/**ÆøÌå×îºóÒ»Ò³µÄÊýÁ¿*/
|
public int getgaszh() {
|
int size=Get_Tb_Gass.get_gass().size()%hangnum;
|
return size;
|
}
|
|
/**ÆøÌåÐèÒª·Ò³µÄ´ÎÊý*/
|
public int gaspage() {
|
int page=0;
|
int size=Get_Tb_Gass.get_gass().size();
|
if(size<=hangnum && size!=0) {
|
page=1;
|
}else if(size>hangnum) {
|
double j=size/hangnum;
|
page=(int) Math.ceil(j);
|
if((size%hangnum) !=0) {
|
page=page+1;
|
}
|
}
|
|
return page;
|
}
|
|
|
/**
|
* Éú³É¶ÔӦͼƬ
|
* @param g
|
*/
|
public void paintComponent(Graphics g) {
|
g.setColor(Color.black);
|
g.fillRect(0, 0, ImageIOHandler.WIDTH, ImageIOHandler.HEIGHT);//ÉèÖÃͼƬ³ß´ç
|
|
//»æÖƱêÌâ
|
g.setColor(Color.red);
|
int title_y=Integer.parseInt(Leds.get_tb_led().getTitle_y());
|
int title_x=Integer.parseInt(Leds.get_tb_led().getTitle_x());
|
int title_s=Integer.parseInt(Leds.get_tb_led().getTitle_S());
|
g.setFont(new Font("ËÎÌå", Font.PLAIN,title_s));
|
g.drawString(Leds.get_tb_led().getTitle(), x0+title_x,y0+title_y);
|
|
|
//»æÖÆÊ±¼ä
|
int time_x=Integer.parseInt(Leds.get_tb_led().getTime_x());
|
int time_y=Integer.parseInt(Leds.get_tb_led().getTime_y());
|
int times=Integer.parseInt(Leds.get_tb_led().getTime_s());
|
|
|
|
//µÚ3Ðмä¸ôʵʱ½ø¶´ÈËÊý
|
|
int kqx=Integer.parseInt(Leds.get_tb_led().getKq_x());
|
int kqy=Integer.parseInt(Leds.get_tb_led().getKq_y());
|
int kqs=Integer.parseInt(Leds.get_tb_led().getKq_s());
|
|
|
//ÄÚÈݾàÀë×ó±ßÏß¾àÀë
|
int nxx=Integer.parseInt(Leds.get_tb_led().getShx());
|
int nxy=Integer.parseInt(Leds.get_tb_led().getShy());
|
int nxs=Integer.parseInt(Leds.get_tb_led().getShs());
|
|
|
|
String timeshow=GetNowTime.now()+" ";
|
String kaoqnum=Dell_KaoQing.all_kaoqing_num();
|
if(Leds.get_tb_led().getTimeshow().equals("0")) {
|
timeshow="";
|
}
|
|
if(Leds.get_tb_led().getLeft().equals("0")) {
|
kaoqnum="";
|
}
|
g.setFont(new Font("ËÎÌå",Font.PLAIN,times));
|
g.drawString(timeshow+kaoqnum, x0+time_x,y0+time_y);
|
|
|
//»æÖÆÏêϸµÄ¿¼ÇÚÐÅÏ¢
|
boolean kqhz=Leds.get_tb_led().getLeft().equals("1");//»æÖƶ¨Î»Êý¾Ý
|
if(gaskq && kqhz) {
|
|
//»³ö¿¼ÇÚ±êÌâ
|
for(int i=0;i<kqtitlenum;i++) {
|
String name=Leds.getKqvc().get(i);
|
g.setFont(new Font("ËÎÌå",Font.PLAIN,kqs));
|
g.drawString(name,x0+i*dyw+kqx,y0+2*dyh+kqy);
|
|
}
|
|
|
if(kaoqingpage() !=0) {
|
|
g.setFont(new Font("ËÎÌå",Font.PLAIN,nxs));
|
//ÿҳ»µÄÐÐÊý
|
int hangshu=hang-3;
|
//×îºóÒ»Ò³ÐèÒª»µÄÐÐÊý
|
if(getkqzh() !=0 && kaoqingpage()==(kq+1)) {
|
hangshu=getkqzh();
|
}
|
|
for(int i=0;i<hangshu;i++) {
|
TbRealKaoQing kqn = Dell_KaoQing.getrealkaoqings().get(kq*hangshu+i);
|
|
//´ÓµÚ¼¸ÁпªÊ¼»
|
int j=0;
|
|
//»³öÐÕÃû
|
if(Leds.get_tb_led().getShow_name().equals("1") ) {
|
g.drawString(kqn.getName(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//»³ö¿¨ºÅ
|
if(Leds.get_tb_led().getShow_kahao().equals("1")) {
|
g.drawString(kqn.getTagid(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//»³ö²¿ÃÅ
|
if(Leds.get_tb_led().getShow_bumen().equals("1")) {
|
String bumen=kqn.getBumen();
|
if(bumen.equals("ϵͳĬÈÏ")) {
|
bumen="ĬÈÏ";
|
}
|
g.drawString(bumen,x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//»³öÇøÓò
|
if(Leds.get_tb_led().getShow_quyu().equals("1")) {
|
g.drawString(kqn.getArea(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
|
//»³ö½øÈëʱ¼ä
|
if(Leds.get_tb_led().getShow_time().equals("1")) {
|
String name=kqn.getIntime().substring(10,16);
|
g.drawString(name,x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//Èç¹û¹´Ñ¡¾àÀë
|
if(Leds.get_tb_led().getShow_distance().equals("1")) {
|
int x=kqn.getX();
|
int y=kqn.getY();
|
int x00=0;
|
int y00=0;
|
|
String name=kqn.getArea();
|
String kq1name=Fences.kaoqing_name(0);//¿¼ÇÚÇøÓò1Ãû³Æ
|
|
if(name.equals(kq1name)) {
|
String x0y0=Leds.get_tb_led().getBaoliu1();
|
String[] a=x0y0.split(",");
|
x00=Integer.parseInt(a[0]);
|
y00=Integer.parseInt(a[1]);
|
|
|
}else {
|
String x1y1=Leds.get_tb_led().getBaoliu2();
|
String[] a=x1y1.split(",");
|
x00=Integer.parseInt(a[0]);
|
y00=Integer.parseInt(a[1]);
|
}
|
|
double dis=Math.sqrt((x-x00)*(x-x00)+(y-y00)*(y-y00))/100;
|
|
String a=name+",dis:"+dis+"x,y:"+x+"£¬"+y+" x00,y00"+x00+","+y00;
|
BaoWenShow.ok_tagid("2", "debug",a, "127.0.0.1","0");
|
|
//¾àÀëÔµãµÄ¾àÀë
|
int distance=new Double(dis).intValue();
|
g.drawString(distance+"Ã×",x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
}
|
}
|
kq++;
|
if(kq==kaoqingpage()) {
|
kq=0;
|
gaskq=false;
|
}
|
}else {
|
g.drawString("ÎÞÊý¾Ý",x0+nxx,y0+3*dyh+nxy);
|
gaskq=false;
|
|
}
|
}else {
|
//Èç¹û¿ªÆôÆøÌåͶÆÁÏÔʾÔò»æÖÆÆøÌåÏêϸÐÅÏ¢
|
if(Leds.get_tb_led().getGas().equals("1")) {
|
|
//»æÖÆÆøÌå±êÌâÐÅÏ¢
|
for(int i=0;i<kqtitlenum;i++) {
|
String name=Leds.getGasvc().get(i);
|
g.setFont(new Font("ËÎÌå",Font.PLAIN,kqs));
|
g.drawString(name,x0+i*dyw+kqx,y0+2*dyh+kqy);
|
}
|
|
g.setFont(new Font("ËÎÌå",Font.PLAIN,nxs));
|
|
//ÿҳ»µÄÐÐÊý
|
int hangshu=hang-3;
|
//×îºóÒ»Ò³ÐèÒª»µÄÐÐÊý
|
if(getgaszh() !=0 && gaspage()==(gas+1)) {
|
hangshu=getgaszh();
|
}
|
|
for(int i=0;i<hangshu;i++) {
|
TbGas tbgas = Get_Tb_Gass.get_gass().get(gas*hangshu+i);
|
|
//´ÓµÚ¼¸ÁпªÊ¼»
|
int j=0;
|
|
//ÆøÌåÃû³Æ
|
if(Leds.get_tb_led().getGas_name().equals("1")) {
|
g.drawString(gas_name(tbgas.getGas_type()), x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//ÆøÌåÀàÐÍ
|
if(Leds.get_tb_led().getGas_type().equals("1")) {
|
g.drawString(tbgas.getGas_type(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//ÆøÌåŨ¶È
|
if(Leds.get_tb_led().getGas_nongdu().equals("1")) {
|
g.drawString(tbgas.getNong_du(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//ÆøÌåÇøÓò
|
if(Leds.get_tb_led().getGas_quyu().equals("1")) {
|
g.drawString(tbgas.getWei_zhi(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//¸üÐÂʱ¼ä
|
if(Leds.get_tb_led().getGas_time().equals("1")) {
|
String time=tbgas.getAddtime();
|
if(time.length()>8) {
|
time=tbgas.getAddtime().substring(10,16);
|
}
|
g.drawString(time,x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
j=j+1;
|
}
|
|
//¸æ¾¯×´Ì¬
|
if(Leds.get_tb_led().getGas_state().equals("1")) {
|
g.drawString(tbgas.getStatus(),x0+j*dyw+nxx,y0+(3+i)*dyh+nxy);
|
}
|
|
}
|
gas++;
|
if(gas==gaspage()) {
|
gas=0;
|
gaskq=true;
|
}
|
}
|
gaskq=true;
|
}
|
|
|
//»æÖÆÒ»¸ö¾ØÐÎ
|
g.drawRect(x0,y0,WIDTH,HEIGHT);
|
|
//»æÖÆÖ±Ïß
|
for(int i=0;i<(hang-2);i++) {
|
g.drawLine(x0,y0+(i+2)*dyh,x0+WIDTH,y0+(i+2)*dyh);
|
}
|
|
|
//»æÖÆÊúÏß
|
for(int i=0;i<(lie-1);i++) {
|
g.drawLine(x0+(i+1)*dyw,y0+2*dyh,x0+(i+1)*dyw,y0+HEIGHT);
|
}
|
|
|
|
Graphics2D g2d = (Graphics2D) g;
|
g2d.setColor(Color.red);//ÉèÖÃÇúÏßÑÕÉ«
|
g.dispose();//»æÖÆÍ¼ÐÎ
|
}
|
|
//½«doubleÀàÐÍת»»ÎªintÀàÐÍ,²¢¶ÔÉú³ÉÇúÏßµÄλÖýøÐÐУÕý
|
public int round(double data) {
|
//ÏÈת»¯µçѹֵ,Ö®ºóÔÙ¶ÔͼÏñλÖýøÐе÷Õû
|
return ((int)(-data*500) + ImageIOHandler.HEIGHT/2);
|
}
|
|
public String gas_name(String type) {
|
String name="ÑõÆø";
|
if(type.replace(" ","").equals("CO")) {
|
name="Ò»Ñõ»¯Ì¼";
|
}else if(type.replace(" ","").equals("H2S")) {
|
name="Áò»¯Çâ";
|
}
|
|
if(type.replace(" ","").equals("CH4")) {
|
name="¼×Íé";
|
}
|
|
if(type.replace(" ","").equals("CO2")) {
|
name="¶þÑõ»¯Ì¼";
|
}
|
|
if(type.replace(" ","").equals("SO2")) {
|
name="¶þÑõ»¯Áò";
|
}
|
|
if(type.replace(" ","").equals("O2")) {
|
name="ÑõÆø ";
|
}
|
return name;
|
}
|
|
|
public static int getGas() {
|
return gas;
|
}
|
|
|
public static int getKq() {
|
return kq;
|
}
|
|
|
public static void setGas(int gas) {
|
MyPanel2.gas = gas;
|
}
|
|
|
public static void setKq(int kq) {
|
MyPanel2.kq = kq;
|
}
|
|
}
|