如何在JavaSE6中创建3D对象

如何在JavaSE6中创建3D对象,java,class,3d,draw,bluej,Java,Class,3d,Draw,Bluej,我需要有人告诉我一些关于如何在JavaSE6中创建3D java对象的信息,我不是在小程序中使用它,而是在一个普通的java类中使用它,这就是我要做的。我还在大学里学习java,但由于我是一名大一新生,寒假期间,我想为什么不自己多学习java呢 import javax.swing.*; import java.io.*; import java.awt.*; import java.awt.color.*; import java.awt.event.*; import java.util.*

我需要有人告诉我一些关于如何在JavaSE6中创建3D java对象的信息,我不是在小程序中使用它,而是在一个普通的java类中使用它,这就是我要做的。我还在大学里学习java,但由于我是一名大一新生,寒假期间,我想为什么不自己多学习java呢

import javax.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.color.*;
import java.awt.event.*;
import java.util.*;
import java.lang.Math;
import java.math.*;
import static java.lang.System.*;

public class Java_PaintBrush extends Canvas
{
private static byte mode;
private static byte mode2;
private static byte mode3;
private static final byte ARRAY_SIZE_STANDARD=7;
private static final byte ARRAY_SIZE_STANDARD2=2;
private static final byte ARRAY_SIZE_STANDARD3=4;
private static final byte ARRAY_SIZE_STANDARD4=3;
private static final byte ARRAY_SIZE_STANDARD5=5;
private static final String[] TYPES=
{
    "1D",
    "Circle",
    "Oval",
    "Round Rectangle",
    "Rectangle",
    "Irregular",
    "3D"
};
private static short[] image=new short[ARRAY_SIZE_STANDARD2];
private static short[] pop_up_size=new short[ARRAY_SIZE_STANDARD2];
private static short[] shape_size=new short[ARRAY_SIZE_STANDARD2];
private static short[] shape_size_with_coord=new short[ARRAY_SIZE_STANDARD3];
private static short[] shape_3D_size=new short[ARRAY_SIZE_STANDARD4];
private static short[] shape_3D_size_with_coord=new short[ARRAY_SIZE_STANDARD5];
private static final String VERSION="V 0.01.000";
private static final String PROG_NAME="Java PaintBrush";
private static final String EXT=".javpb";
private static String file_name;
private static String full_file_name;
private static byte mode4;
private static final String[] TYPES_3D=
{
    ""
};
private static byte enter;
private static byte enter2;
private static byte enter3;
private static byte amberlite;
private byte amberiguous=amberlite;
private static byte proxyer;
private static byte napping;
private byte nap=napping;
//"colerse.txt"
private static final String[]   TYPES_1D=
{
    "Line"
};
public static void MyCanvas()throws IOException
{

}
public void Java_PaintBrush()throws IOException
{
    if(nap==1)
        converter();
    else
    {
        converter();
    }
}
public void paint(Graphics graphics)
{
    if(amberiguous==0)
    {

    }
    else
    {
        int a,b;
        a=(int)image[0];
        b=(int)image[1];
        graphics.setColor(Color.black);
        graphics.drawRect(0,0,a,b);

    }
}
public static void main(String[] args)throws IOException
{
    Start_up();
    new_old();
    if(mode==1)
    {
        getPopup_size();
        proxyer=0;
        startPopup();
        getImage_size();
        amberlite=1;
        setAmberlite();
        Java_PaintBrush porter=new Java_PaintBrush();
        startPopup();

    }
    else
    {

    }
}
public static void Start_up()throws IOException
{

}
public static void new_old()throws IOException
{
    Scanner keyboard=new Scanner(System.in);
    out.println("Enter 1 for, new Java_PaintBrush image.  Enter 2 for, ");
    out.print("open an existing Java PaintBrush image.  :  ");
    mode=keyboard.nextByte();
    byte a,b;
    a=1;
    b=2;
    while(mode<a||mode>b)
    {

    }
}
public static void startPopup()throws IOException
{
    if(proxyer==0)
    {
        short a,b;
        a=pop_up_size[0];
        b=pop_up_size[1];
        napping=1;
        // We initialize our class here
        Java_PaintBrush canvas = new Java_PaintBrush();
        JFrame frame = new JFrame();
        frame.setSize(a, b);
        amberlite=0;
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // Here we add it to the frame
        frame.getContentPane().add(canvas);
        frame.setVisible(true);
        napping=0;
    }
    else
    {
       short a,b;
       a=pop_up_size[0];
       b=pop_up_size[1];
       Java_PaintBrush canvas = new Java_PaintBrush();
       JFrame frame = new JFrame();
       frame.setSize(a, b);
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       // Here we add it to the frame
       frame.getContentPane().add(canvas);
       frame.setVisible(true);
    }   
}
public static void getPopup_size()throws IOException
{
    Scanner keyboard=new Scanner(System.in);
    byte loops;
    loops=0;
    out.print("Enter length of pop up.  :  ");
    pop_up_size[loops]=keyboard.nextShort();
    out.print("Enter the height of pop up.  :  ");
    loops++;
    pop_up_size[loops]=keyboard.nextShort();
}
public static void getImage_size()throws IOException
{
    Scanner keyboard=new Scanner(System.in);
    byte loops;
    loops=0;
    out.print("Enter the length of the image.  :  ");
    image[loops]=keyboard.nextShort();
    while(image[loops]<=0||image[loops]>pop_up_size[loops])
    {

    }
    loops++;
    out.print("Enter the height of the image.  :  ");
    image[loops]=keyboard.nextShort();
    while(image[loops]<=0||image[loops]>pop_up_size[loops])
    {

    }
}
public static void setAmberlite()throws IOException
{
    Scanner keyboard=new Scanner(System.in);
    PrintWriter outputFile=new PrintWriter("colerse.txt");
    outputFile.println(amberlite);
    outputFile.close();
}
public void converter()throws IOException
{
    Scanner keyboard=new Scanner(System.in);
    String value;
    File myFile=new File("colerse.txt");
    Scanner inputFile=new Scanner(myFile);
    value=inputFile.nextLine();
    inputFile.close();
    amberiguous=Byte.parseByte(value);
    proxyer=1;
}
import javax.swing.*;
导入java.io.*;
导入java.awt.*;
导入java.awt.color.*;
导入java.awt.event.*;
导入java.util.*;
导入java.lang.Math;
导入java.math.*;
导入静态java.lang.System.*;
公共类Java_画笔扩展画布
{
专用静态字节模式;
专用静态字节模式2;
专用静态字节模式3;
专用静态最终字节数组\u大小\u标准=7;
私有静态最终字节数组_SIZE_STANDARD2=2;
专用静态最终字节数组\u大小\u标准3=4;
私有静态最终字节数组\u大小\u标准4=3;
专用静态最终字节数组\u大小\u标准5=5;
私有静态最终字符串[]类型=
{
“1D”,
“圆圈”,
“椭圆形”,
“圆形矩形”,
“矩形”,
“不规则”,
“3D”
};
私有静态短[]图像=新短[ARRAY_SIZE_STANDARD2];
私有静态短[]弹出大小=新短[数组大小\u标准2];
私有静态短[]形状\大小=新短[数组\大小\标准2];
私有静态短[]形状\大小\带有\坐标=新短[数组\大小\标准3];
私有静态短[]形状\三维\大小=新短[阵列\大小\标准4];
私有静态短[]形状\三维\大小\带有\坐标=新短[数组\大小\标准5];
私有静态最终字符串版本=“V 0.01.000”;
私有静态最终字符串PROG_NAME=“Java画笔”;
私有静态最终字符串EXT=“.javpb”;
私有静态字符串文件名;
私有静态字符串完整文件名;
专用静态字节模式4;
私有静态最终字符串[]类型\u 3D=
{
""
};
私有静态字节输入;
私有静态字节输入2;
私有静态字节输入3;
私有静态字节amberlite;
私有字节amberigous=amberlite;
专用静态字节代理;
私有静态字节休眠;
私有字节nap=午睡;
//“colerse.txt”
私有静态最终字符串[]类型\u 1D=
{
“行”
};
公共静态void MyCanvas()引发IOException
{
}
public void Java_PaintBrush()引发IOException
{
如果(nap==1)
转换器();
其他的
{
转换器();
}
}
公共空间绘制(图形)
{
if(amberigous==0)
{
}
其他的
{
INTA,b;
a=(int)图像[0];
b=(int)图像[1];
图形.设置颜色(颜色.黑色);
graphics.drawRect(0,0,a,b);
}
}
公共静态void main(字符串[]args)引发IOException
{
启动();
新的旧的;
如果(模式==1)
{
getPopup_size();
proxyer=0;
startPopup();
getImage_size();
amberlite=1;
setAmberlite();
Java_PaintBrush porter=新的Java_PaintBrush();
startPopup();
}
其他的
{
}
}
public static void Start_up()引发IOException
{
}
public static void new_old()引发IOException
{
扫描仪键盘=新扫描仪(System.in);
println(“输入1表示新的Java_画笔图像,输入2表示,”);
打印(“打开现有的Java画笔图像:”;
模式=键盘.nextByte();
字节a,b;
a=1;
b=2;
while(modeb)
{
}
}
公共静态void startPopup()引发IOException
{
如果(代理==0)
{
短a,b;
a=弹出窗口大小[0];
b=弹出窗口大小[1];
午睡=1;
//我们在这里初始化我们的类
Java_PaintBrush canvas=新的Java_PaintBrush();
JFrame=新JFrame();
框架。设置尺寸(a、b);
amberlite=0;
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//在这里,我们将其添加到框架中
frame.getContentPane().add(画布);
frame.setVisible(true);
午睡=0;
}
其他的
{
短a,b;
a=弹出窗口大小[0];
b=弹出窗口大小[1];
Java_PaintBrush canvas=新的Java_PaintBrush();
JFrame=新JFrame();
框架。设置尺寸(a、b);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//在这里,我们将其添加到框架中
frame.getContentPane().add(画布);
frame.setVisible(true);
}   
}
公共静态void getPopup_size()引发IOException
{
扫描仪键盘=新扫描仪(System.in);
字节循环;
循环=0;
打印(“输入弹出窗口的长度:”;
弹出大小[循环]=键盘.nextShort();
打印(“输入弹出窗口的高度:”;
循环++;
弹出大小[循环]=键盘.nextShort();
}
公共静态void getImage_size()引发IOException
{
扫描仪键盘=新扫描仪(System.in);
字节循环;
循环=0;
打印(“输入图像的长度:”;
image[loops]=keyboard.nextShort();
while(图像[循环]弹出\大小[循环])
{
}
循环++;
打印(“输入图像的高度:”;
image[loops]=keyboard.nextShort();
while(图像[循环]弹出\大小[循环])
{
}
}
public static void setAmberlite()引发IOException
{
扫描仪键盘=新扫描仪(System.in);
PrintWriter outputFile=新的PrintWriter(“colerse.txt”);
println(amberlite);
outputFile.close();
}
public void converter()引发IOException
{
扫描仪键盘=新扫描仪(System.in);
字符串值;
File myFile=新文件(“colerse.txt”);
扫描仪输入文件=新扫描仪(myFile);
value=inputFile.nextLine();
inputFile.close();
amberigous=Byte.parseByte(值);
proxyer=1;
}

}

你对哪一部分有问题?我发现这本书非常适合3D图形:代码的预期行为是什么,实际行为是什么?我正在尝试制作类似于绘画的东西,除了要添加形状,必须将其键入蓝色j端子窗口。我只需要知道如何用java绘制或创建3d对象,一种绘制2D对象的简单方法。代码并不完全完整。我曾想过让用户输入他们想要插入的形状,但我认为