我用java编写了以下代码,并在eclipse2020-09中运行它
package pkg3dtest;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.media.j3d.BranchGroup;
import javax.media.j3d.Transform3D;
import javax.media.j3d.TransformGroup;
import com.sun.j3d.utils.geometry.ColorCube;
import com.sun.j3d.utils.universe.SimpleUniverse;
public class Cube3D implements Runnable {
SimpleUniverse universe = new SimpleUniverse();
BranchGroup group = new BranchGroup();
ColorCube cube = new ColorCube(0.3);
TransformGroup GT = new TransformGroup();
Transform3D transform = new Transform3D();
double Y = 0;
Thread hilo1 = new Thread(this); //Se declara el hilo
public Cube3D() {
GT.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); //se setea el grupo de transformación
// como un elemento modificable en tiempo de ejecución
hilo1.start(); //se inicia el hilo
GT.setTransform(transform);
GT.addChild(cube);
group.addChild(GT);
universe.getViewingPlatform().setNominalViewingTransform();
universe.addBranchGraph(group);
}
public static void main(String[] args) {
new Cube3D();
}
//@Override
public void run() {
Thread ct = Thread.currentThread();
while (ct == hilo1) {
try {
Y = Y + 0.1; //Variable global declarada como double
transform.rotY(Y); //Se rota en base al eje Y
GT.setTransform(transform); //Se actualiza el gráfico
Thread.sleep(100); //Se espera un tiempo antes de seguir la ejecución
} catch (InterruptedException ex) {
Logger.getLogger(Cube3D.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}
当我给保存没有错误出现,但当我在控制台运行以下消息出现;defaultrenderingerrorlistener.ErrorOccursed:上下文\u创建\u错误:渲染器:创建canvas3d图形上下文graphicsdevice=win32graphicsdevice[screen=0]canvas=javax.media.j3d.canvas3d[canvas0,0,0240x217]java 3d错误:canvas3d \u createnewcontext:在setpixelformat-el format de p中失败íxel否es vá利多卡因。我已经试过了我在谷歌上找到的所有东西,它仍然是一样的,这是可以的。
暂无答案!
目前还没有任何答案,快来回答吧!