Beispiel #1
0
 public String getPinList() {
   String result = "<html>";
   // Список символов
   result += "<table><tr><td>Num</td><td>Module name</td><td>msg</td><td>PIN</td></tr>";
   for (int i = 0; i < tc.getSymbols().size(); i++) {
     // Список определенных символов
     result += "<tr>";
     result += "<td>" + (i + 1) + "</td>";
     boolean flagfound = false;
     for (int j = 0; j < tc.getSymbols().get(i).getField2s().size(); j++) {
       if (tc.getSymbols().get(i).getField2s().get(j).getDescription().equals("Name")) {
         result += "<td>" + tc.getSymbols().get(i).getField2s().get(j).getValue() + "</td>";
         // Список элементов внутри определенных символов
         flagfound = true;
       }
     }
     if (!flagfound) result += "<td>" + (i + 1) + "</td>";
     flagfound = false;
     for (int j = 0; j < tc.getSymbols().get(i).getField2s().size(); j++) {
       if (tc.getSymbols().get(i).getField2s().get(j).getDescription().equals("msg")) {
         result += "<td>" + tc.getSymbols().get(i).getField2s().get(j).getValue() + "</td>";
         // Список элементов внутри определенных символов
         flagfound = true;
       }
     }
     if (!flagfound) result += "<td></td>";
     result += "<td>";
     for (int j = 0; j < tc.getSymbolDefs().size(); j++) {
       if (tc.getSymbols().get(i).getId() == tc.getSymbolDefs().get(j).getId()) {
         for (int k = 0; k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getPins().size(); k++) {
           result +=
               ""
                   + tc.getSymbolDefs().get(j).getTinyCadSymbol().getPins().get(k).getNumber()
                   + "&nbsp;&nbsp;";
         }
       }
     }
     result += "</td>";
     result += "</tr>";
   }
   result += "</table>";
   result += "</html>";
   return result;
 }
Beispiel #2
0
 public String getRecList() {
   String result = "<html>";
   // Список символов
   result +=
       "<table><tr><td>Num</td><td>Module name</td><td>Rectangle a</td><td>Rectangle b</td></tr>";
   for (int i = 0; i < tc.getSymbols().size(); i++) {
     // Список определенных символов
     result += "<tr>";
     for (int j = 0; j < tc.getSymbols().get(i).getField2s().size(); j++) {
       if (tc.getSymbols().get(i).getField2s().get(j).getDescription().equals("Name")) {
         result +=
             "<td>"
                 + (i + 1)
                 + "</td><td>"
                 + tc.getSymbols().get(i).getField2s().get(j).getValue()
                 + "</td>";
         // Список элементов внутри определенных символов
       }
     }
     result += "<td>";
     for (int j = 0; j < tc.getSymbolDefs().size(); j++) {
       if (tc.getSymbols().get(i).getId() == tc.getSymbolDefs().get(j).getId()) {
         for (int k = 0;
             k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getRectangles().size();
             k++) {
           result +=
               ""
                   + tc.getSymbolDefs().get(j).getTinyCadSymbol().getRectangles().get(k).getA()
                   + "&nbsp;&nbsp;";
         }
       }
     }
     result += "</td>";
     result += "<td>";
     for (int j = 0; j < tc.getSymbolDefs().size(); j++) {
       if (tc.getSymbols().get(i).getId() == tc.getSymbolDefs().get(j).getId()) {
         for (int k = 0;
             k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getRectangles().size();
             k++) {
           result +=
               ""
                   + tc.getSymbolDefs().get(j).getTinyCadSymbol().getRectangles().get(k).getB()
                   + "&nbsp;&nbsp;";
         }
       }
     }
     result += "</td>";
     result += "</tr>";
   }
   result += "</table>";
   result += "</html>";
   return result;
 }
Beispiel #3
0
 private void parseRect() {
   // Список символов
   List<List<Dot>> dotvv = new ArrayList<List<Dot>>();
   for (int i = 0; i < tc.getSymbols().size(); i++) {
     List<Dot> dotv = new ArrayList<Dot>();
     // Список определений символов
     // Нарисовать элементы Symbol
     // Нарисовать строки из полей Field
     for (int j = 0; j < tc.getSymbols().get(i).getField2s().size(); j++) {
       if (tc.getSymbols().get(i).getField2s().get(j).getShow() == 1) {
         Dot dd1 =
             new Dot(
                 (tc.getSymbols().get(i).getPos().getX()
                     + tc.getSymbols().get(i).getField2s().get(j).getPos().getX()),
                 (tc.getSymbols().get(i).getPos().getY()
                     + tc.getSymbols().get(i).getField2s().get(j).getPos().getY()));
         dotv.add(dd1);
         if (ModelDSN.debug >= 2)
           System.out.println("0.Added x-" + dd1.getX() + ", y-" + dd1.getY());
       }
     }
     for (int j = 0; j < tc.getSymbolDefs().size(); j++) {
       if (tc.getSymbols().get(i).getId() == tc.getSymbolDefs().get(j).getId()) {
         // Координаты правого нижнего угла
         for (int k = 0;
             k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getRectangles().size();
             k++) {
           Dot dd1 =
               new Dot(
                   tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getRectangles()
                           .get(k)
                           .getA()
                           .getX(),
                   tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getRectangles()
                           .get(k)
                           .getA()
                           .getY());
           Dot dd2 =
               new Dot(
                   tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getRectangles()
                           .get(k)
                           .getB()
                           .getX(),
                   tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getRectangles()
                           .get(k)
                           .getB()
                           .getY());
           dotv.add(dd1);
           dotv.add(dd2);
         }
         // Наристовать строки
         for (int k = 0; k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getTexts().size(); k++) {
           Dot dd1 =
               new Dot(
                   tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getTexts()
                           .get(k)
                           .getDp()
                           .getX(),
                   tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getTexts()
                           .get(k)
                           .getDp()
                           .getY());
           Dot dd2 =
               new Dot(
                   tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getTexts()
                           .get(k)
                           .getDp()
                           .getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getTexts()
                           .get(k)
                           .getStr()
                           .length(),
                   tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getTexts()
                           .get(k)
                           .getDp()
                           .getY()
                       + 3);
           if (ModelDSN.debug >= 2)
             System.out.println("1.Added x-" + dd1.getX() + ", y-" + dd1.getY());
           if (ModelDSN.debug >= 2)
             System.out.println("2.Added x-" + dd2.getX() + ", y-" + dd2.getY());
           if (ModelDSN.debug >= 1)
             System.out.println(
                 "Str - "
                     + tc.getSymbolDefs().get(j).getTinyCadSymbol().getTexts().get(k).getStr());
           dotv.add(dd1);
           dotv.add(dd2);
         }
         // Нарисовать круги
         for (int k = 0;
             k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getEllipses().size();
             k++) {
           int x1 =
               Math.round(
                   (tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getEllipses()
                           .get(k)
                           .getA()
                           .getX()));
           int y1 =
               Math.round(
                   (tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getEllipses()
                           .get(k)
                           .getA()
                           .getY()));
           int x2 =
               Math.round(
                   (tc.getSymbols().get(i).getPos().getX()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getEllipses()
                           .get(k)
                           .getB()
                           .getX()));
           int y2 =
               Math.round(
                   (tc.getSymbols().get(i).getPos().getY()
                       + tc.getSymbolDefs()
                           .get(j)
                           .getTinyCadSymbol()
                           .getEllipses()
                           .get(k)
                           .getB()
                           .getY()));
           Dot dd1 = new Dot(Math.min(x1, x2), Math.min(y1, y2));
           Dot dd2 =
               new Dot(
                   Math.min(x1, x2) + (Math.max(x1, x2) - Math.min(x1, x2)),
                   Math.min(y1, y2) + (Math.max(y1, y2) - Math.min(y1, y2)));
           dotv.add(dd1);
           dotv.add(dd2);
         }
         // Нарисовать POLYGON линии
         for (int k = 0;
             k < tc.getSymbolDefs().get(j).getTinyCadSymbol().getPolygons().size();
             k++) {
           Pos dp = tc.getSymbolDefs().get(j).getTinyCadSymbol().getPolygons().get(k).getDp();
           for (int l = 0;
               l
                   < tc.getSymbolDefs()
                       .get(j)
                       .getTinyCadSymbol()
                       .getPolygons()
                       .get(k)
                       .getDpointv()
                       .size();
               l++) {
             Dot dd1 =
                 new Dot(
                     tc.getSymbols().get(i).getPos().getX() + dp.getX(),
                     tc.getSymbols().get(i).getPos().getY() + dp.getY());
             Dot dd2 =
                 new Dot(
                     tc.getSymbols().get(i).getPos().getX()
                         + dp.getX()
                         + tc.getSymbolDefs()
                             .get(j)
                             .getTinyCadSymbol()
                             .getPolygons()
                             .get(k)
                             .getDpointv()
                             .get(l)
                             .getDp()
                             .getX(),
                     tc.getSymbols().get(i).getPos().getY()
                         + dp.getY()
                         + tc.getSymbolDefs()
                             .get(j)
                             .getTinyCadSymbol()
                             .getPolygons()
                             .get(k)
                             .getDpointv()
                             .get(l)
                             .getDp()
                             .getY());
             dotv.add(dd1);
             dotv.add(dd2);
           }
         }
       }
     }
     dotvv.add(dotv);
   }
   // Отсортировать список dotvv по координатам x
   for (int i = 0; i < dotvv.size(); i++) {
     Collections.sort(dotvv.get(i), new DotXComparator());
     tc.getModules()
         .add(
             new Module(
                 new Dot(dotvv.get(i).get(0).getX(), 0),
                 new Dot(dotvv.get(i).get(dotvv.get(i).size() - 1).getX(), 0)));
   }
   // Отсортировать список dotvv по координатам y
   for (int i = 0; i < dotvv.size(); i++) {
     Collections.sort(dotvv.get(i), new DotYComparator());
     String val = "No name";
     List<Field2> allFields = new ArrayList<Field2>();
     for (int j = 0; j < tc.getSymbols().get(i).getField2s().size(); j++) {
       if (tc.getSymbols().get(i).getField2s().get(j).getDescription().equals("Ref")) {
         val = tc.getSymbols().get(i).getField2s().get(j).getValue();
       }
       allFields.add(tc.getSymbols().get(i).getField2s().get(j));
     }
     tc.getModules()
         .set(
             i,
             new Module(
                 new Dot(tc.getModules().get(i).getA().getX(), dotvv.get(i).get(0).getY()),
                 new Dot(
                     tc.getModules().get(i).getB().getX(),
                     dotvv.get(i).get(dotvv.get(i).size() - 1).getY()),
                 val,
                 allFields));
     if (ModelDSN.debug >= 2) {
       System.out.println(
           "X1-"
               + tc.getModules().get(i).getA().getX()
               + ", Y1-"
               + tc.getModules().get(i).getA().getX()
               + ", X2-"
               + tc.getModules().get(i).getB().getX()
               + ", Y2-"
               + tc.getModules().get(i).getB().getY());
     }
   }
 }