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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? loader3d.java

?? java 3D
?? JAVA
字號(hào):
// Loader3D.java// Andrew Davison, April 2005, ad@fivedots.coe.psu.ac.th/* Load an object into the checkboard world, with its   bounding sphere scaled with radius 1. A 3ds model is   also rotated -90 around the x-axis.   The Portfolio loaders are used.   This class handles the moves, rotations, and scaling   GUI interface, and a save button with stores the    placement info in a 'coords' file.   When an object is loaded it can optionally be loaded   with its coords file, created in an earlier execution   of Loader.*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.text.DecimalFormat;import java.io.*;import javax.vecmath.*;public class Loader3D extends JFrame						implements ActionListener{  // for specifying moves and rotations  private static final int X_AXIS = 0;  private static final int Y_AXIS = 1;  private static final int Z_AXIS = 2;  private static final int INCR = 0;  private static final int DECR = 1;  private WrapLoader3D w3d;    // the J3D canvas for the loader  // the GUI elements  private JButton xPosLeftBut, xPosRightBut, yPosLeftBut, yPosRightBut, 											zPosLeftBut, zPosRightBut;  private JButton xRotLeftBut, xRotRightBut, yRotLeftBut, yRotRightBut, 											zRotLeftBut, zRotRightBut;  private JTextField scaleTF;  private JTextField xyzTF, rotTF, scaleTotTF;  private JButton saveBut;  private DecimalFormat df;    // for textfield output  public Loader3D(String args[])   {    super("3D Loader");    boolean hasCoordsInfo = false;    String filename = null;    if ((args.length == 2) && (args[0].equals("-c"))) {      hasCoordsInfo = true;      filename = args[1];    }    else if (args.length == 1)        filename = args[0];    else {      System.out.println( "Usage: java Loader3D [-c] <file>");      System.exit(0);    }    w3d = new WrapLoader3D(filename, hasCoordsInfo);    initGUI();    setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );    pack();    setResizable(false);    // fixed size display    setVisible(true);  } // end of Loader3D()  private void initGUI()  /* The GUI consists of the 3D canvas in the center, and a column     of buttons, textfields, etc., down the right hand side (the      control panel).     The top half of the control panel are for inputs: a series of     buttons for carrying out moves and rotations, and a textfield     for entering scaling info.     The bottom half of the panel is for displaying the current     position, rotation, and scaling details.  */  {    ImageIcon upIcon = new ImageIcon("icons/up.gif");    ImageIcon downIcon = new ImageIcon("icons/down.gif");    ImageIcon leftIcon = new ImageIcon("icons/left.gif");    ImageIcon rightIcon = new ImageIcon("icons/right.gif");    ImageIcon inIcon = new ImageIcon("icons/in.gif");    ImageIcon outIcon = new ImageIcon("icons/out.gif");    df = new DecimalFormat("0.###");  // 3 dp    Container c = getContentPane();    c.setLayout( new BorderLayout() );    c.add(w3d, BorderLayout.CENTER);    // build input controls    JPanel p1 = new JPanel();    JLabel xPosLabel = new JLabel("X incr:");    xPosLeftBut = new JButton(leftIcon);    xPosLeftBut.addActionListener(this);    xPosRightBut = new JButton(rightIcon);    xPosRightBut.addActionListener(this);    p1.add(xPosLabel); p1.add(xPosLeftBut); p1.add(xPosRightBut);    JPanel p2 = new JPanel();    JLabel yPosLabel = new JLabel("Y incr:");    yPosLeftBut = new JButton(downIcon);    yPosLeftBut.addActionListener(this);    yPosRightBut = new JButton(upIcon);    yPosRightBut.addActionListener(this);    p2.add(yPosLabel); p2.add(yPosLeftBut); p2.add(yPosRightBut);    JPanel p3 = new JPanel();    JLabel zPosLabel = new JLabel("Z incr:");    zPosLeftBut = new JButton(inIcon);    zPosLeftBut.addActionListener(this);    zPosRightBut = new JButton(outIcon);    zPosRightBut.addActionListener(this);    p3.add(zPosLabel); p3.add(zPosLeftBut); p3.add(zPosRightBut);    JPanel p4 = new JPanel();    JLabel xRotLabel = new JLabel("X rot:");    xRotLeftBut = new JButton(leftIcon);    xRotLeftBut.addActionListener(this);    xRotRightBut = new JButton(rightIcon);    xRotRightBut.addActionListener(this);    p4.add(xRotLabel); p4.add(xRotLeftBut); p4.add(xRotRightBut);    JPanel p5 = new JPanel();    JLabel yRotLabel = new JLabel("Y rot:");    yRotLeftBut = new JButton(leftIcon);    yRotLeftBut.addActionListener(this);    yRotRightBut = new JButton(rightIcon);    yRotRightBut.addActionListener(this);    p5.add(yRotLabel); p5.add(yRotLeftBut); p5.add(yRotRightBut);    JPanel p6 = new JPanel();    JLabel zRotLabel = new JLabel("Z rot:");    zRotLeftBut = new JButton(leftIcon);    zRotLeftBut.addActionListener(this);    zRotRightBut = new JButton(rightIcon);    zRotRightBut.addActionListener(this);    p6.add(zRotLabel); p6.add(zRotLeftBut); p6.add(zRotRightBut);    JPanel p7 = new JPanel();    JLabel scaleLabel = new JLabel("Scale mult:");    scaleTF = new JTextField("1.1", 4);    scaleTF.addActionListener(this);    p7.add(scaleLabel); p7.add(scaleTF);    JPanel p8 = new JPanel();    saveBut = new JButton("Save Coords");    saveBut.addActionListener(this);    p8.add(saveBut);    // build info. reporting controls    JLabel xyzLabel = new JLabel("Pos (x,y,z):");    xyzTF = new JTextField(10);    xyzTF.setEditable(false);    JLabel rotLabel = new JLabel("Rot (x,y,z):");    rotTF = new JTextField(10);    rotTF.setEditable(false);    JPanel pScale = new JPanel();    JLabel scaleTotLabel = new JLabel("Tot Scale:");    scaleTotTF = new JTextField(4);    scaleTotTF.setEditable(false);    pScale.add(scaleTotLabel); pScale.add(scaleTotTF);    // main control panel    JPanel ctrlPanel = new JPanel();    ctrlPanel.setLayout(			new BoxLayout(ctrlPanel, BoxLayout.Y_AXIS));    // add input controls    ctrlPanel.add(p1); ctrlPanel.add(p2);    ctrlPanel.add(p3); ctrlPanel.add(p4);    ctrlPanel.add(p5); ctrlPanel.add(p6);    ctrlPanel.add(p7); ctrlPanel.add(p8);    // add a bit of space between the inputs and reporters    ctrlPanel.add( javax.swing.Box.createVerticalStrut(15) );    // add info. reporting controls    ctrlPanel.add(xyzLabel);    ctrlPanel.add(xyzTF);    ctrlPanel.add(rotLabel);    ctrlPanel.add(rotTF);    ctrlPanel.add(pScale);    JPanel ctrlP = new JPanel();    ctrlP.add(ctrlPanel);    c.add(ctrlP, BorderLayout.EAST);    showPosInfo();   // update on-screen display    showRotInfo();    showScale();  }  // end of initGUI()  public void actionPerformed(ActionEvent e)  {    if (e.getSource() == saveBut)   // save coord info      w3d.saveCoordFile();    else if (e.getSource() == xPosLeftBut)   // X move      w3d.movePos(X_AXIS, DECR);    else if (e.getSource() == xPosRightBut)      w3d.movePos(X_AXIS, INCR);    else if (e.getSource() == yPosLeftBut)   // Y move      w3d.movePos(Y_AXIS, DECR);    else if (e.getSource() == yPosRightBut)      w3d.movePos(Y_AXIS, INCR);    else if (e.getSource() == zPosLeftBut)   // Z move      w3d.movePos(Z_AXIS, DECR);    else if (e.getSource() == zPosRightBut)      w3d.movePos(Z_AXIS, INCR);    else     if (e.getSource() == xRotLeftBut)        // X rotation      w3d.rotate(X_AXIS, DECR);    else if (e.getSource() == xRotRightBut)      w3d.rotate(X_AXIS, INCR);    else if (e.getSource() == yRotLeftBut)   // Y rotation      w3d.rotate(Y_AXIS, INCR);    else if (e.getSource() == yRotRightBut)      w3d.rotate(Y_AXIS, DECR);    else if (e.getSource() == zRotLeftBut)   // Z rotation      w3d.rotate(Z_AXIS, INCR);    else if (e.getSource() == zRotRightBut)      w3d.rotate(Z_AXIS, DECR);    else if (e.getSource() == scaleTF) {   // scale      try {        double d = Double.parseDouble( e.getActionCommand() );        w3d.scale(d);      }      catch(NumberFormatException ex) {        System.out.println("Scale input was not a number");      }    }    showPosInfo();   // update on-screen display    showRotInfo();    showScale();  }  // end of actionPerformed()  private void showPosInfo()  {      Vector3d loc = w3d.getLoc();    xyzTF.setText("( " + df.format(loc.x) + ", " +				df.format(loc.y) + ", " + df.format(loc.z) + " )");    }  private void showRotInfo()  {       Point3d rots = w3d.getRotations();     rotTF.setText("( " + df.format(rots.x) + ", " +				df.format(rots.y) + ", " + df.format(rots.z) + " )");    }  private void showScale()  {     double scale = w3d.getScale();    scaleTotTF.setText( df.format(scale) );    }// ----------------------------------------  public static void main(String[] args)  { new Loader3D(args); }} // end of Loader3D class

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu国产电影一区二区| 国产一区二区成人久久免费影院| 26uuu色噜噜精品一区| 欧美精品aⅴ在线视频| 色综合色综合色综合色综合色综合| 日本视频一区二区| 亚洲第一会所有码转帖| 亚洲一区二区三区中文字幕在线| 久久九九影视网| 久久久精品日韩欧美| 日韩久久免费av| 久久嫩草精品久久久久| 久久亚洲精品小早川怜子| 亚洲精品一区二区三区精华液| 欧美疯狂性受xxxxx喷水图片| 欧美一级二级在线观看| 久久嫩草精品久久久精品| 久久精品水蜜桃av综合天堂| 国产午夜三级一区二区三| 国产欧美一区二区精品性| 依依成人精品视频| 日韩电影免费一区| 成人综合激情网| 欧美色倩网站大全免费| 日韩精品在线一区| 亚洲品质自拍视频| 久久精品国产精品青草| 丁香婷婷综合五月| 欧美一级欧美三级在线观看| 精品日韩一区二区三区免费视频| 国产欧美一区二区精品忘忧草| 亚洲免费观看高清完整版在线观看| 日韩精品一级二级| 91亚洲男人天堂| 日韩欧美在线综合网| 中文字幕综合网| 免费不卡在线视频| 在线精品视频小说1| 精品福利av导航| 日韩综合一区二区| 91免费国产在线| 在线观看不卡视频| 欧美国产精品一区| 福利视频网站一区二区三区| 欧美乱妇一区二区三区不卡视频| 国产日韩欧美精品综合| 久久精品国产网站| 精品国内二区三区| 美女网站在线免费欧美精品| 欧美午夜宅男影院| 日本一区二区不卡视频| 免费高清在线视频一区·| 欧美男男青年gay1069videost| 一区二区三区四区av| 色婷婷久久久综合中文字幕| 国产精品久久久久久久久晋中| 成人黄色777网| 国产亚洲综合在线| 国产福利一区二区| 久久夜色精品一区| 国产黄色91视频| 亚洲精品videosex极品| 欧美日韩一级二级三级| 精品中文字幕一区二区| 日韩精品一区二区三区中文不卡 | 精品国产人成亚洲区| 国产在线不卡一卡二卡三卡四卡| 欧美年轻男男videosbes| 伊人性伊人情综合网| 精品国产乱码久久久久久夜甘婷婷 | 久久精品男人的天堂| 欧美三级资源在线| 欧美一区永久视频免费观看| 国产呦精品一区二区三区网站| 亚洲成人自拍网| 亚洲激情网站免费观看| 国产精品久久一级| 在线综合+亚洲+欧美中文字幕| 色综合久久六月婷婷中文字幕| 黑人巨大精品欧美一区| 韩日欧美一区二区三区| 蜜桃一区二区三区四区| 日韩av一区二区三区| 日本午夜一区二区| 国产在线一区观看| 国产在线视视频有精品| 国产综合色视频| 国产精品一二三在| 风间由美性色一区二区三区| 成人午夜碰碰视频| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 亚洲一区二区三区在线看| 一区二区高清免费观看影视大全| 久久久国产精华| 欧美成人乱码一区二区三区| 日韩精品一区二区三区视频 | 欧美日韩一区二区电影| 色久综合一二码| 91国偷自产一区二区使用方法| 欧美日韩不卡一区二区| 日韩一级黄色大片| 国产三级精品视频| 亚洲精品视频在线观看免费| 亚洲一区影音先锋| 日韩高清不卡一区二区| 国产精品一区二区91| 日本二三区不卡| 日韩精品一区二区三区视频播放| 中文字幕乱码亚洲精品一区| 亚洲国产视频a| 国产主播一区二区| 色综合久久天天| 精品国产乱码久久久久久老虎 | 国产精品乱码人人做人人爱 | 亚洲精品一区二区三区四区高清| 国产精品无遮挡| 午夜成人免费电影| 国产**成人网毛片九色 | 欧美裸体bbwbbwbbw| 久久青草欧美一区二区三区| 一区二区三区精品久久久| 精品一区免费av| 欧美亚洲国产一区在线观看网站| 日韩精品中文字幕在线一区| 亚洲精选在线视频| 国产麻豆精品在线观看| 欧美三级欧美一级| 国产精品三级视频| 九九久久精品视频| 日韩久久精品一区| 亚洲综合在线视频| 高清不卡在线观看| 欧美成人猛片aaaaaaa| 亚洲人成小说网站色在线| 美国av一区二区| 欧美日韩不卡一区| 亚洲情趣在线观看| 成人一区在线看| 精品欧美一区二区三区精品久久 | 久久奇米777| 爽好久久久欧美精品| 99热这里都是精品| 国产欧美日韩精品一区| 乱一区二区av| 91精品国产一区二区三区| 亚洲激情自拍偷拍| 色综合天天综合色综合av| 国产婷婷色一区二区三区| 精品一区二区成人精品| 欧美区视频在线观看| 一区二区三区在线播放| 成人黄色电影在线| 久久精品日产第一区二区三区高清版| 亚洲第一av色| 欧美日韩成人在线| 日韩国产高清在线| 51精品视频一区二区三区| 亚洲一区二区三区中文字幕| 日本道色综合久久| 亚洲日本青草视频在线怡红院| 成人网男人的天堂| 国产精品看片你懂得| 丁香亚洲综合激情啪啪综合| 中文字幕第一区综合| 不卡欧美aaaaa| 日韩美女久久久| 91成人在线观看喷潮| 亚洲国产一区二区在线播放| 欧美在线观看一二区| 亚洲精品久久嫩草网站秘色| 色偷偷88欧美精品久久久| 一区二区三区中文在线| 欧美最猛黑人xxxxx猛交| 国产又粗又猛又爽又黄91精品| 精品日韩一区二区三区| 国产精品自产自拍| 中文字幕一区在线观看视频| fc2成人免费人成在线观看播放 | 午夜精品123| 91精品国产综合久久福利 | 国产精品情趣视频| 91在线无精精品入口| 亚洲免费观看高清完整版在线观看| 色诱视频网站一区| 日韩福利电影在线观看| 欧美va亚洲va香蕉在线 | 91尤物视频在线观看| 亚洲一区二区三区中文字幕在线| 欧美日韩国产另类一区| 日韩av一区二区在线影视| 欧美精品一区二区三区一线天视频| 国产精品12区| 亚洲色图制服诱惑| 欧美一区二区播放| 国产寡妇亲子伦一区二区| 自拍偷拍亚洲欧美日韩| 制服丝袜一区二区三区| 国产在线一区二区综合免费视频| 综合电影一区二区三区| 欧美一区二区三区在线看|