java dwg jsp在圖上實時顯示人數
阿新 • • 發佈:2018-12-13
要實現如下圖在資料庫中查詢實時狀態下,基站下面有多少人+姓名
程式碼如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>華金礦業-圖形顯示定位人數</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <link rel="stylesheet" type="text/css" href="css/index.css"> <link rel="stylesheet" type="text/css" href="css/total.css"> <script type="text/javascript"> function hide(){ var id=document.getElementById("center_img"); var name=id.getAttribute("name"); var left=document.getElementById("center-left"); if(name=="block"){ left.setAttribute("style", "display:none;"); id.setAttribute("name", "none"); }if(name=="none"){ left.setAttribute("style", "display:block;"); id.setAttribute("name", "block"); } } function display(a){ var elements=[]; //獲得所有的li標籤 var list=document.getElementsByTagName("li"); var len=list.length;//獲得長度 //把class=sub-menu的li都放在集合裡面 for(var i=0;i<len;i++){ if(list[i].className== "sub-menu"){ elements[elements.length]=list[i]; } } /*把所有的隱藏 */ for(var i=0;i<elements.length;i++){ //獲得下面的ul var ul=elements[i].childNodes[3]; /* 設定屬性為隱藏 */ ul.setAttribute("style","display:none"); /* 點選當前元素的Ul設定可見 */ } /* 對所有的input背景顏色設定 */ var tree=document.getElementsByName("tree"); for(var i=0;i<tree.length;i++){ tree[i].setAttribute("style", "background-color:#E1F1FD;"); } var input=document.getElementById(a); input.setAttribute("style", "background-color:#5094D6;"); var ula=input.parentNode; var lla=ula.childNodes; for(var i=0;i<lla.length;i++){ if(lla[i].nodeName=='UL'){ lla[i].setAttribute("style","display:block"); } } } /*獲取當前的日期和時間 */ function tm(){ var today = new Date(); var year=today.getFullYear(); var month=today.getMonth()+1; var day=today.getDay(); var tm=year+"年"+month+"月"+day+"日"+" "+today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds(); ; var rq=document.getElementById("rq"); rq.innerHTML=tm; } </script> </head> <body onload="tm();"> <!-- 上 --> <div id="up" style="width:119%;"> <div id="up_left"> <ul> <li style="font-size:12px;">銅陵華金礦業有限責任公司</li> <li>井下綜合監管系統</li> </ul> </div> <table id="up_right"> <tr> <td class="prompt">您好!<%=request.getParameter("username") %></td> <td class="prompt">[華金礦業]:</td> <td class="prompt" id="rq"></td> </tr> <tr> <td class="prompt">密碼</td> <td class="prompt">桌面</td> <td class="prompt">登出</td> </tr> </table> </div> <div style="width:119%;height: 50px;background-color: #4891C6;position: relative;margin-top: -14px;margin-left: -7px;"></div> <!--中 --> <div id="centers"> <div id="center-left"> <input type="button" value="功能選單" class="view"> <ul id="all"> <!-- 第一個選單 --> <li class="sub-menu"> <input type="button" value="圖形展現" class="button" name="tree" id="jpg" onclick="display(this.id);"> <ul style="display: none;"> <li><a href="total_picture.jsp">實時總圖</a></li> <li><a href="role_position.jsp" >軌跡定位</a></li> <li><a href="current_position.jsp" >軌跡定位</a></li> </ul> </li> <!-- 第二個選單 --> <li class="sub-menu"> <input type="button" value="人員定位" class="button" name="tree" id="people" onclick="display(this.id);"> <ul style="display: none;"> <li><a href="/Socket/Underperson_status">井下人員狀況</a></li> <li><a href="/Socket/Inform_LED">LED通知管理</a></li> <li><a href="out_LED.jsp">大螢幕輸出</a></li> <li><a href="/Socket/All_Part?num=1">人員定位搜尋</a></li> <li><a href="/Socket/All_Part?num=2">人員考勤搜尋</a></li> <li><a href="Scheduling.jsp">排程統計</a></li> </ul> </li> <!-- 第三個選單 --> <li class="sub-menu"> <input type="button" value="環境監測" class="button" name="tree" id="supervise" onclick="display(this.id);"> <ul style="display: none;"> <li><a href="/Socket/Sensor_Page">環境測試總圖</a></li> <li><a href="envirTest.jsp">環境監測資料查詢</a></li> <li>環境報警資料查詢</li> </ul> </li> <!-- 第四個選單 --> <li class="sub-menu"> <input type="button" value="查詢統計" class="button" name="tree" id="select" onclick="display(this.id);"> <ul style="display: none;"> <li>人員報警查詢</li> </ul> </li> <!-- 第五個選單 --> <li class="sub-menu"> <input type="button" value="基礎資訊管理" class="button" name="tree" id="information" onclick="display(this.id);"> <ul style="display: none;"> <li><a href="/Socket/Base_Definition">基站定義</a></li> <li><a href="/Socket/Device_Definition">採集裝置定義</a></li> <li><a href="/Socket/Personnel_definition">人員定義</a></li> <li><a href="/Socket/Profession_Definition">工種定義</a></li> <li><a href="/Socket/Duty_Definition">職務定義</a></li> <li><a href="/Socket/Leader_Definition">帶班領導定義</a></li> </ul> </li> <!-- 第六個選單 --> <li class="sub-menu"> <input type="button" value="系統管理" class="button" name="tree" id="system" onclick="display(this.id)"> <ul style="display: none;"> <li>機構定義</li> <li>使用者定義</li> </ul> </li> </ul> <!--隱藏下面的具體位元組 --> </div> <!--左邊 中間 右邊 --> <div id="mycenter"> <!-- 左邊 --> <div class="cup"> <embed src="images/one.svg" type="image/svg+xml" style="width:884px;height: 880px;" /> </div> <iframe class="cdown" name="testFrame" src="cdwg.jsp" scrolling="no" frameborder="no" ></iframe> </div> </div> </body> </html>
cdwg.jsp
<%@page import="java.io.OutputStream"%> <%@page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@page import="java.awt.*"%> <%@page import="java.io.IOException"%> <%@page import="java.awt.image.BufferedImage"%> <%@page import="javax.imageio.ImageIO"%> <%@page import="cn.com.gj.*"%> <%@page import="cn.com.lf.*"%> <%@page import="java.util.List"%> <%@page import="com.sun.image.codec.jpeg.*"%> <%@ page contentType="image/png" import="cn.com.servlet.*"%> <%@page import="java.io.File"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>繪圖的java介面</title> <!-- 巢狀在其他的jsp中,不是獨立的jsp頁面--> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <meta name="viewport" content="width=device-width,initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/> </head> <style> body { background-color: rgba(244, 250, 253, 0.2); } </style> <body> <% int width=890; int height=800; //建立一個寬500高500的背景不是透明色的圖片緩衝區----目的就是儲存圖片在記憶體 BufferedImage bi=new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); //幾何圖形類新建物件----繪製圖片 Graphics2D gh = bi.createGraphics(); // 建立Graphics2D物件 // ---------- 增加下面的程式碼使得背景透明 ----------------- bi = gh.getDeviceConfiguration().createCompatibleImage(width, height, Transparency.TRANSLUCENT); gh.dispose(); gh= bi.createGraphics(); // ---------- 背景透明程式碼結束 ----------------- //繪製路徑直線圖示意圖 List<DoubleStr> list_c= CDW.Current(); CDW.drawline(gh, list_c); gh.setColor(Color.green); gh.dispose(); // encode: response.reset(); ServletOutputStream sos=response.getOutputStream(); if(sos!=null){ ImageIO.write(bi, "png",sos); sos.close(); out.clear(); out = pageContext.pushBody(); return; } %> </body> </html>
CDW.java
package cn.com.lf; import java.awt.BasicStroke; import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.sql.ResultSet; import java.sql.SQLException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import cn.com.gj.DoubleStr; import cn.com.gj.Route; import cn.com.lf.JdbcUtils; public class CDW { public static List<Route> lg=null;//盛放路線圖關係的集合 public static List<Route> lr=null;//某個開始點的所有可能線段的集合 public static List<Route> select_num(Graphics gh,String id, String start_time, String end_time) { SimpleDateFormat sim = new SimpleDateFormat("yyyy-MM-dd"); String dd = sim.format(new Date()); String sql = "select bs from yh where number=? and time BETWEEN ? and ? order by time asc"; String[] sz = { id, start_time, end_time }; ResultSet rs = JdbcUtils.select(sql, sz); List<String> list = new ArrayList<String>(); try { rs.last(); int c = rs.getRow(); int j = 0; rs.beforeFirst(); if (start_time == "" || end_time == "") { } if (c == 0) { } else { while (rs.next()) { list.add(rs.getString(1)); j++; } for (int i = 0; i < list.size()-1; i++) { if(list.get(i)==list.get(i+1)){ list.remove(i); } } //判斷所取出的基站是相鄰還是隔了一個 //2.1集合裡如果只有一個數的話 //2.2取集合裡面的第一第二個數 int sa=0; int sb=0; int ea=0; int eb=0; for (int i = 0; i < list.size()-1; i++) { int ss[]= case1(list.get(i),sa,sb);//#30的x y左邊 int zz[]=case1(list.get(i+1), ea, eb);//#20的x y左邊 //2.3開始尋找合適的路線 lg=RoleLine(gh, ss[0], ss[1], zz[0], zz[1]); //ll是空的,但是由於集合第一個是arraylist陣列,雖然陣列是空的,但是有大小所以為1 if(lg.get(0)!=null){ //2.3.1屬於鄰居關係、可以直達的路線 System.out.println("直接關係:"+":"+lg.get(0).getStarta()+":"+lg.get(0).getEnda()+lg.get(0).getStartb()+":"+lg.get(0).getEndb()); }else{ //2.3.2屬於隔了一個的關係,需要有一箇中介才可以直達 //2.3.2.1 如果不是直接關係,先把所有開始位置座標的線段找出來,然後把每個線段的末尾座標作為開始座標,集合裡面末尾座標還是末尾座標,如果存在就是這個中間線段 List<Route> l2=null; RoleLine(gh, ss[0], ss[1], zz[0], zz[1]); for (Route rr : lr) { l2=null; l2=RoleLine(gh,rr.getStartb(), rr.getEndb(),zz[0], zz[1] ); if(l2.get(0)!=null){ //1.由於集合無論是否新增一個數組,大小都是1,所以需要判斷第一個是不是空的就可以了 lg=new ArrayList<Route>(); Route re=new Route(ss[0], ss[1], rr.getStartb(), rr.getEndb()); gh.drawLine(ss[0], ss[1], rr.getStartb(), rr.getEndb()); lg.add(re); Route re1=new Route (rr.getStartb(), rr.getEndb(),zz[0],zz[1]); lg.add(re1); } //System.out.println(rr.getStartb()+"==="+rr.getEndb()); } if(l2.size()>=1){ //鄰居關係 //ll=null; }//if結束 else{ //第三層關係 } }//for結束 System.out.println("鄰居關係"); for (Route rr2 : lg) { System.out.println(rr2.getStarta()+":"+rr2.getEnda()+":"+rr2.getStartb()+":"+rr2.getEndb()); } } } JdbcUtils.closeAll(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return lg; } //路線圖 public static List<Route> RoleLine(Graphics gh,int sa,int sb,int ea,int eb){ //這個的主要作用是返回相匹配的路線 List<Route> list=new ArrayList<Route>(); Route rr =null; gh.setColor(Color.red); //端點1.#039 if( sa== 446 && sb == 547 ){ lr=new ArrayList<Route>(); Route r = null; //尾點#023 if(ea == 441 && eb== 70){ gh.drawLine(446,547,441,70); rr = new Route(sa, sb, ea, eb); } //尾點#037 if(ea == 446 && eb== 596){ gh.drawLine(441,547,441,596); rr = new Route(sa, sb, ea, eb); } //尾點#038 if(ea == 736 && eb== 561){ //非直線,曲線 gh.drawLine(443, 546, 577, 544);// #n--#38(1) gh.drawLine(577, 544, 734, 561);// #38(1)--#38(1) rr = new Route(sa, sb, ea, eb); } //lr是所有的以71,96為開始的線段的集合 r=new Route(441,547,441,70); lr.add(r); r=new Route(441,547,446,596); lr.add(r); r=new Route(441,547,736,561); lr.add(r); } //2.#端點037 if( sa== 446 && sb == 596 ){ lr=new ArrayList<Route>(); Route r = null; //尾點#039 if(ea == 446 && eb== 547){ gh.drawLine(446,596,446,547); rr = new Route(sa, sb, ea, eb); } //尾點#016 if(ea == 444 && eb== 649){ gh.drawLine(446,596,444,649); rr = new Route(sa, sb, ea, eb); } //尾點#025 if(ea == 650 && eb== 601){ //非直線,曲線 gh.drawLine(444, 596, 567, 591);// #37---#25(1) gh.drawLine(567, 591, 650, 603);// #25(1)---#25(2) rr = new Route(sa, sb, ea, eb); } //lr是所有的以71,96為開始的線段的集合 r=new Route(446,596,446,547); lr.add(r); r=new Route(446,596,444,649); lr.add(r); r=new Route(446,596,650,601); lr.add(r); } //3.端點#016 if( sa== 444 && sb == 649 ){ lr=new ArrayList<Route>(); Route r = null; //尾點#037 if(ea == 446 && eb== 596){ gh.drawLine(446,596,444,649); rr = new Route(sa, sb, ea, eb); } //尾點#036、026 if(ea == 549 && eb== 642){ gh.drawLine(444,649,549,642); rr = new Route(sa, sb, ea, eb); } //lr是所有的以71,96為開始的線段的集合 r=new Route(446,596,444,649); lr.add(r); r=new Route(444,649,549,642); lr.add(r); } list.add(rr); return list; } //這個函式是查詢資料庫裡實時的基站位置有多少人 public static List<DoubleStr> Current() throws SQLException{ //1.統計處於不同井段的人員的數目 //2.查詢出各個井段人員的名稱 Date da=new Date(); SimpleDateFormat sim=new SimpleDateFormat("yyyy-MM-dd"); String time=sim.format(da); //這個是查詢不重複編號的名稱 //SELECT DISTINCT number FROM yh WHERE TIME LIKE '2018-10-06%' String sql="SELECT DISTINCT number FROM yh WHERE TIME LIKE '"+ time + "%' and state=1 "; System.out.println(sql); ResultSet rs=JdbcUtils.select(sql, null); List<DoubleStr> list=new ArrayList<DoubleStr>(); int count0 = 0,count1= 0,count2= 0,count3= 0,count4= 0,count5= 0,count6= 0; String str0=""; String str1=""; String str2=""; String str3=""; String str4=""; String str5=""; String str6=""; while(rs.next()){ //這個結果集合裡面都是一些不重複的編號 String bs=""; String name=""; //根據編號查詢名稱 String nsql="SELECT NAME FROM person_info WHERE NUMBER='"+rs.getString(1)+"'"; ResultSet nrs=JdbcUtils.select(nsql, null); if(nrs.next()){ name=nrs.getString(1); } //對每個編號進行最近時間的查詢基站 String sqls="SELECT bs FROM yh WHERE number='"+rs.getString(1)+"' ORDER BY TIME DESC LIMIT 1"; ResultSet rss=JdbcUtils.select(sqls, null); if(rss.next()){ bs=rss.getString(1);//這個是基站 } //把基站進行分類 //-290m if(bs.equals("040")||bs.equals("031")||bs.equals("034")||bs.equals("038")||bs.equals("033")||bs.equals("039")){ count0++; str0=str0+" "+name; } //地表 if(bs.equals("030")||bs.equals("017")||bs.equals("028")||bs.equals("014")||bs.equals("023")||bs.equals("029")){ count1++; str1=str1+" "+name; } //-130m if(bs.equals("022")||bs.equals("020")||bs.equals("021")||bs.equals("015")){ count2++; str2=str2+" "+name; } //-240m if(bs.equals("024")||bs.equals("027")){ count3++; str3=str3+" "+name; } //斜井 if(bs.equals("012")||bs.equals("013")||bs.equals("019")){ count4++; str4=str4+" "+name; } //-340m if(bs.equals("037")||bs.equals("025")||bs.equals("032")){ count5++; str5=str5+" "+name; } //-400m if(bs.equals("016")||bs.equals("036")||bs.equals("026")||bs.equals("035")||bs.equals("011")){ count6++; str6=str6+" "+name; } } DoubleStr dou0=new DoubleStr(Integer.toString(count0),str0) ; list.add(dou0); DoubleStr dou1=new DoubleStr(Integer.toString(count1),str1) ; list.add(dou1); DoubleStr dou2=new DoubleStr(Integer.toString(count2),str2) ; list.add(dou2); DoubleStr dou3=new DoubleStr(Integer.toString(count3),str3) ; list.add(dou3); DoubleStr dou4=new DoubleStr(Integer.toString(count4),str4) ; list.add(dou4); DoubleStr dou5=new DoubleStr(Integer.toString(count5),str5) ; list.add(dou5); DoubleStr dou6=new DoubleStr(Integer.toString(count6),str6) ; list.add(dou6); return list; } public static void drawline(Graphics g,List<DoubleStr> list) { Graphics2D gh = (Graphics2D) g; gh.setColor(Color.yellow); gh.setStroke(new BasicStroke(1)); gh.drawLine(71, 96, 72, 281);// 30#���� gh.drawLine(145, 86, 148, 275);// 17#--22# gh.drawLine(72, 281, 337, 281);// 1�����--20# gh.drawLine(148, 275, 189, 281);// 22#--20#--1 gh.drawLine(189, 281, 337, 281);// 22#--20#--2 gh.drawLine(337, 281, 396, 282);// 20#--12# gh.drawLine(352, 80, 420, 71);// 28#--14# gh.drawLine(420, 71, 441, 70);// 14#--23# gh.drawLine(441, 70, 509, 58);// 23#--29# gh.drawLine(148, 275, 149, 462);// 22#--24# gh.drawLine(149, 462, 149, 560);// 24#--40# gh.drawLine(149, 462, 622, 463);// 24#--27# gh.drawLine(392, 282, 441, 326);// 12#--13# gh.drawLine(441, 326, 503, 378);// 13#--19# gh.drawLine(503, 378, 602, 463);// 19#--27# gh.drawLine(602, 463, 734, 460);// 27#--38(1)# gh.drawLine(734, 460, 734, 561);// 38(1)#--38(2)# gh.drawLine(337, 281, 507, 286);// 20#--21# gh.drawLine(507, 286, 580, 286);// 21#--15# gh.drawLine(441, 70, 443, 547);// 23#--n# gh.drawLine(149, 560, 656, 564);// 40#--31/34# gh.drawLine(656, 564, 734, 561);// 31/34#--38# gh.drawLine(736, 561, 695, 575);// 38#--33# gh.drawLine(443, 547, 444, 596);// #n--#37 gh.drawLine(444, 596, 444, 649);// #37---#16 gh.drawLine(444, 596, 567, 591);// #37---#32(1) gh.drawLine(567, 591, 739, 620);// #32(1)---#32(2) gh.drawLine(739, 620, 696, 626);// #32(2)---#32(3) gh.drawLine(690, 626, 690, 678);// #32---#11 gh.drawLine(690, 575, 690, 626);// #33---#32 gh.drawLine(444, 649, 549, 642);// #16---#26/36 gh.drawLine(549, 642, 756, 670);// ##26/36---#11(1) gh.drawLine(756, 670, 694, 678);// #11(1)---#11(2) gh.drawLine(443, 546, 577, 544);// #n--#38(1) gh.drawLine(577, 544, 734, 561);// #38(1)--#38(2) gh.setColor(Color.red); String one=list.get(0).getOne(); String oname=list.get(0).getTwo(); String two=list.get(1).getOne(); String tname=list.get(1).getTwo(); String three=list.get(2).getOne(); String thname=list.get(2).getTwo(); String four=list.get(3).getOne(); String fname=list.get(3).getTwo(); String five=list.get(4).getOne(); String finame=list.get(4).getTwo(); String six=list.get(5).getOne(); String sname=list.get(5).getTwo(); String seven=list.get(6).getOne(); String sename=list.get(6).getTwo(); gh.drawString("地表共有"+two+"人:"+tname, 131, 112); gh.drawString("-130m共有"+three+"人:"+thname, 320, 260); gh.drawString("-240共有"+four+"人:"+fname, 161, 440); gh.drawString("斜井共有"+five+"人:"+finame, 509, 90); gh.drawString("-290m共有"+one+"人:"+oname, 151, 540); gh.drawString("-340m共有"+six+"人:"+sname, 446, 580); gh.drawString("-400m共有"+seven+"人:"+sename, 430, 630); } public static int lenths(List<Route> list) { int len = 0; for (Route rr : list) { len++; } return len; } // ��ѯ��ǰ���ݹ�����x,yֵ public static int[] speed(List<Route> ll, int s, int y, int x) { int xy[] = new int[3]; if (ll != null&&ll.size()>0) { x = ll.get(s).getStarta(); System.out.println("複製了x:"+x); y = ll.get(s).getEnda(); System.out.println("複製了y:"+y); } xy[0] = x; xy[1] = y; xy[2] = s; return xy; } // �ж�С���˶��Ĺ켣����ô��� public static int[] sport(Graphics gh, Route rr, int len, List<Route> list, int speend, int s, int x, int i, int y) { int[] sz = new int[5]; //1.#30==#20 if ((rr.getStarta() == 71 && rr.getEnda() == 96 && rr.getStartb() == 337 && rr.getEndb() == 281)) { //1.1#30==#22 if (y >= 96 && y <= 281&&x==73||x==71&&y==96) { speend = 1; x = 71; gh.drawOval(71, y, 10, 10); } //1.2#22==#20 if (x >= 72 && x <= 337) { speend = 1; y = 282; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } //1.#30==#20(2) if ((rr.getStartb() == 71 && rr.getEndb() == 96 && rr.getStarta() == 337 && rr.getEnda() == 281)) { //1.1#30==#22 if (y >= 96 && y <= 281&&x==73||x==70&&y==280) { speend = 0; x = 71; gh.drawOval(71, y, 10, 10); } //1.2#22==#20 if (x >= 72 && x <= 337) { speend = 0; y = 282; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ------------·��------------------- // ��ʵ��������2018.9.7 // 1.#30 // 1.1#30--#22(1) if ((rr.getStarta() == 71 && rr.getEnda() == 96 && rr.getStartb() == 72 && rr .getEndb() == 281)) { // gh.drawLine(71,96,72,281)(1); if (y >= 96 && y <= 281) { speend = 1; x = 71; gh.drawOval(71, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.7 // 1.1#30--#22(2) if ((rr.getStartb() == 71 && rr.getEndb() == 96 && rr.getStarta() == 72 && rr .getEnda() == 281)) { // gh.drawLine(71,96,72,281)(2); if (y >= 96 && y <= 281) { speend = 0; x = 71; gh.drawOval(71, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.1#22--#20(1); if ((rr.getStarta() == 72 && rr.getEnda() == 281 && rr.getStartb() == 337 && rr.getEndb() == 281)) { // gh.drawLine(72,281,337,283)(1); if (x >= 72 && x <= 337) { speend = 1; y = 282; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.1#22--#20(2); if ((rr.getStartb() == 72 && rr.getEndb() == 281 && rr.getStarta() == 337 && rr.getEnda() == 281)) { // gh.drawLine(72,281,337,283)(2); if (x >= 72 && x <= 337) { speend = 0; y = 282; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ========================= // ��ʵ��������2018.9.7 // 2.2#22-17(1) if ((rr.getStarta() == 72 && rr.getEnda() == 281 && rr.getStartb() == 145 && rr.getEndb() == 86)) { // gh.drawLine(72, 281, 189, 281);// #22--(1) // gh.drawLine( 189, 281,148, 275);// (1)----(2) // //gh.drawLine(148, 275,145, 86);// (2)--#17 if (x >= 72 && x <= 189 && y >= 281) { speend = 1; y = 279; gh.drawOval(x, 281, 10, 10); } else if (x >= 148 && x <= 190 && y <= 281) { // ������x������- speend = 0; y = 278; gh.drawOval(x, 278, 10, 10); } else if (y >= 86 && y <= 276 && x == 146) { // ������x�����ݼ� speend = 0; x = 148; gh.drawOval(146, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.2 #22-17(2) if ((rr.getStartb() == 72 && rr.getEndb() == 281 && rr.getStarta() == 145 && rr.getEnda() == 86)) { // gh.drawLine(145, 86,148, 275);//#17--(1) // gh.drawLine(148, 275,189, 281);//(1)----(2) // gh.drawLine( 189, 281,72, 281);//(2)---#22 if (y >= 86 && y <= 275 && x < 148) { // ������x�����ݼ� speend = 1; x = 145; gh.drawOval(145, y, 10, 10); } else if (x >= 148 && x <= 189 && y == 281 || x == 147 && y == 276) { // ������x������- speend = 1; y = 279; gh.drawOval(x, 275, 10, 10); } else if (x >= 72 && x <= 189 && y >= 278 || x == 191 && y == 281) { speend = 0; y = 290; gh.drawOval(x, 280, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.3#22-24(1) if ((rr.getStarta() == 72 && rr.getEnda() == 281 && rr.getStartb() == 149 && rr.getEndb() == 462)) { // gh.drawLine(72, 281, 189, 281);// #22--(1) // gh.drawLine( 189, 281,148, 275);// (1)----(2) // //gh.drawLine(148, 275,149, 462);// (2)--#24 if (x >= 72 && x <= 189 && y == 281) { speend = 1; y = 279; gh.drawOval(x, 281, 10, 10); } else if (x >= 148 && x <= 189 && y < 281 || x == 190 && y == 281) { // ������x������- speend = 0; y = 278; gh.drawOval(x, 278, 10, 10); } else if (y <= 462 && y >= 275 && x < 148) { // ������x�����ݼ� speend = 1; x = 140; gh.drawOval(148, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.3#22-24(2) if ((rr.getStartb() == 72 && rr.getEndb() == 281 && rr.getStarta() == 149 && rr.getEnda() == 462)) { // gh.drawLine(149, 462,148, 275);// (2)--#24 // gh.drawLine(148, 275 189, 281,);// (1)----(2) // gh.drawLine(189, 281,72, 281, );// #22--(1) if (x >= 72 && x <= 189 && y == 281 || x == 191 && y == 280) { speend = 0; y = 283; gh.drawOval(x, 281, 10, 10); } else if (x >= 148 && x <= 189 && y < 281) { // ������x������- speend = 1; y = 278; gh.drawOval(x, 278, 10, 10); } else if (y <= 462 && y >= 275 && x == 149) { // ������x�����ݼ� speend = 0; x = 151; gh.drawOval(148, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 3.#17 // 3.1#17--#24(1) if ((rr.getStarta() == 145 && rr.getEnda() == 86 && rr.getStartb() == 149 && rr.getEndb() == 462)) { // gh.drawLine(145, 86, 149, 462); if (y >= 86 && y <= 462) { x = 146; speend = 1; gh.drawOval(146, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 2.1#17--#24(2) if ((rr.getStartb() == 145 && rr.getEndb() == 86 && rr.getStarta() == 149 && rr.getEnda() == 462)) { // //gh.drawLine(145, 86, 149, 462);(2) if (y >= 86 && y <= 462) { x = 146; speend = 0; gh.drawOval(146, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 3.#17 // 3.1#17--#20(1) if ((rr.getStarta() == 145 && rr.getEnda() == 86 && rr.getStartb() == 337 && rr.getEndb() == 281)) { // gh.drawLine(145,86,148,275);//17--(1) // gh.drawLine(148, 275, 189, 281);// (1)--(2) // gh.drawLine(189, 281, 337, 283);// (2)--#20 if (y >= 86 && y <= 275) {// ���� x = 146; speend = 1; gh.drawOval(146, y, 10, 10); } else if (x >= 148 && x <= 189) { y = 278; speend = 1; gh.drawOval(x, 276, 10, 10); } else if (x >= 189 && x <= 337) { y = 281; speend = 1; gh.drawOval(x, 281, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 3.1#17--#20(2) if ((rr.getStartb() == 145 && rr.getEndb() == 86 && rr.getStarta() == 337 && rr.getEnda() == 281)) { // gh.drawLine(145,86,148,275);//17--(1) // gh.drawLine(148, 275, 189, 281);// (1)--(2) // gh.drawLine(189, 281, 337, 283);// (2)--#20 if (y >= 86 && y <= 275 || x == 147 && y == 276) {// ���� x = 146; speend = 0; gh.drawOval(146, y, 10, 10); } else if (x >= 148 && x < 189) { y = 278; speend = 0; gh.drawOval(x, 276, 10, 10); } else if (x >= 189 && x <= 337) { y = 281; speend = 0; gh.drawOval(x, 281, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.#20 // 4.1 #20-----#12(1) if ((rr.getStarta() == 337 && rr.getEnda() == 281 && rr.getStartb() == 396 && rr.getEndb() == 282)) { // gh.drawLine(337, 281, 396, 282);// 20#--12#(1) if (x >= 337 && x <= 396) {// ���� y = 281; speend = 1; gh.drawOval(x, 280, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.1 #20-----#12(2) if ((rr.getStartb() == 337 && rr.getEndb() == 281 && rr.getStarta() == 396 && rr.getEnda() == 282)) { // gh.drawLine(337, 281, 396, 282);// 20#--12#(2) if (x >= 337 && x <= 396) {// ���� y = 281; speend = 0; gh.drawOval(x, 280, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.2#20----#21(1) if ((rr.getStarta() == 337 && rr.getEnda() == 281 && rr.getStartb() == 507 && rr.getEndb() == 286)) { // gh.drawLine(337, 281, 507, 286);// 20#--21#(1) if (x >= 337 && x <= 507) {// ���� y = 284; speend = 1; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.2#20----#21(2) if ((rr.getStartb() == 337 && rr.getEndb() == 281 && rr.getStarta() == 507 && rr.getEnda() == 286)) { // gh.drawLine(337, 281, 507, 286);// 20#--21#(2) if (x >= 337 && x <= 507) {// ���� y = 284; speend = 0; gh.drawOval(x, 282, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.3#20----#24(1) if ((rr.getStarta() == 337 && rr.getEnda() == 281 && rr.getStartb() == 149 && rr.getEndb() == 462)) { // gh.drawLine(337, 283, 189, 281);// #22--(1) // gh.drawLine( 189, 281,148, 275);// (1)----(2) // //gh.drawLine(148, 275,149, 462);// (2)--#24 if (x <= 337 && x >= 189 || x == 337 && y == 281) { speend = 0; y = 274; gh.drawOval(x, 281, 10, 10); } else if (x >= 148 && x <= 189) { // ������x������- speend = 0; y = 270; gh.drawOval(x, 278, 10, 10); } else if (y <= 462 && y >= 270 || x == 147 && y == 268) { // ������x����+ speend = 1; x = 144; gh.drawOval(148, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 4.3#20----#24(2) if ((rr.getStartb() == 337 && rr.getEndb() == 281 && rr.getStarta() == 149 && rr.getEnda() == 462)) { // gh.drawLine(337, 283, 189, 281);// #22--(1) // gh.drawLine( 189, 281,148, 275);// (1)----(2) // //gh.drawLine(148, 275,149, 462);// (2)--#24 if (x <= 337 && x >= 189) { speend = 1; y = 270; gh.drawOval(x, 278, 10, 10); } else if (x >= 150 && x < 189 || x == 146 && y == 274 || x == 148 && y == 272) { // ������x������- speend = 1; y = 270; gh.drawOval(x, 276, 10, 10); } else if (y <= 462 && y >= 275 || x == 149 && y == 462) { // ������x����+ speend = 0; x = 148; gh.drawOval(148, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 5.#12(#20��#15��һ�����ϵģ�#12��#20����һ����·���ϵģ�#12��#15��#20�IJ�ͬ��·��) // 5.1 #12��#13��һ�����ϵ�(1) if ((rr.getStarta() == 396 && rr.getEnda() == 282 && rr.getStartb() == 441 && rr.getEndb() == 326)) { // gh.drawLine(396, 282, 440, 326);// 12#--13#(1) if (y >= 282 && y <= 326) {// ���� speend = 1; gh.drawOval(y + 114, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 5.1 #12��#13��һ�����ϵ�(2) if ((rr.getStartb() == 396 && rr.getEndb() == 282 && rr.getStarta() == 441 && rr.getEnda() == 326)) { // gh.drawLine(396, 282, 441, 334);// 12#--13#(2) if (y >= 282 && y <= 326) {// ���� speend = 0; gh.drawOval(y + 114, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 6.#15(1) if ((rr.getStarta() == 507 && rr.getEnda() == 286 && rr.getStartb() == 580 && rr.getEndb() == 286)) { // gh.drawLine(507, 286, 580, 286);// 21#--15#(1) if (x >= 507 && x <= 580) {// ���� speend = 1; y = 286; gh.drawOval(x, 284, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 6.#15(2) if ((rr.getStartb() == 507 && rr.getEndb() == 286 && rr.getStarta() == 580 && rr.getEnda() == 286)) { // gh.drawLine(507, 286, 580, 286);// 21#--15#(1) if (x >= 507 && x <= 580) {// ���� speend = 0; y = 286; gh.drawOval(x, 284, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 7.#28(1) if ((rr.getStarta() == 352 && rr.getEnda() == 80 && rr.getStartb() == 420 && rr.getEndb() == 71)) { // gh.drawLine(352, 80, 420, 71);// 28#--14#(1) if (x >= 352 && x <= 420) {// ���� speend = 1; y = 76; gh.drawOval(x, 74, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 7.#28(2) if ((rr.getStartb() == 352 && rr.getEndb() == 80 && rr.getStarta() == 420 && rr.getEnda() == 71)) { // gh.drawLine(352, 80, 420, 71);// 28#--14#(2) System.out.println("xx:" + x); if (x >= 352 && x <= 420) {// ���� speend = 0; y = 76; gh.drawOval(x, 74, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 8.#14(1) if ((rr.getStarta() == 420 && rr.getEnda() == 71 && rr.getStartb() == 441 && rr.getEndb() == 70)) { // gh.drawLine(420, 71, 441, 70);// 14#--23#(1) if (x >= 420 && x <= 441) {// ���� speend = 1; y = 70; gh.drawOval(x, 68, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 8.#14(2) if ((rr.getStartb() == 420 && rr.getEndb() == 71 && rr.getStarta() == 441 && rr.getEnda() == 70)) { // gh.drawLine(420, 71, 441, 70);// 14#--23#(2) if (x >= 420 && x <= 441) {// ���� speend = 0; y = 70; gh.drawOval(x, 68, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 9.#23(1) if ((rr.getStarta() == 441 && rr.getEnda() == 70 && rr.getStartb() == 509 && rr.getEndb() == 58)) { // gh.drawLine(441, 70, 509, 58);// 23#--29#(1) if (x >= 441 && x <= 509) {// ���� speend = 1; gh.drawOval(x, (2512 - 3 * x) / 17, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 9.#23(2) if ((rr.getStartb() == 441 && rr.getEndb() == 70 && rr.getStarta() == 509 && rr.getEnda() == 58)) { // gh.drawLine(441, 70, 509, 58);// 23#--29#(2) if (x >= 441 && x <= 509) {// ���� speend = 0; gh.drawOval(x, (2510 - 3 * x) / 17, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStarta() == 441 && rr.getEnda() == 70 && rr.getStartb() == 446 && rr.getEndb() == 547)) { // gh.drawLine(441, 70, 446, 547);// 23#--n#(1) if (y >= 70 && y <= 547) {// ���� speend = 1; gh.drawOval(442, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 441 && rr.getEndb() == 70 && rr.getStarta() == 446 && rr.getEnda() == 547)) { // gh.drawLine(442, 70, 446, 547);// 23#--n#(2) if (y >= 70 && y <= 547) {// ���� speend = 0; gh.drawOval(442, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 10.#24(1) if ((rr.getStarta() == 149 && rr.getEnda() == 462 && rr.getStartb() == 149 && rr.getEndb() == 560)) { // gh.drawLine(149, 462, 149, 560);// 24#--40#(1) if (y >= 462 && y <= 560) {// ���� speend = 1; x = 149; gh.drawOval(149, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 10.#24(2) if ((rr.getStartb() == 149 && rr.getEndb() == 462 && rr.getStarta() == 149 && rr.getEnda() == 560)) { // gh.drawLine(149, 462, 149, 560);// 24#--40#(2) if (y >= 462 && y <= 560) {// ���� speend = 0; x = 149; gh.drawOval(149, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStarta() == 149 && rr.getEnda() == 462 && rr.getStartb() == 600 && rr.getEndb() == 463)) { // gh.drawLine(149, 462, 622, 463);// 24#--27#(1) if (x >= 149 && x <= 600) {// ���� speend = 1; y = 462; gh.drawOval(x, 462, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 149 && rr.getEndb() == 462 && rr.getStarta() == 600 && rr.getEnda() == 463)) { // gh.drawLine(149, 462, 622, 463);// 24#--27#(2) if (x >= 149 && x <= 600) {// ���� speend = 0; y = 462; gh.drawOval(x, 462, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 11.#13(1) if ((rr.getStarta() == 441 && rr.getEnda() == 326 && rr.getStartb() == 503 && rr.getEndb() == 378)) { // gh.drawLine(441, 326, 503, 378);// 13#--19#(1) if (x >= 441 && x <= 503) {// ���� speend = 1; gh.drawOval(x, ((26 * x - 1360) / 31), 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 11.#13(2) if ((rr.getStartb() == 441 && rr.getEndb() == 326 && rr.getStarta() == 503 && rr.getEnda() == 378)) { // gh.drawLine(441, 326, 503, 378);//13#--19#(2) if (x >= 441 && x <= 503) {// ��- speend = 0; gh.drawOval(x, ((26 * x - 1360) / 31), 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 12.#19(1) if ((rr.getStarta() == 503 && rr.getEnda() == 378 && rr.getStartb() == 600 && rr.getEndb() == 463)) { // gh.drawLine(503, 378, 600, 463);// 19#--27#(1) if (x >= 503 && x <= 600) {// ���� speend = 1; gh.drawOval(x, (85 * x - 4870) / 100, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 12.#19(2) if ((rr.getStartb() == 503 && rr.getEndb() == 378 && rr.getStarta() == 600 && rr.getEnda() == 463)) { // gh.drawLine(503, 378, 600, 463);// 19#--27#(2) if (x >= 503 && x <= 602) {// ���� speend = 0; gh.drawOval(x, (85 * x - 4870) / 100, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 13.#40(1) if ((rr.getStarta() == 149 && rr.getEnda() == 560 && rr.getStartb() == 656 && rr.getEndb() == 564)) { // gh.drawLine(149, 560, 656, 564);// 40#--31/34#(1) if (x >= 149 && x <= 656) {// ���� speend = 1; y = 562; gh.drawOval(x, 560, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 13.#40(2) if ((rr.getStartb() == 149 && rr.getEndb() == 560 && rr.getStarta() == 656 && rr.getEnda() == 564)) { // gh.drawLine(149, 560, 656, 564);// 40#--31/34#(2) if (x >= 149 && x <= 656) {// ���� speend = 0; y = 562; gh.drawOval(x, 560, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 14.#n(1) if ((rr.getStarta() == 446 && rr.getEnda() == 547 && rr.getStartb() == 446 && rr.getEndb() == 596)) { // gh.drawLine(443, 547, 444, 596);// #n--#37(1) if (y >= 547 && y <= 596) {// ���� speend = 1; x = 446; gh.drawOval(443, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 14.#n(2) if ((rr.getStartb() == 446 && rr.getEndb() == 547 && rr.getStarta() == 446 && rr.getEnda() == 596)) { // gh.drawLine(443, 547, 444, 596);// #n--#37(2) if (y >= 547 && y <= 596) {// ���� speend = 0; x = 446; gh.drawOval(443, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStarta() == 446 && rr.getEnda() == 547 && rr.getStartb() == 736 && rr.getEndb() == 561)) { // gh.drawLine(443, 546, 577, 544);// #n--#38(1)(1) // gh.drawLine(577, 544, 734, 561);// #38(1)(1)--#38(1)(1) if (x >= 446 && x <= 577) { speend = 1; y = 545; gh.drawOval(x, 544, 10, 10); } else if (x >= 577 && x <= 734) { speend = 1; gh.drawOval(x, (3775 + x) / 8, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 446 && rr.getEndb() == 547 && rr.getStarta() == 736 && rr.getEnda() == 561)) { // gh.drawLine(446, 547, 577, 544);// #n--#38(1)(2) // gh.drawLine(577, 544, 734, 561);// #38(1)(2)--#38(1)(2) if (x >= 446 && x <= 577) { speend = 0; y = 545; gh.drawOval(x, 545, 10, 10); } else if (x >= 577 && x <= 736) { speend = 0; gh.drawOval(x, (3775 + x) / 8, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 15.#31/34(1) if ((rr.getStarta() == 656 && rr.getEnda() == 564 && rr.getStartb() == 736 && rr.getEndb() == 561)) { // gh.drawLine(656, 564, 734, 561);// 31/34#--38#(1) if (x >= 656 && x <= 736) {// ���� speend = 1; y = 563; gh.drawOval(x, 561, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 15.#31/34(2) if ((rr.getStartb() == 656 && rr.getEndb() == 564 && rr.getStarta() == 736 && rr.getEnda() == 561)) { // gh.drawLine(656, 564, 734, 561);// 31/34#--38#(2) if (x >= 656 && x <= 736) {// ���� speend = 0; y = 563; gh.drawOval(x, 561, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStarta() == 600 && rr.getEnda() == 463 && rr.getStartb() == 736 && rr.getEndb() == 561)) { // gh.drawLine(600, 463, 736, 460);// 27#--38(1)# // gh.drawLine(736, 460, 736, 561);// 38(1)#--38(2)# if (x >= 600 && x <= 736) {// ���� speend = 1; y = 460; gh.drawOval(x, 458, 10, 10); } else if (y >= 460 && y <= 561 || x == 738 && y == 462) {// ���� speend = 1; x = 500; gh.drawOval(734, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 600 && rr.getEndb() == 463 && rr.getStarta() == 736 && rr.getEnda() == 561)) { // gh.drawLine(600, 463, 734, 460);// 27#--38(1)# // gh.drawLine(734, 460, 734, 561);// 38(1)#--38(2)# if (x >= 600 && x < 736 || x == 736 && y == 459) {// ���� speend = 0; y = 458; gh.drawOval(x, 458, 10, 10); } else if (y >= 460 && y <= 561 && x == 736) {// ���� speend = 0; x = 738; gh.drawOval(732, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 17.#37 if ((rr.getStarta() == 446 && rr.getEnda() == 596 && rr.getStartb() == 444 && rr.getEndb() == 649)) { // gh.drawLine(444, 596, 444, 649);// #37---#16(1) if (y >= 596 && y <= 649) {// ���� speend = 1; x = 444; gh.drawOval(444, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 446 && rr.getEndb() == 596 && rr.getStarta() == 444 && rr.getEnda() == 649)) { // gh.drawLine(444, 596, 444, 649);// #37---#16(2) if (y >= 596 && y <= 649) {// ���� speend = 0; x = 444; gh.drawOval(444, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // #37--#25(1) if ((rr.getStarta() == 446 && rr.getEnda() == 596 && rr.getStartb() == 650 && rr.getEndb() == 601)) { /* * gh.drawLine(446, 596, 567, 591);// #37---#25(1) gh.drawLine(567, * 591, 650, 601); */ if (x >= 446 && x <= 567 && y >= 591) {// ���� speend = 1; y = 593; gh.drawOval(x, 593, 10, 10); } else if (x <= 650 && x >= 567 && y <= 601) {// ���� speend = 1; y = 599; gh.drawOval(x, (42235 + 15 * x) / 86, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // #37--#25(2) if ((rr.getStartb() == 446 && rr.getEndb() == 596 && rr.getStarta() == 650 && rr.getEnda() == 601)) { /* * gh.drawLine(446, 596, 567, 591);// #37---#25(1) gh.drawLine(567, * 591, 650, 601); */ if (x >= 446 && x <= 567 && y >= 591) {// ���� speend = 0; y = 593; gh.drawOval(x, 593, 10, 10); } else if (x <= 650 && x >= 567 && y <= 601) {// ���� speend = 0; y = 599; gh.drawOval(x, (42235 + 15 * x) / 86, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // #25---#32(1) if ((rr.getStarta() == 650 && rr.getEnda() == 601 && rr.getStartb() == 690 && rr.getEndb() == 626)) { /* * gh.drawLine(650, 601, 739, 620);// #25(1)---#32(2) * gh.drawLine(739, 620, 690, 626); */ if (x >= 650 && x <= 739 && y >= 601 && y < 620) {// ���� speend = 1; y = (42235 + 15 * x) / 86; gh.drawOval(x, (42235 + 15 * x) / 86, 10, 10); } else if (y >= 620 && x >= 690 && x <= 742) { speend = 0; y = 622; gh.drawOval(x, (17720 - 3 * x) / 25, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // #25---#32(2) if ((rr.getStartb() == 650 && rr.getEndb() == 601 && rr.getStarta() == 690 && rr.getEnda() == 626)) { /* * gh.drawLine(650, 603, 739, 620); gh.drawLine(739, 620, 690, 626); */ if (x >= 650 && x <= 740 && y >= 601 && y <= 620 || x == 740 && y == 622) {// ���� speend = 0; y = 618; gh.drawOval(x, (42235 + 15 * x) / 86, 10, 10); } else if (y > 620 && x >= 690 && x <= 739) { speend = 1; y = 620; gh.drawOval(x, (17720 - 3 * x) / 25, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 18.#16 if ((rr.getStarta() == 444 && rr.getEnda() == 649 && rr.getStartb() == 549 && rr.getEndb() == 642)) { // gh.drawLine(444, 649, 549, 642);// #16---#26/36(1) if (x >= 444 && x <= 549) {// ���� speend = 1; y = 645; gh.drawOval(x, 645, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 444 && rr.getEndb() == 649 && rr.getStarta() == 549 && rr.getEnda() == 642)) { // gh.drawLine(444, 649, 549, 642);// #16---#26/36(2) if (x >= 444 && x <= 549) {// ���� speend = 0; y = 645; gh.drawOval(x, 645, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 19.1 #36/26--#35(1) if ((rr.getStarta() == 549 && rr.getEnda() == 642 && rr.getStartb() == 650 && rr.getEndb() == 657)) { if (y >= 642 && y <= 657) {// ����x++ speend = 1; gh.drawOval((207 * y - 117522) / 28, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 19.1 #36/26--#35(2) if ((rr.getStartb() == 549 && rr.getEndb() == 642 && rr.getStarta() == 650 && rr.getEnda() == 657)) { if (y >= 642 && y <= 657) {// ����x++ speend = 0; gh.drawOval((207 * y - 117522) / 28, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 19.2 #35---#11(1) if ((rr.getStarta() == 650 && rr.getEnda() == 657 && rr.getStartb() == 694 && rr.getEndb() == 678)) { // gh.drawLine(650, 657, 756, 670);// #26/36---#11(1) // gh.drawLine(756, 670, 694, 678);// #11(1)---#11(2) if (y >= 657 && y <= 670) {// ����x++ speend = 1; gh.drawOval((207 * y - 117522) / 28, y, 10, 10); } else if (y >= 670 && y <= 678) { speend = 1; gh.drawOval((23794 - 31 * y) / 4, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 19.2 #35---#11(2) if ((rr.getStartb() == 650 && rr.getEndb() == 657 && rr.getStarta() == 694 && rr.getEnda() == 678)) { // gh.drawLine(650, 657, 756, 670);// #26/36---#11(1) // gh.drawLine(756, 670, 694, 678);// #11(1)---#11(2) if (y >= 657 && y <= 670) {// ����x++ speend = 0; gh.drawOval((207 * y - 117522) / 28, y, 10, 10); } else if (y >= 670 && y <= 678) { speend = 0; gh.drawOval((23794 - 31 * y) / 4, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 20.#11 if ((rr.getStarta() == 690 && rr.getEnda() == 626 && rr.getStartb() == 694 && rr.getEndb() == 678)) { // gh.drawLine(690, 626, 690, 678);// #32---#11(2) if (y >= 626 && y <= 678) {// ���� speend = 1; x = 690; gh.drawOval(690, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 20.#11 if ((rr.getStartb() == 690 && rr.getEndb() == 626 && rr.getStarta() == 694 && rr.getEnda() == 678)) { // gh.drawLine(690, 626, 690, 678);// #32---#11(2) if (y >= 626 && y <= 678) {// ���� speend = 0; x = 690; gh.drawOval(690, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 21. #32 if ((rr.getStarta() == 690 && rr.getEnda() == 575 && rr.getStartb() == 690 && rr.getEndb() == 626)) { // gh.drawLine(690, 575, 690, 626);// #33---#32(1) if (y >= 575 && y <= 626) {// ���� x = 690; speend = 1; gh.drawOval(690, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 690 && rr.getEndb() == 575 && rr.getStarta() == 690 && rr.getEnda() == 626)) { // gh.drawLine(690, 575, 690, 626);// #33---#32(2 if (y >= 575 && y <= 626) {// ���� x = 690; speend = 0; gh.drawOval(690, y, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 // 22. #33 if ((rr.getStarta() == 736 && rr.getEnda() == 561 && rr.getStartb() == 690 && rr.getEndb() == 575)) { // gh.drawLine(736, 561, 695, 575);// 38#--33#(1) if (x <= 736 && x >= 690) {// ���� speend = 0; gh.drawOval(x, (33305 - 14 * x) / 41, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } // ��ʵ��������2018.9.8 if ((rr.getStartb() == 736 && rr.getEndb() == 561 && rr.getStarta() == 690 && rr.getEnda() == 575)) { // gh.drawLine(736, 561, 690, 575);// 38#--33#(2) if (x <= 736 && x >= 690) {// ���� speend = 1; gh.drawOval(x, (33305 - 14 * x) / 41, 10, 10); } else { s = s + 1; if (s == len) { s = 0; i = 0; } speed(list, s, y, x); } } sz[0] = s; sz[1] = i; sz[2] = y; sz[3] = speend; sz[4] = x; return sz; } private static int[] case1(String a, int x, int y) { switch (a) { case "030": x = 71; y = 96; break; case "017": x = 145; y = 86; break; case "022": x = 72; y = 281; break; case "020": x = 337; y = 281; break; case "028": x = 352; y = 80; break; case "012": x = 396; y = 282; break; case "014": x = 420; y = 71; break; case "023": x = 441; y = 70; break; case "029": x = 509; y = 58; break; case "013": x = 441; y = 326; break; case "019": x = 503; y = 378; break; case "027": x = 600; y = 463; break; case "024": x = 149; y = 462; break; case "040": x = 149; y = 560; break; case "038": x = 736; y = 561; break; case "033": x = 690; y = 575; break; case "015": x = 580; y = 286; break; case "039": x = 446; y = 547; break; case "037": x = 446; y = 596; break; case "031": x = 656; y = 564; break; case "034": x = 656; y = 564; break; case "036": x = 549; y = 642; break; case "026": x = 549; y = 642; break; case "011": x = 694; y = 678; break; case "016": x = 444; y = 649; break; case "032": x = 690; y = 626; break; case "021": x = 507; y = 286; break; case "035": x = 650; y = 657; break; case "025": x = 650; y = 601; break; } int[] sz = { x, y }; return sz; } }