Java 在运行时更改一个球的颜色

Java 在运行时更改一个球的颜色,java,3d,Java,3d,我有一个场景,有一个白色的ball3d图形,场景在我的框架上,在我的框架的北部有一个面板,面板上有一个按钮,点击按钮,球将变成红色。我该怎么做?请帮助我,谢谢 这是创建白色球体的代码: protected void floatingWhiteSphere() { Color3f black = new Color3f(0.0f, 0.0f, 0.0f); Color3f white = new Color3f(1.0f, 1.0f, 1.0f); Color3f s

我有一个场景,有一个白色的ball3d图形,场景在我的框架上,在我的框架的北部有一个面板,面板上有一个按钮,点击按钮,球将变成红色。我该怎么做?请帮助我,谢谢

这是创建白色球体的代码:

  protected void floatingWhiteSphere() {

    Color3f black = new Color3f(0.0f, 0.0f, 0.0f);
    Color3f white = new Color3f(1.0f, 1.0f, 1.0f);
    Color3f specular = new Color3f(0.9f, 0.9f, 0.9f);

    Material blueMat = new Material(white, black, white, specular, 25.0f);
    // sets ambient, emissive, diffuse, specular, shininess
    blueMat.setLightingEnable(true);

    Appearance blueApp = new Appearance();
    blueApp.setMaterial(blueMat);

    // position the sphere
    Transform3D t3d = new Transform3D();
    t3d.set(new Vector3f(0, 1, -5));
    TransformGroup tg = new TransformGroup(t3d);
    tg.addChild(new Sphere(1.0f, blueApp));   // set its radius and appearance

    sceneBG.addChild(tg);

}

我认为,通过设置第二种材质,将第二种材质加载到对象中,并在单击按钮时重新绘制帧,应该可以做到这一点。我对绘画程序不太熟悉,无法深入了解细节,很抱歉……

似乎是你先前问题的重复。她的所有问题都是重复的,是时候人们开始理解她并开始忽略她了。一般来说,她的大多数问题都是:如何编写程序?,@camickr。没有研究,只需在此处询问:。你为什么不把这个标为复制品呢?