⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 field_bk.h

📁 linux下的人机对话编程
💻 H
📖 第 1 页 / 共 5 页
字号:
/*#include<gnome.h>#include"field.h"#include"switch.h"#include"sg.h"#include"main.h"*/#define Line_Dist  60.0; int m=0; GnomeCanvasItem *line_XDJG; GnomeCanvasItem *line_1BG; GnomeCanvasItem *line_XJG; GnomeCanvasItem *line_D1G; GnomeCanvasItem *line_1_15WG; GnomeCanvasItem *line_1DG; GnomeCanvasItem *line_3DG; GnomeCanvasItem *line_5_11DG; GnomeCanvasItem *line_7_9DG; GnomeCanvasItem *line_13DG; GnomeCanvasItem *line_15DG; GnomeCanvasItem *line_17DG; GnomeCanvasItem *line_19DG; GnomeCanvasItem *line_1G; GnomeCanvasItem *line_2G; GnomeCanvasItem *line_3G; GnomeCanvasItem *line_4G; GnomeCanvasItem *line_5G; GnomeCanvasItem *line_1AG; GnomeCanvasItem *line_D4G; GnomeCanvasItem *line_2_8DG; GnomeCanvasItem *line_4_6DG; GnomeCanvasItem *line_10DG; GnomeCanvasItem *line_12_14DG;GnomeCanvasItem *line_SJG; GnomeCanvasItem *line_12FB_14DB_DG; GnomeCanvasItem *line_12DB_DG; GnomeCanvasItem *line_12FB_14FB_DG; GnomeCanvasItem *line_5DB_11DB_DG; GnomeCanvasItem *line_5FB_DG; GnomeCanvasItem *line_11FB_DG; GnomeCanvasItem *line_7DB_9DB_DG; GnomeCanvasItem *line_7FB_DG; GnomeCanvasItem *line_9FB_DG; GnomeCanvasItem *line_2DB_8DB_DG; GnomeCanvasItem *line_2FB_DG; GnomeCanvasItem *line_8FB_DG; GnomeCanvasItem *line_4DB_6DB_DG; GnomeCanvasItem *line_4FB_DG; GnomeCanvasItem *line_6FB_DG; GnomeCanvasItem *line_1DB_DG; GnomeCanvasItem *line_1FB_DG; GnomeCanvasItem *line_3DB_DG; GnomeCanvasItem *line_3FB_DG; GnomeCanvasItem *line_13DB_DG; GnomeCanvasItem *line_13FB_DG; GnomeCanvasItem *line_15DB_DG; GnomeCanvasItem *line_15FB_DG; GnomeCanvasItem *line_17DB_DG; GnomeCanvasItem *line_17FB_DG; GnomeCanvasItem *line_19DB_DG; GnomeCanvasItem *line_19FB_DG; GnomeCanvasItem *line_10DB_DG; GnomeCanvasItem *line_10FB_DG;/*******道岔上的点********/ GnomeCanvasItem *dot1_1DB; GnomeCanvasItem *dot1_2DB; GnomeCanvasItem *dot3_1DB; GnomeCanvasItem *dot3_2DB; GnomeCanvasItem *dot5_1DB; GnomeCanvasItem *dot5_2DB; GnomeCanvasItem *dot7_1DB; GnomeCanvasItem *dot7_2DB; GnomeCanvasItem *dot9_1DB; GnomeCanvasItem *dot9_2DB; GnomeCanvasItem *dot11_1DB; GnomeCanvasItem *dot11_2DB; GnomeCanvasItem *dot13_1DB; GnomeCanvasItem *dot13_2DB; GnomeCanvasItem *dot15_1DB; GnomeCanvasItem *dot15_2DB; GnomeCanvasItem *dot17_1DB; GnomeCanvasItem *dot17_2DB; GnomeCanvasItem *dot19_1DB; GnomeCanvasItem *dot19_2DB; GnomeCanvasItem *dot2_1DB; GnomeCanvasItem *dot2_2DB; GnomeCanvasItem *dot4_1DB; GnomeCanvasItem *dot4_2DB; GnomeCanvasItem *dot6_1DB; GnomeCanvasItem *dot6_2DB; GnomeCanvasItem *dot8_1DB; GnomeCanvasItem *dot8_2DB; GnomeCanvasItem *dot10_1DB; GnomeCanvasItem *dot10_2DB; GnomeCanvasItem *dot12_1DB; GnomeCanvasItem *dot12_2DB; GnomeCanvasItem *dot14_1DB; GnomeCanvasItem *dot14_2DB; GnomeCanvasItem *dot1_1FB; GnomeCanvasItem *dot1_2FB; GnomeCanvasItem *dot3_1FB; GnomeCanvasItem *dot3_2FB; GnomeCanvasItem *dot5_1FB; GnomeCanvasItem *dot5_2FB; GnomeCanvasItem *dot7_1FB; GnomeCanvasItem *dot7_2FB; GnomeCanvasItem *dot9_1FB; GnomeCanvasItem *dot9_2FB; GnomeCanvasItem *dot11_1FB; GnomeCanvasItem *dot11_2FB; GnomeCanvasItem *dot13_1FB; GnomeCanvasItem *dot13_2FB; GnomeCanvasItem *dot15_1FB; GnomeCanvasItem *dot15_2FB; GnomeCanvasItem *dot17_1FB; GnomeCanvasItem *dot17_2FB; GnomeCanvasItem *dot19_1FB; GnomeCanvasItem *dot19_2FB; GnomeCanvasItem *dot2_1FB; GnomeCanvasItem *dot2_2FB; GnomeCanvasItem *dot4_1FB; GnomeCanvasItem *dot4_2FB; GnomeCanvasItem *dot6_1FB; GnomeCanvasItem *dot6_2FB; GnomeCanvasItem *dot8_1FB; GnomeCanvasItem *dot8_2FB; GnomeCanvasItem *dot10_1FB; GnomeCanvasItem *dot10_2FB; GnomeCanvasItem *dot12_1FB; GnomeCanvasItem *dot12_2FB; GnomeCanvasItem *dot14_1FB; GnomeCanvasItem *dot14_2FB;gboolean  Ctr_1_DB=FALSE,  Ctr_3_DB=FALSE,  Ctr_5_DB=FALSE,  Ctr_7_DB=FALSE,  Ctr_9_DB=FALSE,          Ctr_11_DB=FALSE, Ctr_13_DB=FALSE, Ctr_15_DB=FALSE, Ctr_17_DB=FALSE, Ctr_19_DB=FALSE,          Ctr_2_DB=FALSE,  Ctr_4_DB=FALSE,  Ctr_6_DB=FALSE,  Ctr_8_DB=FALSE,  Ctr_10_DB=FALSE,          Ctr_12_DB=FALSE, Ctr_14_DB=FALSE,          Ctr_1_FB=FALSE,  Ctr_3_FB=FALSE,  Ctr_5_FB=FALSE,  Ctr_7_FB=FALSE,  Ctr_9_FB=FALSE,          Ctr_11_FB=FALSE, Ctr_13_FB=FALSE, Ctr_15_FB=FALSE, Ctr_17_FB=FALSE, Ctr_19_FB=FALSE,          Ctr_2_FB=FALSE,  Ctr_4_FB=FALSE,  Ctr_6_FB=FALSE,  Ctr_8_FB=FALSE,  Ctr_10_FB=FALSE,          Ctr_12_FB=FALSE, Ctr_14_FB=FALSE, Ctr_12_14_DG_1=FALSE,   Ctr_12_14_DG_2=FALSE;int draw_no_swfd(double x1,double y1,double x2,double y2,GtkWidget*canvas,gchar*cr,int i){  GnomeCanvasPoints *point1;  GnomeCanvasGroup *group;  group=gnome_canvas_root(GNOME_CANVAS(canvas));    point1=gnome_canvas_points_new(2);   point1->coords[0]=x1;   point1->coords[1]=y1;   point1->coords[2]=x2;   point1->coords[3]=y2;      if(i==0){     if(value==FALSE){  line_XDJG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }    if(value==TRUE){ gnome_canvas_item_set( line_XDJG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_XDJG);       gnome_canvas_item_show(line_XDJG);             }    }   if(i==1){     if(value==FALSE){ line_1BG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);     }if(value==TRUE){ gnome_canvas_item_set( line_1BG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_1BG);       gnome_canvas_item_show(line_1BG);                 }   }if(i==2){  if(value==FALSE){ line_XJG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_XJG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_XJG);       gnome_canvas_item_show(line_XJG);             }   }if(i==3){  if(value==FALSE){  line_D1G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_D1G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_D1G);       gnome_canvas_item_show(line_D1G);             }   }if(i==4){  if(value==FALSE){ line_1_15WG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_1_15WG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_1_15WG);       gnome_canvas_item_show(line_1_15WG);             }   }   if(i==13){  if(value==FALSE){ line_1G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_1G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_1G);       gnome_canvas_item_show(line_1G);             }   }if(i==14){  if(value==FALSE){ line_2G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_2G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_2G);       gnome_canvas_item_show(line_2G);             }   }if(i==15){  if(value==FALSE){ line_3G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_3G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_3G);       gnome_canvas_item_show(line_3G);             }   }if(i==16){  if(value==FALSE){ line_4G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_4G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_4G);       gnome_canvas_item_show(line_4G);             }   }if(i==17){  if(value==FALSE){ line_5G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_5G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_5G);       gnome_canvas_item_show(line_5G);             }   }if(i==18){  if(value==FALSE){ line_1AG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_1AG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_1AG);       gnome_canvas_item_show(line_1AG);             }   }if(i==19){  if(value==FALSE){ line_D4G= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0, "join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_D4G,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_D4G);       gnome_canvas_item_show(line_D4G);             }}if(i==24){  if(value==FALSE){ line_SJG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(),"points",point1,"fill_color", cr,"width_units",4.0, "join_style", GDK_CAP_BUTT,"line_style",GDK_LINE_SOLID,NULL);  }if(value==TRUE){   gnome_canvas_item_set( line_SJG,"points",point1,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_SJG);       gnome_canvas_item_show(line_SJG);      }//true}//i=24 gnome_canvas_points_unref(point1);  return 1;}//draw_noSwitchfeild/*-------------------------1个道岔区段--------------------------------------*/int draw_onesw_fd(double fx,double fy,double f1x,double f1y,double f2x,double f2y,		      double f3x,double f3y,double f4x,double f4y,double f8x,double f8y,double                      f9x, double f9y,int dir,gchar*cr,GtkWidget*canvas,int i){  GnomeCanvasPoints *point1,*point2;  GnomeCanvasGroup *group;  group=gnome_canvas_root(GNOME_CANVAS(canvas));  double c1x,c1y,c2x,c2y,c3x,c3y,c4x,c4y;   if(dir==0){/*一岔区段里的道岔为定位*/       point1=gnome_canvas_points_new(2);   point1->coords[0]=fx;   point1->coords[1]=fy;   point1->coords[2]=f2x;   point1->coords[3]=f2y;   point2=gnome_canvas_points_new(4);   point2->coords[0]=fx;   point2->coords[1]=fy;   point2->coords[2]=f1x;   point2->coords[3]=f1y;   point2->coords[4]=f3x;   point2->coords[5]=f3y;   point2->coords[6]=f4x;   point2->coords[7]=f4y;   if(i==5) {          /*1DG*/     if(Ctr_1_DB==TRUE){ gtk_object_destroy(GTK_OBJECT(dot1_1DB)); gtk_object_destroy(GTK_OBJECT(dot1_2DB)); Ctr_1_DB=FALSE;     }     if(Ctr_1_FB==TRUE){ gtk_object_destroy(GTK_OBJECT(dot1_1FB)); gtk_object_destroy(GTK_OBJECT(dot1_2FB)); Ctr_1_FB=FALSE;     }     if(value==FALSE){ line_1DB_DG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(), "points",point1,"fill_color", cr,"width_units",4.0, "join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL); line_1FB_DG= gnome_canvas_item_new(group,gnome_canvas_line_get_type(), "points",point2,"fill_color", cr,"width_units",4.0,"join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL);     } if(value==TRUE){ gnome_canvas_item_set( line_1DB_DG,"points",point1,"fill_color", cr,"width_units",                       4.0,"join_style", GDK_CAP_BUTT,"line_style", GDK_LINE_SOLID,NULL);       gnome_canvas_item_request_update(line_1DB_DG);       gnome_canvas_item_show(line_1DB_DG);       gnome_canvas_item_hide(line_1FB_DG);           } if(Ctr_1_DB==FALSE){ c1x=f1x-2.0; c1y=f1y-2.0; c2x=f1x+2.0; c2y=f1y+2.0; dot1_1DB=gnome_canvas_item_new(group, /*1号道岔两个小点*/                        gnome_canvas_ellipse_get_type(), "x1",c1x,"y1",c1y,"x2",c2x,"y2",c2y,"fill_color","green",		        NULL); c3x=f8x-2.0; c3y=f8y-2.0; c4x=f8x+2.0; c4y=f8y+2.0; dot1_2DB=gnome_canvas_item_new(group, gnome_canvas_ellipse_get_type(),"x1",c3x,"y1",c3y,"x2",c4x,"y2",c4y,"fill_color","green", NULL); Ctr_1_DB=TRUE; /* 两个点已经存在*/ }   }   if(i==6){        /*3DG*/   if(Ctr_3_DB==TRUE){ gtk_object_destroy(GTK_OBJECT(dot3_1DB));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -