亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? yuanjian.java

?? Java門電路畫圖器 基本功能: 1。文件的保存
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package ding;

import java.awt.*;
import java.awt.geom.*;
import java.awt.event.*;
import javax.swing.*;
import java.lang.Math;

/**
 * <p>Title: 門電路畫圖器</p>
 * <p>Description: www.1shu.net</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: EyeSome</p>
 * @author ES
 * @version 1.0
 */

///////////////////////////////////////
//  定義元件的類
///////////////////////////////////////

public class yuanjian
    extends yjBase {
  yjRec inRec[];
  yjLine inLine[];
  yjCircle inCircle[];
  yjStr inStr[];
  yjArc inArc[];
  int x, y;


  public yuanjian(){

  }
  public yuanjian(yjRec inRec[], yjLine inLine[], yjCircle inCircle[],
                  yjStr inStr[], yjArc inArc[]) {
    int i, j;
    int arrayLen;
    /////////////////
    // init inRec
    if (inRec != null) {
      arrayLen = inRec.length;
      this.inRec = new yjRec[arrayLen];
      for (i = 0; i < arrayLen; i++) {
        this.inRec[i] = inRec[i].getValue();
      }
    }
    /////////////////
    // init inLine
    if (inLine != null) {
      arrayLen = inLine.length;
      this.inLine = new yjLine[arrayLen];
      for (i = 0; i < arrayLen; i++) {
        this.inLine[i] = inLine[i].getValue();
      }
    }
    //////////////////
    // init inCircle
    if (inCircle != null) {
      arrayLen = inCircle.length;
      this.inCircle = new yjCircle[arrayLen];
      for (i = 0; i < arrayLen; i++) {
        this.inCircle[i] = inCircle[i].getValue();
      }
    }
    /////////////////
    //  init inStr
    if (inStr != null) {
      arrayLen = inStr.length;
      this.inStr = new yjStr[arrayLen];
      for (i = 0; i < arrayLen; i++) {
        this.inStr[i] = inStr[i].getValue();
      }
    }
    /////////////////
    // init inArc
    if (inArc != null) {
      arrayLen = inArc.length;
      this.inArc = new yjArc[arrayLen];
      for (i = 0; i < arrayLen; i++) {
        this.inArc[i] = inArc[i].getValue();
      }
    }
    xyRange();
  }

  public yuanjian getValue(){
    yuanjian yjtmp= new yuanjian(this.inRec, this.inLine, this.inCircle,
                  this.inStr,this.inArc);
    yjtmp.des = this.des;
    yjtmp.id = this.id;
    return yjtmp;
  }
  /**
   *  移動方法
   */
  public boolean yjMovie(int x, int y) {
    int xChg, yChg;
    xChg = x - this.x;
    yChg = y - this.y;
    int i, j;
    int tmpLen;
    Color c = Color.white;
    yjBase tmpYJ[] = new yjBase[100]; //暫時初始化100個試試
    for (j = 0; j < 5; j++) {
      switch (j) {
        case 0:
          tmpYJ = this.inRec;
          break;
        case 1:
          tmpYJ = this.inLine;
          break;
        case 2:
          tmpYJ = this.inCircle;
          break;
        case 3:
          tmpYJ = this.inStr;
          break;
        case 4:
          tmpYJ = this.inArc;
          break;
      }
      //System.out.println("^^^^^^^^ tmpYJ[i].x:" + this.inRec[0].x +
      //                       "  xChg,tmpYJ[i].y:" + tmpYJ[0].y);
      //if (tmpYJ[0] == this.inRec[0]) System.out.println("相等----");
      if (tmpYJ != null) { //如果該構件的為空,則跳過
        tmpLen = tmpYJ.length; // 求構件的數組大小,即該構件的數量
        for (i = 0; i < tmpLen; i++) { // 改變每個構件的坐標
          tmpYJ[i].yjMovie(tmpYJ[i].x + xChg, tmpYJ[i].y + yChg);
          //System.out.println("^^^^^^^^ xChg:" + xChg + "  yChg:" + yChg);
          //System.out.println("^^^^^^^^ tmpYJ[i].x:" + tmpYJ[i].x +
          //                   "  xChg,tmpYJ[i].y:" + tmpYJ[i].y+"    i:"+i+" j"+j);
          //System.out.println("VVVVVV  i:"+i+" j"+j);
        }
      }
    }
    //xyRange();
    minX = minX + xChg;
    minY = minY + yChg;
    maxX = maxX + xChg;
    maxY = maxY + yChg;
    this.x = minX;
    this.y = minY;
    return true;
  }

  /**
   * 畫出此門電路
   */
  public void yjpaint(Graphics2D g) {
    int i, j, tmiX = -1, tmiY = -1, tmaX = -1, tmaY = -1;
    int tmpLen;
    Color c = Color.white;
    yjBase tmpYJ[] = new yjBase[100]; //暫時初始化100個試試
    for (j = 0; j < 5; j++) {
      switch (j) {
        case 0:
          tmpYJ = inRec;
          c = Color.white;
          break;
        case 1:
          tmpYJ = inLine;
          c = Color.yellow;
          break;
        case 2:
          tmpYJ = inCircle;

          break;
        case 3:
          tmpYJ = inStr;
          c = Color.cyan;
          break;
        case 4:
          tmpYJ = inArc;
          c = Color.white;
          break;
      }
      if (tmpYJ != null) { //如果該構件的為空,則跳過
        tmpLen = tmpYJ.length; // 求構件的數組大小,即該構件的數量
        for (i = 0; i < tmpLen; i++) { // 開始畫構件
          if(tmpYJ[i].fillFlag==1){
            c = Color.yellow;
          }
          tmpYJ[i].yjpaint(g, c);
        }
      }
    }
  }

  public void yjpaint(Graphics2D g, Color c) {
  }

  /**
   * 畫虛線
   */
  public void yjpaintDashed(int x1, int y1, int x2, int y2, Graphics2D g) {
    int i, n, xiebian;
    xiebian = (int) Math.sqrt( (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));
    n = xiebian / 15;
    for (i = 0; i < n; i++) {
      //g.drawLine
    }
  }

  /**
   * 根據電路元件范圍畫虛框
   */
  public void yjpaintArc(Graphics2D g, Color c) {
    float[] dash = {
        1.0f, 5.0f};
    BasicStroke newstroke = new BasicStroke(1.0f, BasicStroke.CAP_BUTT,
                                            BasicStroke.JOIN_MITER, 1.0f, dash,
                                            0.0f);
    g.setStroke(newstroke);
    g.setColor(c);
    g.drawRect(minX, minY, maxX - minX, maxY - minY);
  }

  public void xyRange() {
    int i, j, tmiX = -1, tmiY = -1, tmaX = -1, tmaY = -1;
    int tmpLen;
    yjBase tmpYJ[] = new yjBase[100]; //暫時初始化100個試試
    for (j = 0; j < 5; j++) {
      //System.out.println("----------------------------------------");
      switch (j) {
        case 0:
          tmpYJ = inRec;
          break;
        case 1:
          tmpYJ = inLine;
          break;
        case 2:
          tmpYJ = inCircle;
          break;
        case 3:
          tmpYJ = inStr;
          break;
        case 4:
          tmpYJ = inArc;
          break;
      }
      if (tmpYJ == null) {
        //System.out.println("j:" + j + " tmpYJ=null");
      }
      //System.out.println("0 tmiX:" + tmiX + "; tmiY:" + tmiY);
      //System.out.println("0 tmaX:" + tmaX + "; tmaY:" + tmaY);
      if (tmpYJ != null) { //如果該構件的為空,則跳過
        if (tmiX == -1 || tmiX > tmpYJ[0].minX) {
          //System.out.println("--- tmiX:" + tmiX + "; tmpYJ[0].minX:" +
          //                   tmpYJ[0].minX + "  ---");
          tmiX = tmpYJ[0].minX;
        }
        if (tmiY == -1 || tmiY > tmpYJ[0].minY) {
          tmiY = tmpYJ[0].minY;
        }
        if (tmaX == -1 || tmaX < tmpYJ[0].maxX) {
          tmaX = tmpYJ[0].maxX;
        }
        if (tmaY == -1 || tmaY < tmpYJ[0].maxY) {
          tmaY = tmpYJ[0].maxY;
        }
        tmpLen = tmpYJ.length; // 求構件的數組大小,即該構件的數量
        //System.out.println("1 tmiX:" + tmiX + "; tmiY:" + tmiY);
        //System.out.println("1 tmaX:" + tmaX + "; tmaY:" + tmaY);
        for (i = 0; i < tmpLen; i++) { // 求得所有該種構件的綜合坐標范圍
          //System.out.println("J:" + j + "   i:" + i);
          if (tmiX > tmpYJ[i].minX) {
            tmiX = tmpYJ[i].minX;
          }
          if (tmiY > tmpYJ[i].minY) {
            tmiY = tmpYJ[i].minY;
          }
          if (tmaX < tmpYJ[i].maxX) {
            tmaX = tmpYJ[i].maxX;
          }
          if (tmaY < tmpYJ[i].maxY) {
            tmaY = tmpYJ[i].maxY;
          }
        }
        //System.out.println("2 tmiX:" + tmiX + "; tmiY:" + tmiY);
        //System.out.println("2 tmaX:" + tmaX + "; tmaY:" + tmaY);
      }
      //System.out.println("----------------------------------------");
    }
    minX = tmiX;
    minY = tmiY;
    maxX = tmaX;
    maxY = tmaY;
    /** 設定門電路的坐標 */
    x = minX;
    y = minY;
  }

}

/**
 * 定義構件和門電路的基類(抽象類)
 */
abstract class yjBase {
  int minX = 0, minY = 0;
  int maxX = 0, maxY = 0;
  int number = 0;
  String des;
  int id;
  public int x=0, y=0,fillFlag;
  abstract void yjpaint(Graphics2D g);

  abstract void yjpaint(Graphics2D g, Color c);

  abstract boolean yjMovie(int x, int y);

}

/**
 * 定義各種構件
 */
class yjRec
    extends yjBase {
  int width, height;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品捆绑美女sm三区| 久久奇米777| 国产91精品一区二区| 一区二区三区四区国产精品| 日韩一区二区影院| 色综合网色综合| 国产久卡久卡久卡久卡视频精品| 亚洲猫色日本管| 久久看人人爽人人| 欧美人xxxx| 色综合久久综合网| 国产福利一区二区| 日本不卡1234视频| 亚洲人成精品久久久久久| 2021中文字幕一区亚洲| 欧美性受xxxx黑人xyx性爽| 国产精品白丝av| 日韩黄色免费网站| 亚洲午夜电影在线观看| 国产精品久久久久影院色老大 | 日韩码欧中文字| 精品国产一区二区三区久久久蜜月 | 中文字幕一区二区三中文字幕| 欧美精品久久久久久久久老牛影院| 97精品视频在线观看自产线路二| 国产美女精品一区二区三区| 日本免费在线视频不卡一不卡二| 一区二区三区精品在线| 中文在线一区二区| 国产欧美va欧美不卡在线| 欧美videos中文字幕| 制服丝袜成人动漫| 欧美人与禽zozo性伦| 欧美日韩视频第一区| 欧美视频自拍偷拍| 欧美性xxxxxxxx| 欧美在线视频全部完| 91天堂素人约啪| 99精品欧美一区二区三区小说 | 亚洲成a人在线观看| 亚洲一区二区三区四区在线| 亚洲欧美日本在线| 亚洲视频你懂的| 最好看的中文字幕久久| 亚洲视频一区二区在线观看| 国产精品国产三级国产普通话三级 | 国产欧美一区视频| 国产视频一区在线观看| 国产无人区一区二区三区| 国产亚洲精品福利| 欧美国产精品劲爆| 中文字幕字幕中文在线中不卡视频| 国产精品伦理在线| 亚洲日本免费电影| 亚洲一区二区在线观看视频| 亚洲高清免费视频| 日韩在线a电影| 久久精品99国产精品| 狠狠狠色丁香婷婷综合激情| 极品少妇一区二区三区精品视频| 韩国成人福利片在线播放| 国产一区二区免费在线| www.日韩在线| 欧美日韩另类国产亚洲欧美一级| 91精品国产品国语在线不卡| 日韩一级二级三级精品视频| 精品免费99久久| 国产精品美女久久久久久久久| 日韩久久一区二区| 午夜久久福利影院| 精品无人码麻豆乱码1区2区| 成人午夜又粗又硬又大| 欧美性一区二区| 26uuu精品一区二区三区四区在线| 国产精品无圣光一区二区| 亚洲午夜久久久久久久久电影院| 蜜桃av一区二区在线观看| 国产成人日日夜夜| 欧美亚洲尤物久久| 精品成人一区二区三区| 国产精品国产精品国产专区不蜜 | 亚洲综合在线视频| 蜜臀久久99精品久久久久宅男 | 日本一区二区三区免费乱视频 | 中文字幕一区二区三区在线观看| 亚洲一卡二卡三卡四卡五卡| 老司机免费视频一区二区三区| 91在线国产福利| 日韩视频在线观看一区二区| 国产欧美日韩视频一区二区| 亚洲成av人片www| 成人免费毛片片v| 69堂成人精品免费视频| 亚洲视频中文字幕| 极品少妇xxxx精品少妇| 日本韩国欧美国产| 久久久久久久精| 亚洲国产精品精华液网站| 国产精品一区不卡| 91麻豆精品国产91久久久久| 亚洲欧美在线aaa| 六月丁香婷婷久久| 欧洲生活片亚洲生活在线观看| 久久这里只有精品6| 亚洲国产欧美在线| 99久久99久久精品免费观看| 亚洲精品一区二区三区蜜桃下载| 亚洲妇女屁股眼交7| www.亚洲在线| 精品国产一区a| 亚洲成人黄色影院| 91麻豆精品视频| 国产日韩欧美精品电影三级在线 | 国产麻豆成人传媒免费观看| 欧美精品亚洲二区| 一区二区三区不卡在线观看| 国产成人免费视频一区| 日韩免费电影网站| 日韩高清在线一区| 欧美三级在线播放| 亚洲卡通动漫在线| 99精品视频在线播放观看| 中文字幕欧美激情一区| 久久99精品国产.久久久久| 在线成人午夜影院| 亚洲成a人v欧美综合天堂下载 | 高清av一区二区| 久久新电视剧免费观看| 精品一区二区影视| 精品人在线二区三区| 日韩国产高清在线| 91精品蜜臀在线一区尤物| 午夜精品一区二区三区电影天堂| 一本色道**综合亚洲精品蜜桃冫 | 国产精品视频第一区| 国产一区二区看久久| 精品福利在线导航| 激情五月婷婷综合网| 精品不卡在线视频| 极品销魂美女一区二区三区| 欧美精品一区二区三区蜜桃视频 | 成人动漫一区二区三区| 久久精品一区二区三区不卡| 国产乱码精品一区二区三区五月婷| 精品嫩草影院久久| 国产电影一区二区三区| 国产欧美视频一区二区| 高清不卡一区二区在线| 综合久久久久久久| 色菇凉天天综合网| 亚洲一区国产视频| 91精品国产综合久久福利软件| 男女激情视频一区| 久久久久久久久久看片| 国产91露脸合集magnet| 日韩伦理电影网| 欧美日韩一区在线观看| 人人狠狠综合久久亚洲| 欧美成人福利视频| 国产不卡视频在线播放| 中文字幕一区二区在线观看| 91福利在线导航| 日韩高清在线一区| 国产视频911| 日本电影欧美片| 美女视频黄a大片欧美| 国产日韩成人精品| 在线一区二区视频| 日本欧美久久久久免费播放网| 久久久午夜精品理论片中文字幕| 99久久国产综合精品色伊| 亚洲国产精品久久久久婷婷884 | 中文字幕欧美一| 欧美日韩国产综合视频在线观看 | 不卡一区在线观看| 亚洲午夜羞羞片| 久久综合给合久久狠狠狠97色69| av电影天堂一区二区在线 | 黄色日韩网站视频| 亚洲日本在线观看| 欧美sm美女调教| 一本一道久久a久久精品综合蜜臀| 亚洲第一电影网| 国产日韩欧美制服另类| 欧美日韩另类一区| 成人免费高清在线观看| 午夜精品一区二区三区电影天堂| 久久久精品天堂| 欧美撒尿777hd撒尿| 国产不卡视频在线观看| 午夜av区久久| 中文字幕在线不卡| 日韩丝袜情趣美女图片| 99久久精品久久久久久清纯| 日本va欧美va精品| 一区二区三区在线免费播放| 26uuuu精品一区二区| 欧美色综合影院| 不卡高清视频专区| 久久国内精品视频|